2016-04-21 226 views
2

我有多個服務器的清單。通過使用PEM密鑰文件來保護對這些服務器的SSH訪問。我想定期更改我的服務器使用的PEM密鑰。所以,我想用Ansible做到以下幾點:Ansible:更改SSH密鑰

  1. 生成新的PEM密鑰文件
  2. 對於我的庫存每臺服務器上,使用舊的PEM密鑰文件
  3. 安裝連接到服務器的新的PEM密鑰文件
  4. 測試,以確保與新的重點工作SSH和舊鑰匙工作

什麼是通過Ansible做到這一點的最好方法是什麼?

回答

1

你應該把它分成三部劇本。

第一個生成新的PEM密鑰。這將在本地運行。請參閱:https://docs.ansible.com/ansible/playbooks_delegation.html#local-playbooks

第二個將執行部署。所以它將密鑰複製到所有服務器。根據您首選的工作流程,您可以使用authorized_keycopy。但那是另一個問題。

第三步然後是一個測試劇本,可能帶有assert語句或者只是使用ping來確保連接正常工作。

當你將所有這些劇本結合在一個單一的包含或添加這三個劇本在一個劇本中以正確的順序。參見:https://docs.ansible.com/ansible/playbooks_intro.html

+0

謝謝。這看起來很棒!我會試試看。 – Raj