Comparison of open-source configuration management software

Last updated


This is a comparison of notable free and open-source configuration management software, suitable for tasks like server configuration, orchestration and infrastructure as code typically performed by a system administrator.

Contents

Basic properties

"Verify mode" (also called dry run) refers to having an ability to determine whether a node is conformant with a guarantee of not modifying it, and typically involves the exclusive use of an internal language supporting read-only mode for all potentially system-modifying operations. "Mutual auth" refers to the client verifying the server and vice versa.

"Agent" describes whether additional software daemons are required. Depending on the management software these agents are usually deployed on the target system or on one or many central "controller" servers. Although "Agent-less" = "No" is colored red and might seem to be a negative, in fact having an agent can be considered quite advantageous to many. Consider the impact if an agent-less tool loses connectivity to a node while making critical changes—leaving the node in an indeterminate state that compromises its (production?) functionality.

LanguageLicense Mutual auth. Encryption Verify modeAgent-lessIncl. GUIFirst releaseLatest stable release
Ansible Python GPLv3+ Yes [lower-alpha 1] Yes [lower-alpha 2] YesYesYes [1] 2012-03-082023-11-11 2.15.4 [2]
Bcfg2 Python BSD 2-clause [3] Yes [lower-alpha 3] Yes [lower-alpha 4] Yes [lower-alpha 5] NoYes [4] 2004-08-11 [5] 2015-06-11 1.3.6 [5]
Capistrano Ruby MIT License Yes [lower-alpha 2] Yes [lower-alpha 2] No20052022-08-07 3.17.1
cdist Python GPLv3+ Yes [lower-alpha 1] Yes [lower-alpha 2] Yes20102021-08-24 6.9.8 [6]
Chef Ruby, Erlang Apache 2.0 Yes [lower-alpha 6] Yes [lower-alpha 7] Yes [lower-alpha 8] [7] NoYes2009-01-15 0.5.02023-01-05 18.1.0 (client), [8] 15.4.0 (server) [9]
CFEngine C [10] GPLv3 [11] Yes [lower-alpha 1] Yes [12] Yes [13] [14] [15] [16] NoYes [17] 19932023-12-06 3.23.0, [18] 2024-01-11 3.21.4, [19] 2023-01-11 3.18.7, [20]
ISconf PythonGPL [21] Yes [lower-alpha 9] No [22] 19982006-08-13 4.2.8.233
Juju Python, Go [23] AGPL Yes [lower-alpha 1] Yes [lower-alpha 4] NoNoYes [24] 2010-09-17 [25] 2024-02-15 3.4.0 [26]
Local ConFiGuration system (LCFG)PerlGPLPartial [27] Partial [28] NoNoNo1994Weekly Releases
NOC Project Python BSD License 2.0 Yes [lower-alpha 1] Yes [lower-alpha 2] YesYesYes2012-03-082015-05-20 15.05.1 [29]
OCS Inventory NG with GLPIPerl, PHP, C++ GPLNo [30] Yes [lower-alpha 4] No20032014-07-13 [31]
Open pc server integration (Opsi)Python, JavaGPLNoYes [lower-alpha 4] No20042013-03-01 4.0.3
PIKTC GPLv2+ [32] Yes [33] Yes [34] No1998 [35] 2007-09-10 1.19.0
Puppet Ruby, C++ & Clojure (server-side also Ruby before 4.0 [36] )Apache since 2.7.0, GPL before thenYes [lower-alpha 10] Yes [lower-alpha 4] Yes [lower-alpha 11] [37] NoYes [38] 2005-08-30 [39] 2020-06-03 6.16.0 (client), [40] 2020-06-03 6.12.0 (server) [41]
Quattor Perl, PythonApache 2.0 [42] [43] Yes [44] Yes [45] 2005-04-01 [46] 2023-08-14 23.6.0 [47]
Radmind CBSD [48] Yes [49] Yes [50] No2002-03-26 [51] 2008-10-08 1.13.0 [52]
Rex Perl Apache Yes [lower-alpha 1] Yes [lower-alpha 2] Yes2010-11-05 0.9.0 [53] 2021-07-05 1.13.4 [54]
Rudder C, Scala and Rust GPLv3 and Apache 2.0 [55] Yes [lower-alpha 1] Yes [lower-alpha 4] Yes [lower-alpha 12] [56] NoYes2011-10-312023-07-21 7.3.4 [57]
SmartFrog Java Apache 2.0 [58] Yes [59] Yes [59] No2004-02-112012-03-13 3.18.016 [60]
Salt [61] Python [62] Apache 2.0 [63] Yes [64] Yes [64] YesBoth [65] [66] Yes [67] [68] 2011-03-17 0.6.0 [69] 2023-05-05 v3006.1 [70]
Spacewalk Java (C, Perl, Python, PL/SQL)GPLv2YesYesNo2008-06 [71] 2019-01-14 2.9 [72]
STAF C++ CPL [73] No [lower-alpha 13] [lower-alpha 14] Partial [74] No1998-02-16 [75] 2012-12-16 3.4.16 [76]
Synctool [77] Python [78] GPLv2 [79] Yes [lower-alpha 15] Yes [lower-alpha 2] Yes [lower-alpha 16] Yes [80] 2003 [81] 2019-08-11 6.3 [82]
UyuniJava, Python, PL/SQL (Perl)GPLv2/Apache 2.0YesYesYesBothYes2018-06 [83] 31-01-2024 2024.01 [84]
LanguageLicense Mutual auth Encrypts Verify modeAgent-lessHave a GUIFirst releaseLatest stable release

