Requirements¶
Target server¶
Supported platforms¶
At the moment, while the environment with the fullest support for the target server is Debian/Ubuntu, some initial support is available for CentOS. This is simply because the expertise of the initial authors is with the .deb world. Adding RPM environments should not be difficult, but we need help. Your pull requests are welcome.
At the moment, we are testing with Ubuntu 14 (Trusty) LTS, Ubuntu 15 (Vivid) and with Debian wheezy, Debian jessy, and CentOS 7.
The following components are currently not supported for the CentOS environment:
jnv.unattended-upgrades
tersmitten.fail2ban
- The
firewall.yml
playbook.
SSH access; sudo¶
Beyond the basic platform, the only requirements are that you have ssh
access to the remote server with full sudo
rights.
For local testing via virtual machine, any machine that supports VirtualBox/Vagrant should be adequate.
Local setup¶
On your local machine (the one from which you’re controlling the remote server), you will need a recent copy of Ansible. docs.ansible.com has thorough installation instructions. We will be testing with release versions of Ansible, so don’t feel a need to track Ansible development. (Note: don’t us your OS package manager to install Ansible; you may get an unusably out-of-date version.)
Ansible’s only dependency is a recent version of Python 2.6 or later.
You will also nearly certainly want git, both for cloning the playbook and for version-controlling your own work.
To clone the master branch of the playbook, use the command:
Ansible role requirements¶
We have a few Ansible role dependencies which you may fulfill via Ansible Galaxy with the command:
ansible-galaxy -r requirements.yml -p roles install
This should be executed in your playbook directory. Downloaded requirements will be dropped into the roles
directory there.