pamd — Управление модулями PAM
Новая в версии 2.3.
Описание
- Редактирование типа, управления, пути к модулю и аргументов модуля службы PAM. Для изменения правила PAM тип, управление и module_path должны соответствовать существующему правилу. Подробнее см. man(5) pam.d.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| control обязательно | Управление правилом PAM, которое изменяется. Это может быть сложное управление с использованием скобок. В этом случае убедитесь, что вы поместили "[скобочные элементы управления]" в кавычки. Тип, управление и module_path должны совпадать с правилом для его изменения. | |
| module_arguments | Когда состояние равно 'updated', module_arguments заменят существующие module_arguments. Когда состояние равно 'args_absent', аргументы, совпадающие с теми, что перечислены в module_arguments, будут удалены. Когда состояние равно 'args_present', все аргументы, указанные в module_arguments, добавляются, если отсутствуют в существующем правиле. Кроме того, если аргумент модуля принимает значение, обозначенное знаком '=', значение будет изменено на то, которое указано в module_arguments. Обратите внимание, что module_arguments — это список. Пожалуйста, обратитесь к примерам для использования. | |
| module_path обязательно | Путь к модулю правила PAM, которое изменяется. Тип, управление и module_path должны совпадать с правилом для его изменения. | |
| name обязательно | Имя, как правило, относится к файлу службы PAM, который нужно изменить, например, system-auth. | |
| new_control | Новое управление, которое нужно назначить новому правилу. | |
| new_module_path | Новый путь к модулю, который нужно назначить новому правилу. | |
| new_type | Новый тип, который нужно назначить новому правилу. | |
| path | По умолчанию: /etc/pam.d/ | Это путь к файлам служб PAM |
| state |
| По умолчанию 'updated' изменит существующее правило, если тип, управление и module_path соответствуют существующему правилу. С 'before' новое правило будет вставлено перед правилом, соответствующим типу, управлению и module_path. Аналогично, с 'after' новое правило будет вставлено после существующего правила, соответствующего типу, управлению и module_path. В случае 'before' или 'after' необходимо указать new_type, new_control и new_module_path. Если состояние равно 'args_absent' или 'args_present', new_type, new_control и new_module_path будут проигнорированы. Состояние 'absent' удалит правило. Состояние 'absent' было добавлено в версии 2.4 и доступно только в версиях Ansible >= 2.4. |
| type обязательно | Тип правила PAM, которое изменяется. Тип, управление и module_path должны совпадать с правилом для его изменения. |
Примеры
- name: Update pamd rule's control in /etc/pam.d/system-auth
pamd:
name: system-auth
type: auth
control: required
module_path: pam_faillock.so
new_control: sufficient
- name: Update pamd rule's complex control in /etc/pam.d/system-auth
pamd:
name: system-auth
type: session
control: '[success=1 default=ignore]'
module_path: pam_succeed_if.so
new_control: '[success=2 default=ignore]'
- name: Insert a new rule before an existing rule
pamd:
name: system-auth
type: auth
control: required
module_path: pam_faillock.so
new_type: auth
new_control: sufficient
new_module_path: pam_faillock.so
state: before
- name: Insert a new rule pam_wheel.so with argument 'use_uid' after an existing rule pam_rootok.so
pamd:
name: su
type: auth
control: sufficient
module_path: pam_rootok.so
new_type: auth
new_control: required
new_module_path: pam_wheel.so
module_arguments: 'use_uid'
state: after
- name: Remove module arguments from an existing rule
pamd:
name: system-auth
type: auth
control: required
module_path: pam_faillock.so
module_arguments: ''
state: updated
- name: Replace all module arguments in an existing rule
pamd:
name: system-auth
type: auth
control: required
module_path: pam_faillock.so
module_arguments: 'preauth
silent
deny=3
unlock_time=604800
fail_interval=900'
state: updated
- name: Remove specific arguments from a rule
pamd:
name: system-auth
type: session control='[success=1 default=ignore]'
module_path: pam_succeed_if.so
module_arguments: crond,quiet
state: args_absent
- name: Ensure specific arguments are present in a rule
pamd:
name: system-auth
type: session
control: '[success=1 default=ignore]'
module_path: pam_succeed_if.so
module_arguments: crond,quiet
state: args_present
- name: Ensure specific arguments are present in a rule (alternative)
pamd:
name: system-auth
type: session
control: '[success=1 default=ignore]'
module_path: pam_succeed_if.so
module_arguments:
- crond
- quiet
state: args_present
- name: Module arguments requiring commas must be listed as a Yaml list
pamd:
name: special-module
type: account
control: required
module_path: pam_access.so
module_arguments:
- listsep=,
state: args_present
- name: Update specific argument value in a rule
pamd:
name: system-auth
type: auth
control: required
module_path: pam_faillock.so
module_arguments: 'fail_interval=300'
state: args_present
- name: Add pam common-auth rule for duo
pamd:
name: common-auth
new_type: auth
new_control: '[success=1 default=ignore]'
new_module_path: '/lib64/security/pam_duo.so'
state: after
type: auth
module_path: pam_sss.so
control: 'requisite'
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| action строка | всегда | Выполненное действие, одно из: update_rule, insert_before_rule, insert_after_rule, args_present, args_absent, absent. Пример: update_rule |
| change_count целое число | успех | Количество изменённых правил Пример: 1 |
| dest строка | успех | Путь к службе pam.d, которая была изменена. Доступно только в версии Ansible 2.3 и удалено в 2.4. Пример: /etc/pam.d/system-auth |
| new_rule строка | успех | Изменения в правиле Пример: None None None sha512 shadow try_first_pass use_authtok |
| updated_rule_(n) строка | успех | Изменённые правила Пример: ['password sufficient pam_unix.so sha512 shadow try_first_pass use_authtok'] |
Статус
Этот модуль помечен как preview, что означает, что его интерфейс не гарантируется как обратной совместимый.
Автор
- Kenneth D. Evensen (@kevensen)
Подсказка
Если вы обнаружите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/pamd_module.html