arillso.sudoers
Ansible Role: sudoers
Description
This tool helps you manage the sudoers
file and sudoers.d
directory in Linux.
Installation
To install this role, run:
ansible-galaxy install arillso.sudoers
Requirements
No additional requirements are needed.
Role Variables
sudoers_package
This variable specifies the package name.
sudoers_package: sudo
sudoers_sudoers_file
Path to the main sudoers file.
sudoers_sudoers_file: '/etc/sudoers'
sudoers_use_os_defaults
Use default rules from the operating system (true/false).
sudoers_use_os_defaults: true
sudoers_sudoers
This section contains default configuration options.
Default configuration options
sudoers_sudoers:
defaults: []
You can set different types of default configurations.
Variables include:
sudoers_sudoers:
defaults_host: []
defaults_user: []
defaults_cmnd: []
defaults_runas: []
Host, User, Command, and Runas Aliases
You can create groups of hosts, users, commands, or runas with aliases:
Type | Variable | Comments |
---|---|---|
Host Alias | sudoers_sudoers.host_aliases |
Defines a list of host aliases |
User Alias | sudoers_sudoers.user_aliases |
Defines a list of user aliases |
Command Alias | sudoers_sudoers.cmnd_aliases |
Defines a list of command aliases |
Runas Alias | sudoers_sudoers.runas_aliases |
Defines a list of runas aliases |
Privileges
Defines what users or groups are allowed to do:
sudoers_sudoers.privileges:
- name: user_or_group
entry: 'ALL=(ALL) ALL'
Example
Here’s a sample configuration:
sudoers_sudoers:
defaults:
- env_reset
- exempt_group=sudo
- secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
host_aliases:
- name: SERVERS
members: master, mail, www
user_aliases:
- name: ADMIN
members: admin_user
privileges:
- name: admin
entry: 'ALL=(ALL) ALL'
sudoers.d Files
You can also manage files in the /etc/sudoers.d/
directory.
Example Playbook
To use the role, your playbook would look like this:
---
- hosts: all
roles:
- arillso.sudoers
Author
- Simon Bärlocher
- Mark van Driel
- Mischa ter Smitten
License
This project is licensed under the MIT License. For full details, see the LICENSE file.
Copyright
(c) 2022, Arillso