Platform support

Note: This means platforms on which a recent version of the tool has actually been used successfully, not platforms where it should theoretically work since it is written in good portable C/C++ or an interpreted language. It should also be listed as a supported platform on the project's web site.

AIX *BSD HP-UX Linux OS X Solaris Windows Others
Ansible YesYesYesYesYesYesYes (excluding controller)Yes [85]
Bcfg2 Partial [lower-alpha 17] Yes [lower-alpha 18] NoYes [lower-alpha 19] Partial [lower-alpha 20] YesNoNo
CFEngine YesYes [lower-alpha 18] YesYesYesYesYes (enterprise version only)Yes [lower-alpha 21]
cdist YesYesYesNo
Chef Yes [86] YesYesYesYesYesYes [87] Yes
ISconf YesYesYesYesYesYesNoNo
Juju YesYes [88]
Local ConFiGuration system (LCFG)NoNoNoPartial [lower-alpha 22] Partial [lower-alpha 23] Partial [lower-alpha 24] NoNo
OCS Inventory NG YesYesYesYesYesYesYesNo
Open pc server integration (Opsi)NoNoNoYesNoNoYesNo
PIKTYesYesYesYesYesYesNoYes [lower-alpha 25]
Puppet YesYesYesYesYesYesYes [89] Yes
Quattor NoNoNoYesPartial [90] YesNoNo
Radmind YesYes [lower-alpha 18] [lower-alpha 26] [lower-alpha 27] NoYesYesYesYesNo
Rex YesYesYes [91] YesYes [91] No
Rudder YesPartial [lower-alpha 28] NoYesPartial [lower-alpha 28] Partial [92] YesYes [lower-alpha 29]
SmartFrog No [lower-alpha 30] No [lower-alpha 30] YesYesYesYesYesNo [lower-alpha 30]
Salt YesYesPartial [lower-alpha 31] Yes [93] YesYes [94] YesPartial [lower-alpha 31]
Spacewalk No [95] NoNoYes [96] NoNo [97] NoNo
STAF Yes [lower-alpha 32] Yes [lower-alpha 33] Yes [lower-alpha 34] Yes [lower-alpha 35] Yes [98] Yes [lower-alpha 36] Yes [lower-alpha 37] Yes [lower-alpha 38]
Synctool YesYesYesYesYesYesNoYes [lower-alpha 39]
UyuniNoNoNoPartial [lower-alpha 40] NoNoNoNo
AIX *BSD HP-UX Linux OS X Solaris Windows Others

Short descriptions

Not all tools have the same goal and the same feature set. To help distinguish between all of these software packages, here is a short description of each one.

