This collection provides a comprehensive set of roles for configuring and managing Linux systems. While originally developed for the Mila infrastructure, most roles are designed to be environment-agnostic and can be used in any Linux environment. The collection is now open source to benefit the wider community.
The collection is designed to provide a standardized way to configure Linux systems, ensuring consistency across different machines and making system administration more efficient. While some roles may have Mila-specific configurations, contributions are welcome to make them more generic and adaptable to other environments.
-
System Configuration
- Environment setup
- Package management
- Time synchronization
- Message of the day (MOTD)
- PAM configuration
- Cgroups setup
-
Security
- Fail2ban intrusion prevention
- Local user management
- SSH key management
- Service account configuration
-
Storage and Mounting
- CVMFS configuration
- Multipath device management
- Mount point configuration
-
System Services
- MSMTP email configuration
- Lmod environment modules
- cgroups - Control groups configuration
- environment - System environment configuration
- motd - Message of the day configuration
- packages - Package management
- pam - PAM authentication configuration
- time - Time synchronization
- fail2ban - Intrusion prevention system
- local_users - Local user management
- cvmfs_opts - CVMFS configuration options
- mount - Mount point management
- multipath - Multipath device configuration
ansible-galaxy collection install mila.linux_system
Include the collection in your playbook:
collections:
- mila.linux_system
Then use the roles as needed:
- hosts: servers
roles:
- mila.linux_system.environment
- mila.linux_system.local_users
- mila.linux_system.fail2ban
- Ansible 2.9 or higher
- Target systems running Linux
- Appropriate permissions for system configuration
This collection is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! This collection was made open source to benefit the wider community. We encourage contributions to:
- Make Mila-specific roles more generic and adaptable
- Add support for additional Linux distributions
- Improve documentation and examples
- Add new features and functionality
- Fix bugs and issues
Please feel free to submit a Pull Request.
For issues and feature requests, please use the GitHub issue tracker.