Как работает запуск ansible в SSH-сессиях через PAM?
Ansible в SSH позволяет автоматизировать повторяемые задачи без ручной рутины выполнения команд. Изменения происходят сразу на десятках или сотнях серверов. Пароли можно не хранить в коде и не предоставлять знание пароля пользователю, а все изменения, которые происходили в сессии, можно просмотреть в интерфейсе PAM.
Как это работает
Пользователь получает строки подключения с помощью менеджера подключений в web-интерфейсе Системы.
Пользователь конфигурирует
inventoryдля запуска плейбука на своей рабочей станции так, чтобы использовать компоненты подключения системы вместо прямого доступа на ресурсы.
Пример конфигурации
ansible.cfg
[ssh_connection] ssh_args = -o ControlMaster=no -o ControlPath=none -F ssh_config pipelining = False
inventory.ini
[all] target1 ansible_host=pam.bi.zone ansible_user=pam_admin@pamtestuser@10.8.176.18^2230 ansible_port=2222 target2 ansible_host=pam.bi.zone ansible_user=pam_admin@pamtestuser@10.8.176.19^2230 ansible_port=2222 target3 ansible_host=ssh-target3
ssh_config
Host ssh-target3 HostName dev10-onprem.dev1.onprem.pam.bi.zone Port 2222 User pam_admin@pamtestuser@10.8.176.20^2230