Ansible: изменить ключ SSH

У меня есть список нескольких серверов. SSH-доступ к этим серверам защищен с помощью файлов ключей PEM. Я хотел бы периодически менять ключ PEM, используемый моими серверами. Итак, я хотел бы использовать Ansible для следующих действий:

  1. Создайте новый ключевой файл PEM
  2. Для каждого сервера в моем инвентаре подключитесь к серверу, используя старый файл ключей PEM.
  3. Установить новый ключевой файл PEM
  4. Убедитесь, что SSH с новым ключом работает, а старый не работает

Как лучше всего сделать это через Ansible?


person Raj    schedule 21.04.2016    source источник


Ответы (1)


Вы должны разделить это на три пьесы.

Первым, кто сгенерирует новый ключ PEM. Это будет работать локально. См .: https://docs.ansible.com/ansible/playbooks_delegation.html#local-playbooks

Второй займется развертыванием. Таким образом, он копирует ключ на все серверы. Вы можете использовать authorized_key или копировать в зависимости от вашего предпочтительного рабочего процесса. Но это другой вопрос.

Третьим шагом будет тестовая книга, возможно, с оператором assert или просто с помощью команды ping, чтобы убедиться, что соединение работает.

Когда у вас есть все эти пьесы, объедините их в один с включением или добавьте эти три пьесы в одну пьесу в правильном порядке. См .: https://docs.ansible.com/ansible/playbooks_intro.html

person flxPeters    schedule 22.04.2016
comment
Спасибо. Выглядит отлично! Я это попробую. - person Raj; 25.04.2016