Ansible
Combines multi-node deployment, ad-hoc task execution, and configuration management in one package. Manages nodes over SSH and requires python (2.6+ or 3.5+) to be installed on them. [99] Modules work over JSON and standard output and can be written in any language. Uses YAML to express reusable descriptions of systems.
Bcfg2
Software to manage the configuration of a large number of computers using a central configuration model and the client–server paradigm. The system enables reconciliation between clients' state and the central configuration specification. Detailed reports provide a way to identify unmanaged configuration on hosts. Generators enable code or template-based generation of configuration files from a central data repository.
CFEngine
Lightweight agent system. Manages configuration of a large number of computers using the client–server paradigm or stand-alone. Any client state which is different from the policy description is reverted to the desired state. Configuration state is specified via a declarative language. [100] CFEngine's paradigm is convergent "computer immunology". [101]
cdist
cdist is a zero dependency configuration management system: It requires only ssh on the target host, which is usually enabled on all Unix-like machines. Only the administration host needs to have Python 3.2 installed.
Chef
Chef is a configuration management tool written in Erlang, [102] and uses a pure Ruby DSL for writing configuration "recipes". These recipes contain resources that should be put into the declared state. Chef can be used as a client–server tool, or used in "solo" mode. [103]
ISconf
Tool to execute commands and replicate files on all nodes. The nodes do not need to be up; the commands will be executed when they boot. The system has no central server so commands can be launched from any node and they will replicate to all nodes.
Juju
Juju concentrates on the notion of service, abstracting the notion of machine or server, and defines relations between those services that are automatically updated when two linked services observe a notable modification.
Local Configuration system (LCFG)
LCFG manages the configuration with a central description language in XML, specifying resources, aspects and profiles. Configuration is deployed using the client–server paradigm. Appropriate scripts on clients (called components) transcribe the resources into configuration files and restart services as needed.
Open PC server integration (Opsi)
Opsi is desktop management software for Windows clients based on Linux servers. It provides automatic software deployment (distribution), unattended installation of OS, patch management, hard- and software inventory, license management and software asset management, and administrative tasks for the configuration management. [104]
PIKT
PIKT is foremost a monitoring system that also does configuration management. "PIKT consists of a sophisticated, feature-rich file preprocessor; an innovative scripting language with unique labor-saving features; a flexible, centrally directed process scheduler; a customizing file installer; a collection of powerful command-line extensions; and other useful tools."
Puppet
Puppet consists of a custom declarative language to describe system configuration, distributed using the client–server paradigm (using XML-RPC protocol in older versions, with a recent switch to REST), and a library to realize the configuration. The resource abstraction layer enables administrators to describe the configuration in high-level terms, such as users, services and packages. Puppet will then ensure the server's state matches the description. There was brief support in Puppet for using a pure Ruby DSL as an alternative configuration language starting at version 2.6.0. However this feature was deprecated beginning with version 3.1. [100] [103] [105] [106]
Quattor
The quattor information model is based on the distinction between the desired state and the actual state. The desired state is registered in a fabric-wide configuration database, using a specially designed configuration language called Pan for expressing and validating configurations, composed out of reusable hierarchical building blocks called templates. Configurations are propagated to and cached on the managed nodes.
Radmind
Radmind manages hosts configuration at the file system level. In a similar way to Tripwire (and other configuration management tools), it can detect external changes to managed configuration, and can optionally reverse the changes. Radmind does not have higher-level configuration element (services, packages) abstraction. A graphical interface is available (only) for OS X.
Rex
Rex is a remote execution system with integrated configuration management and software deployment capabilities. The admin provides configuration instructions via so-called Rexfiles. They are written in a small DSL but can also contain arbitrary Perl. It integrates well with an automated build system used in CI environments.
Salt
Salt started out as a tool for remote server management. As its usage has grown, it has gained a number of extended features, including a more comprehensive mechanism for host configuration. This is a relatively new feature facilitated through the Salt States component. With the traction that Salt has gotten in the last bit, the support for more features and platforms might continue to grow.
SmartFrog
Java-based tool to deploy and configure applications distributed across multiple machines. There is no central server; you can deploy a .SF configuration file to any node and have it distributed to peer nodes according to the distribution information contained inside the deployment descriptor itself.
Spacewalk
Spacewalk is an open source Linux and Solaris systems management solution[ buzzword ] and is the upstream project for the source of Red Hat Network Satellite. Spacewalk works with RHEL, Fedora, and other RHEL derivative distributions like CentOS, Scientific Linux, etc. There are ongoing efforts on getting it packaged for inclusion in Fedora. Spacewalk provides systems inventory (hardware and software information, installation and updates of software, collection and distribution of custom software packages into manageable groups, provision systems, management and deployment of configuration files, system monitoring, virtual guest provisioning, starting/stopping/configuring virtual guests and delegating all of these actions to local or LDAP users and system entitlements). As of May 2020, Spacewalk is now EOL with users having moved to either Uyuni or Foreman/Katello.
STAF
The Software Testing Automation Framework (STAF) enables users to create cross-platform, distributed software test environments. STAF removes the tedium of building an automation infrastructure, thus enabling users to focus on building their automation solution.[ buzzword ] The STAF framework provides the foundation upon which to build higher-level solutions[ buzzword ], and provides a pluggable approach supported across a large variety of platforms and languages.
Synctool
Synctool aims to be easy to understand, learn and use. It is written in Python and makes use of SSH (passwordless, with host-based or key-based authentication) and rsync. No specific language is needed to configure Synctool. Synctool has dry run capabilities that enable surgical precision. Synctool depends on Python2 which is now EOL and there are no current plans to migrate it to Python3.

