В настоящее время я создаю общий доступный сценарий для Ubuntu.
Во время процесса усиления я отключаю пользователя root и создаю нового пользователя sudo для запуска будущих playbooks (называемого ansible
).
Когда я впервые запускаю эту пьесу, у меня ansible_ssh_user
установить как root
во второй раз мне нужно вручную изменить ansible_ssh_user
var в ansible
.
Есть ли способ для ansible отслеживать, на каких хостах этот шаг завершен, и подключаться к вновь созданным ansible
user или даже вернуться ко второй попытке имени пользователя. Я бы хотел, чтобы этот процесс проходил без присмотра, если это вообще возможно.
Редактировать: Пытаюсь исправить пользователя при установке нового соединения. Например. Я запустил сборник инструкций по усилению защиты на одном сервере. Теперь я хочу запустить его, чтобы подготовить новый сервер и внести некоторые обновления в существующие. Поэтому у меня есть два имени пользователя root и ansible. Я бы хотел, чтобы сценарий попробовал оба варианта вместо установки переменной хоста. Являются ли переменные хоста моим единственным вариантом?
Используйте метаданные, которые может запросить ваш сценарий инвентаризации, а затем выберите пользователя на основе группы целевого поля.
Например, используя AWS, установите hardened
после настройки пользователя ansible, а затем, когда вы запускаете другие игры, вы можете использовать пользователя ansible на хостах, для которых установлен усиленный тег. Это будет автоматически отображаться как группа с использованием инвентаря AWS.