2017-05-31 100 views
0

我看過[常問問題] [1],但是我的任務沒有答案。Ansible:如何配置沒有ssh密鑰的跳轉主機?

如何使用Ansible使用密碼訪問堡壘(跳箱)主機?我們不考慮使用SSH密鑰。 SSH配置(或Ansible配置)如何看起來像這種情況? 例如使用SSH密鑰,配置是這樣的:

ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q [email protected]"' 

如何實現通過使用密碼相同的結果?

+0

完全相同的方式爲您呈現,但系統會提示您輸入密碼,一旦它會被要求。你也錯過了一個鏈接到你的常見問題。 – Jakuje

+0

謝謝。對不起。這裏是 - http://docs.ansible.com/ansible/faq.html – kurgulus

回答

0

在我~/.ssh/config文件,我已經配置堡壘主機這樣的:

##### Private hosts access through bastion host ##### 
Host bastion-host 
    HostName 52.13.2.54 
    ForwardAgent yes 

Host 10.10.* 
    ProxyCommand ssh -q bastion-host nc -q0 %h %p 

然後,我可以通過在專用子網的主機直接運行Ansible。希望對你有所幫助

2

你可以使用ProxyJump ssh選項,它不需要在跳轉主機上安裝netcat/nc。

所以在~/.ssh/config文件你正在使用運行Ansible命令的用戶,添加如下內容

Host jumphost 
    HostName 1.1.1.1 # use actual ip address or fqdn 

Host * 
    ProxyJump jumphost 
+0

我不知道這個選項是從OpenSSH 7.3開始的。你能舉出任何示例劇本嗎?因爲這是好方法(如果netcat不可行) – kurgulus