See also

Notes

  1. 1 2 3 4 5 6 7 Key pair: uses public/private key pairs and key fingerprints for mutual authentication, like SSH.
  2. 1 2 3 4 5 6 7 Secure Shell: Uses the Secure Shell protocol for encryption.
  3. Certificate and Passwords: Uses SSL X.509 certificate and fingerprint for clients to authenticate server, and passwords for server to authenticate clients; clients should only share the same password if they are allowed access to each other's configuration data.
  4. 1 2 3 4 5 6 SSL: Uses the Secure Sockets Layer, Transport Layer Security (TLS) for encryption.
  5. Full support for non-modifying determination of node compliance, including nodes not previously modified by a Bcfg2 configuration pass.
  6. Per request signed headers and pre-shared keys.
  7. Payload encryption via SSL if HTTPS proxy is configured.
  8. Chef 10.14.0+ (called why-run mode)
  9. HMAC: Uses HMAC signatures on all network traffic.
  10. Certificates: Uses SSL X.509 Certificates for mutual authentication. Can use any SSL Certificate Authority to manage the Public Key Infrastructure.
  11. Using the --noop option
  12. Using the Audit mode.
  13. Network Trust: Trusts the network, like rsh.
  14. User-only Auth: User authenticates to server via password, but uses Network Trust to authenticate user to server, like telnet.
  15. Secure Shell: Uses the Secure Shell protocol for authentication.
  16. Synctool performs a dry-run by default, and only modifies things when invoked with '--fix'.
  17. Encap, RPM, and POSIX file support only.
  18. 1 2 3 FreeBSD.
  19. Debian, Ubuntu; Gentoo; RPM-based distributions (CentOS, Mandrake, Red Hat, RHEL, SLES, SuSE)
  20. POSIX File, Launchd, and MacPorts Support only.
  21. Unix.
  22. "Recent versions run on Fedora Core (3, 5, 6). Various people have ported some of the LCFG core to other Linux distributions, such as Debian, but these ports have not been incorporated"
  23. "There has been an experimental port to OS X, which does work and includes some Mac-specific components. However, this is not production quality and the lack of uniform packaging system under OS X means that automatic management of installed software is likely to be difficult."
  24. "LCFG core has been ported back to Solaris and we are using this in production, although the software has not been packaged for distribution, and is not so well supported"
  25. Digital Unix; IRIX
  26. NetBSD.
  27. OpenBSD.
  28. 1 2 Multiple users have successfully built and run the agent on FreeBSD, but no official package is available currently.
  29. Android.
  30. 1 2 3 Written in Java, so should in theory work on this platform if there is the appropriate JVM version available for it; however it has not been tested on the platform, which should be considered unsupported.
  31. 1 2 Will run anywhere Python runs, but handlers for different platforms are untested.
  32. 4.3.3+ (Power 32); 5.1+ (Power 32/64)
  33. FreeBSD 4.10 (x86-32); FreeBSD 6.1+ (x86-32)
  34. 11.00+ (PA-RISC 32, IA-64)
  35. (x86-32, x86-64, IA-64, PPC 64, zSeries 32/64)
  36. 2.6+ (Sparc 32); 10+ (x86-32, x86-64)
  37. 95, 98, Me, NT4, 2000, XP, 2003, Vista (x86-32), 7 (x86-32), 7 (x86-64); 2003, Vista (x86-64); 2004 (IA-64)
  38. OS/400 5.2+ (iSeries 32); z/OS Unix 1.4+
  39. Synctool runs on any platform that supports SSH, rsync and Python.
  40. SuSE"

