2014-10-30 49 views
0

ansible的authorized_key模塊是否可用於將主機的ssh密鑰複製到新的遠程用戶?用於初始連接的授權密鑰模塊

+0

爲什麼不使用「複製」呢? – seanmcl 2014-10-30 13:35:59

+0

我想知道,我們是否可以自動化與新的遠程主機建立的初始連接。我想,複製模塊只能在連接建立後才能使用。 – Vasu 2014-10-30 13:49:17

+0

我明白了,所以不要傳遞--private-key或使用你自己的ssh配置文件來建立第一個連接,所以你想使用這個模塊。那麼我相當肯定答案是否定的;你需要使用通常的安全機制(ansible_ssh_private_key_file等) – seanmcl 2014-10-30 14:01:13

回答

1

Ansible完全通過SSH。所以你必須使用ssh來設置ssh。至少,您需要運行ssh守護程序以及可以使用密碼訪問主機的用戶。

然後,您可以訪問使用-k主機(或--ask-pass,要求SSH密碼),-K(或--ask-sudo-pass,要求輸入sudo密碼)和-u(或--user,連接該用戶身份)。

比方說,你有一個foo用戶可以在遠程機器上的SSH和須藤,並要安裝一些SSH公鑰以root登陸,你可以這樣做:

ansible yourhost -kKu foo -m authorized_key -a "ssh-dss AAAAB...zzz [email protected]" 

You'l被要求鍵入:

  • Foo的密碼遠程主機上
  • 密碼時FOO被sudoing根

請參閱http://docs.ansible.com/authorized_key_module.html以獲取讀取本地ssh密鑰(查找)的其他方法。

+0

你的意思是這個工程,即使我還沒有將ssh密鑰複製到遠程主機。這意味着沒有初始設置已經完成。遠程主機是新的,並且主機的公鑰尚未在遠程主機上。 – Vasu 2014-10-30 14:36:14

+0

ansible yourhost -Kku foo -m authorized_key -a「user = foo key ='ssh-dss AAAAB ..... zzzz [email protected]'」 – Vasu 2014-10-30 15:20:09