Rex
What it is
Rex is a free, open-source automation framework for managing local and remote machines over SSH. It is self-hosted and agentless, and projects define inventory, environments, authentication information, and tasks in a Rexfile. Tasks can install packages, upload configuration files, start services, or run an action when a file changes. Rex supports local or remote execution, push or pull management, and imperative or declarative approaches. Its simple DSL follows Perl-compatible syntax and can be extended with Perl modules or custom code. Authentication includes passwords, SSH keys, passphrases, external credential sources, and ssh-agent. The control host requires Perl and dependencies; managed hosts require a Perl 5 interpreter and valid SSH account. Documentation covers OpenWrt and Amazon EC2. Supported systems include Linux, Windows, RHEL/CentOS, Fedora, BSDs, and Solaris. Installation is available through CPAN, package managers, or source.
For and against
For
- Free Apache 2.0 open-source framework
- Agentless SSH management
- Imperative and declarative task styles
- Supports multiple authentication methods
- Runs across Linux, Windows, BSDs, and Solaris
Against
- Managed hosts require Perl 5
- Managed hosts need a valid SSH account
- Self-hosted deployment requires local setup
- Control host requires Perl dependencies
The verdict
Rex provides a Perl-compatible way to describe and run configuration tasks across local and remote machines. Its broad platform support and agentless model fit incremental SSH-based automation.
Who it suits
Rex suits administrators who want incremental, agentless automation from a local control host. It is also relevant for teams managing mixed Linux, Windows, and Unix-like systems over SSH.
Plans and prices
Rex
Apache 2.0 licensed open-source framework
Read 8 Oct 2026 · rexify.org
On the record
- Authentication
- Rex documents password and SSH key authentication, passphrases, external credential sources, and ssh-agent.rexify.org · read 8 Oct 2026
- Commercial support
- The site lists consulting, training, and custom development from a core developer, as well as professional support from inovex.rexify.org · read 8 Oct 2026
- Community support
- Community support is available through GitHub Discussions, Matrix, IRC, a mailing list, and maintainer office hours.rexify.org · read 8 Oct 2026
- Configuration management
- Rex tasks can install packages, upload configuration files, start services, and run an action when a file changes.rexify.org · read 8 Oct 2026
- Execution choices
- Rex supports combinations of local and remote execution, push and pull management, and imperative and declarative approaches.rexify.org · read 8 Oct 2026
- Installation
- The recommended installation method is CPAN, and Rex is also distributed through operating-system package managers and from source.rexify.org · read 8 Oct 2026
- Integrations
- The guides include managing OpenWrt devices and Amazon EC2 instances.rexify.org · read 8 Oct 2026
- Intended use
- The site describes Rex as suitable for incremental automation because it runs locally while managing remote systems over SSH.rexify.org · read 8 Oct 2026
- Language
- Rex uses a simple DSL that is syntax-compatible with Perl, and users can extend it with Perl modules or their own code.rexify.org · read 8 Oct 2026
- License
- Rex and all its parts are released under the Apache 2.0 license.rexify.org · read 8 Oct 2026
- Purpose
- Rex is an automation framework for managing local machines and remote machines over SSH.rexify.org · read 8 Oct 2026
- Requirements
- The control host requires Perl and its dependencies; managed hosts need a Perl 5 interpreter and a valid SSH account.rexify.org · read 8 Oct 2026
- Task files
- Rex projects define inventory, environments, authentication information, and tasks in a Rexfile.rexify.org · read 8 Oct 2026
- Windows support
- The project’s release notes say Rex 1.16.0 added features for running commands on Windows.rexify.org · read 8 Oct 2026