Related Research Articles

OpenVPN is a virtual private network (VPN) system that implements techniques to create secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It implements both client and server applications.

Quattor is a generic open-source tool-kit used to install, configure, and manage computers. Quattor was originally developed in the framework of European Data Grid project (2001-2004). Since its first release in 2003, Quattor has been maintained and extended by a volunteer community of users and developers, primarily from the community of grid system administrators. The Quattor tool-kit, like other configuration management systems, reduces the staff required to maintain a cluster and facilitates reliable change management. However, three unique features make it particularly attractive for managing grid resources:

<span class="mw-page-title-main">Capistrano (software)</span>

Capistrano is an open-source tool for running scripts on multiple servers; its main use is deploying web applications. It automates the process of making a new version of an application available on one or more web servers, including supporting tasks such as changing databases.

Conserver is a serial console management system that provides remote access to system consoles and logs to a central (master) host. It supports both local and network serial connections and allows replay of the server console history even if the server is down. Multiple users can connect to a single serial connection, with one having write-access.

<span class="mw-page-title-main">Puppet (software)</span> Open source configuration management software

Puppet is a software configuration management tool which includes its own declarative language to describe system configuration. It is produced by Puppet Inc., founded by Luke Kanies in 2005. Its primary product, Puppet Enterprise, is a proprietary and closed-source version of its open-source Puppet software. They use Puppet's declarative language to manage stages of the IT infrastructure lifecycle, including the provisioning, patching, configuration, and management of operating system and application components in data centers and cloud infrastructures.

Spacewalk is open-source systems management software for system provisioning, patching and configuration licensed under the GNU GPLv2.

Progress Chef is a configuration management tool written in Ruby and Erlang. It uses a pure-Ruby, domain-specific language (DSL) for writing system configuration "recipes". Chef is used to streamline the task of configuring and maintaining a company's servers, and can integrate with cloud-based platforms such as Amazon EC2, Google Cloud Platform, Oracle Cloud, OpenStack, IBM Cloud, Microsoft Azure, and Rackspace to automatically provision and configure new machines. Chef contains solutions for both small and large scale systems.

ssh-keygen is a standard component of the Secure Shell (SSH) protocol suite found on Unix, Unix-like and Microsoft Windows computer systems used to establish secure shell sessions between remote computers over insecure networks, through the use of various cryptographic techniques. The ssh-keygen utility is used to generate, manage, and convert authentication keys.

University of Tsukuba Virtual Private Network, UT-VPN is a free and open source software application that implements virtual private network (VPN) techniques for creating secure point-to-point or site-to-site connections in routed or bridged configurations and remote access facilities. It uses SSL/TLS security for encryption and is capable of traversing network address translators (NATs) and firewalls. It was written by Daiyuu Nobori and SoftEther Corporation, and is published under the GNU General Public License (GPL) by University of Tsukuba.

Salt is a Python-based, open-source software for event-driven IT automation, remote task execution, and configuration management. Supporting the "infrastructure as code" approach to data center system and network deployment and management, configuration automation, SecOps orchestration, vulnerability remediation, and hybrid cloud control.

<span class="mw-page-title-main">Vagrant (software)</span> Software for portable virtual development environments

Vagrant is a source-available software product for building and maintaining portable virtual software development environments; e.g., for VirtualBox, KVM, Hyper-V, Docker containers, VMware, Parallels, and AWS. It tries to simplify the software configuration management of virtualization in order to increase development productivity. Vagrant is written in the Ruby language, but its ecosystem supports development in a few other languages. Vagrant has a Business Source License 1.1, while there is a fork called Viagrunts with the original MIT license.

cdist Software configuration management tool

cdist is a free software configuration management tool for Unix-like systems. It manages nodes over SSH using the Bourne Shell, and does not require any additional software to be installed on target nodes.

Ansible is a suite of software tools that enables infrastructure as code. It is open-source and the suite includes software provisioning, configuration management, and application deployment functionality.

CopSSH is an implementation of OpenSSH for Windows. CopSSH offers both SSH client and server functionality and can be used for remote administration of Windows systems. CopSSH contains Cygwin DLLs and a compiled version of OpenSSH on Cygwin. An administration GUI is also provided as of version 4.0.0.

<span class="mw-page-title-main">Foreman (software)</span> Life cycle systems management software

Foreman is an open source complete life cycle systems management tool for provisioning, configuring and monitoring of physical and virtual servers. Foreman has deep integration to configuration management software, with Ansible, Puppet, Chef, Salt and other solutions through plugins, which allows users to automate repetitive tasks, deploy applications, and manage change to deployed servers.

<span class="mw-page-title-main">Rudder (software)</span> Audit and configuration management utility

Rudder is an open source audit and configuration management utility to help automate system configuration across large IT infrastructures. Rudder relies on a lightweight local agent installed on each managed machine.

Continuous configuration automation (CCA) is the methodology or process of automating the deployment and configuration of settings and software for both physical and virtual data center equipment.

Teleport is an open-source tool for providing zero trust access to servers and cloud applications using SSH, Kubernetes and HTTPS. It can eliminate the need for VPNs by providing a single gateway to access computing infrastructure via SSH, Kubernetes clusters, and cloud applications via a built-in proxy.

References

  1. Red Hat, Inc. "AWX Project FAQ - Ansible.com". ansible.com.
  2. "Ansible community changelogs". docs.ansible.com. Red Hat, Inc. p. 1. Retrieved 2022-04-26.
  3. "bcfg2/LICENSE at master · Bcfg2/bcfg2 · GitHub". Github.com. Retrieved 2014-02-10.
  4. "Bcfg2 Web Reporting System — Bcfg2 1.3.6 documentation".
  5. 1 2 "Download – Bcfg2". bcfg2.org. Retrieved 2017-06-04.
  6. "cdist 6.9.8 has been released".
  7. "[#CHEF-13] Add -noop support - Opscode Open Source Ticket Tracking". Tickets.opscode.com. Archived from the original on 2014-02-26. Retrieved 2014-02-10.
  8. "Chef Infra Client 18.1.0 Released! - Chef Release Announcements - Chef Questions". 5 January 2023. Retrieved 2023-01-26.
  9. "Chef Infra Server 15.4.0 Released! - Chef Release Announcements - Chef Questions". 5 January 2023. Retrieved 2023-01-26.
  10. "CFEngine Source Code". Northern.tech AS. 26 May 2020.
  11. "core/License at master · cfengine/core · GitHub". GitHub. 26 May 2020.
  12. TLS: Uses TLS. "tls_min_version in common control". Northern.tech. Retrieved 2018-11-30.
  13. "--dry-run option for cf-agent". Northern.tech. Retrieved 2022-01-14.
  14. "dryrun option in agent control". Northern.tech. Retrieved 2018-11-30.
  15. "--simulate option for cf-agent". Northern.tech. Retrieved 2022-01-14.
  16. "Common promise attribute action_policy warn or nop". Northern.tech. Retrieved 2022-01-14.
  17. "CFEngine Enterprise Mission Portal". Northern.tech AS.
  18. "CFEngine 3.23.0 released". Northern.tech AS.
  19. "CFEngine 3.21.4 released". Northern.tech AS.
  20. "CFEngine 3.18.7 released". Northern.tech AS.
  21. "/trunk/LICENSE - ISconf - Trac". Trac.t7a.org. 1989-04-01. Archived from the original on 2013-04-15. Retrieved 2014-02-10.
  22. Improved security which would include an encrypted, mutually authenticated, peer-to-peer message bus is tracked here "#39 (Implement TCP mesh) - ISconf - Trac". Archived from the original on 2012-07-16. Retrieved 2007-04-17..
  23. "Juju Source Code". github.com. 2015-06-19. Retrieved 2015-06-21.
  24. "Juju Gui". jujucharms.com. 2015-06-15. Archived from the original on 2015-06-21. Retrieved 2015-06-21.
  25. "timeline : pyjuju". Launchpad.net. Retrieved 2014-02-10.
  26. "GitHub". github.com. Retrieved 2022-03-21.
  27. LCFG does not provide its own transport mechanism; it relies on an external program, most often Apache. Using Apache it should be possible to do mutual authentication in several ways; however the documentation at The Complete Guide to LCFG, Section 9.4: Authorization and Security, shows access control based on IP address ranges, implying that the client does not authenticate itself to the server via an SSL certificate; it also does not mention if the LCFG client checks the validity of the server's SSL certificate (such as via a per-site fingerprint distributed with the client, or a chain of trust to an accredited CA). It mentions that there can be a per-client password in the profile, but also states that "The contents of the LCFG profile should be considered public".
  28. LCFG supports encrypted communications channels (SSL via Apache); however the documentation at The Complete Guide to LCFG, Section 9.4: Authorization and Security, states that "The contents of the LCFG profile should be considered public".
  29. "NOC". nocproject.org.
  30. Server authenticates to client, but client does not authenticate to server. See OCS Inventory NG Installation and Administration guide, page 114.
  31. "2.1.2 stable published". OCS Inventory NG. Retrieved 2014-12-16.
  32. Robert Osterlund (2014-01-04). "PIKT Licensing". Pikt.org. Retrieved 2014-02-10.
  33. PIKT uses shared secret keys for mutual authentication. "As an option, you can use secret key authentication to prove the master's identity to the slave. [...] If one managed to crack any system in the PIKT domain, one would have access to all common secrets. To solve this problem, you may use per-slave uid, gid, and private_key settings." - from Security Considerations.
  34. "For file installs, file fetches (to diff against the central configuration), and command executions, you can optionally encrypt all such data traffic between master and slave." - from Security Considerations.
  35. "Index of /pikt/dist". Pikt.org. Retrieved 2014-02-10.
  36. "Evolving Puppet for the Next 10 Years". Luke Kanies. 2014-09-23. Retrieved 2017-05-26.
  37. "puppet agent Man Page — Documentation — Puppet Labs". Docs.puppetlabs.com. Archived from the original on 2013-07-07. Retrieved 2014-02-10.
  38. "Puppet Management GUI Comparison". olindata.com. Archived from the original on 2015-01-17. Retrieved 2015-01-12.
  39. "Index of /puppet". Puppetlabs.com. Retrieved 2014-02-10.
  40. "Puppet release notes" . Retrieved 2020-07-04.
  41. "Puppet Server: Release Notes" . Retrieved 2020-07-04.
  42. "EU DataGrid Software License (EUDatagrid) | Open Source Initiative". Opensource.org. 1999-02-22. Retrieved 2014-02-10.
  43. "DataGrid Software License (do not change the page URL)". Eu-datagrid.web.cern.ch. 2004-05-26. Retrieved 2014-02-10.
  44. "Client to server authentication and vice versa: on one hand, this allows to enforce access policies to sensitive data according to the client "name", on the other hand, clients are guaranteed to talk to the original server." - from Quattor Installation and User Guide: Version 1.1.x Archived 2013-04-06 at the Wayback Machine , page 70
  45. "[...] secure information transfer, since data are encrypted: this prevents eavesdroppers from obtaining information in transit over the network." - from Quattor Installation and User Guide: Version 1.1.x Archived 2013-04-06 at the Wayback Machine , page 70
  46. "Index of /quattorsw/software/quattor/release". Quattorsw.web.cern.ch. Archived from the original on 2014-03-18. Retrieved 2014-02-10.
  47. "Quattor 23.6.0 released". quattor.org.
  48. "Research Systems Unix Group: beepage". Rsug.itd.umich.edu. Archived from the original on 2015-02-10. Retrieved 2014-02-10.
  49. "SSL certificates can also be used to authenticate both the Radmind server and the managed clients, regardless of DNS or IP-address variation." - from Radmind: The Integration of Filesystem Integrity Checking with Filesystem Management
  50. "For network security, Radmind supports SSL-encrypted links. This allows nodes on insecure networks to be updated securely." - from Radmind: The Integration of Filesystem Integrity Checking with Filesystem Management
  51. "Radmind - Browse /radmind/radmind-0-6-0 at". Sourceforge.net. 2006-02-10. Retrieved 2014-02-10.
  52. fitterhappier. "Radmind". sourceforge.net.
  53. "Release 0.9.0 · krimdomu/Rex · GitHub". GitHub.
  54. "Rex/ChangeLog at master · RexOps/Rex · GitHub". GitHub.
  55. "Rudder FAQ". rudder.io.
  56. "Policy Mode (Audit/Enforce) - Rudder 4.0 - User Manual". rudder-project.org. Retrieved 2017-01-17.
  57. "Change logs for Rudder 7.3 :: Rudder Documentation". rudder.io.
  58. "SmartFrog / SVN / Commit [r8898]". Sourceforge. 2017-05-16.
  59. 1 2 See Using the new SmartFrog Security
  60. "SmartFrog - Browse /development/smartfrog-3.18.016 at SourceForge.net" . Retrieved 2022-04-27.
  61. Salt is an open source tool to manage your infrastructure. Easy enough to get running in minutes and fast enough to manage tens of thousands of servers
  62. "Installation". saltstack.com.
  63. "SaltStack community". SaltStack.
  64. 1 2 "SaltStack community". SaltStack.
  65. "Salt SSH". saltstack.com.
  66. "SaltStack Enterprise". SaltStack.
  67. "erwindon/SaltGU". GitHub. 20 May 2021.
  68. "vRealize Automation SaltStack Config". vmware.com.
  69. "SaltStack community". SaltStack.
  70. "Salt Releases". saltstack.com.
  71. "SpacewalkFaq – spacewalk". fedorahosted.org.
  72. "spacewalkproject/spacewalk". GitHub. Retrieved 2018-10-18.
  73. "Software Testing Automation Framework (STAF)". sourceforge.net.
  74. There is a feature request for a Secure TCP/IP Connection Provider, and one of the developers stated on 2007-04-05 that "You will need to download the source code for OpenSSL and point the build files at it. Other than that, it should just work.", so it looks like there may be working encryption if you build from scratch instead of using the prebuilt binaries. It is unclear what if any authentication building against OpenSSL would give STAF.
  75. "Software Testing Automation Framework (STAF)". sourceforge.net.
  76. "Software Testing Automation Framework (STAF)". sourceforge.net.
  77. Synctool aims to be easy to understand and use. It is built in Python and uses SSH and Rsync.
  78. "synctool documentation". heiho.net.
  79. "synctool/LICENSE at master · walterdejong/synctool · GitHub". GitHub.
  80. "synctool documentation". walterdejong.github.io.
  81. "synctool documentation". heiho.net.
  82. "Synctool releases". GitHub.
  83. "Uyuni: Forking Spacewalk with Salt and Containers". 26 May 2018.
  84. ""Uyuni 2024.01 is released"". Uyuni. Retrieved 2024-02-01.
  85. Installation: Control Machine Requirements , retrieved May 12, 2015 Can manage any machine with Python 2.4 or later and sshd. Control machine can be any non-Windows machine with Python 2.6 or 2.7 installed. This includes Red Hat, Debian, CentOS, OS X, any of the BSDs, and so on.
  86. Opscode and IBM Join Forces to Bring Open Source Cloud Automation to the Enterprise, 2013-04-25
  87. Install the chef-client on Microsoft Windows , retrieved 2017-03-15
  88. Windows workloads using juju , retrieved November 25, 2015
  89. Puppet on Windows: top questions for 2019 , retrieved 2019-01-15
  90. "quattor". sourceforge.net.
  91. 1 2 "Rex installation instructions" . Retrieved 2014-07-19.
  92. "rudder-packages/rudder-agent/other at master · cfengineers-net/rudder-packages · GitHub". GitHub.
  93. "SaltStack community". SaltStack.
  94. Salt was added to the OpenCSW package repository in September of 2012 in version 0.10.2 of Salt
  95. "BrainBox – spacewalk". fedorahosted.org.
  96. "spacewalk". fedorahosted.org.
  97. "ManagingSolarisSystems – spacewalk". fedorahosted.org.
  98. 10.2+ (?)
  99. "Installation — Ansible Documentation". 2018-01-29.
  100. 1 2 "CFEngine vs Puppet: Detailed Comparison | UpGuard".
  101. Burgess, Mark (December 1998). Computer Immunology (PDF). Systems Administration Conference. Boston, Massachusetts.
  102. "Chef Github repository". GitHub . 21 May 2021.
  103. 1 2 Alan Sharp-Paul. "Puppet vs. Chef - The Battle Wages On". upguard.com.
  104. "opsi features". Archived from the original on 2009-01-30. Retrieved 2009-02-22.
  105. "Puppet & Ruby DSL - Puppet Labs". Puppet Labs.
  106. "Puppet 3.0 — 3.4 Release Notes". puppetlabs.com. Archived from the original on 2013-05-13. Retrieved 2013-05-23.