2016-09-12 65 views
0

我的Ansible playbook使用代理連接到遠程節點。Ansible給予ssh_exchange_identification錯誤

當Ansible遊戲手冊運行時;它在執行ssh步驟時給出以下錯誤。

[[email protected] ANSIBLE]# ansible-playbook fend_file.yaml -i env/target -vvvvv 

PLAY [LAB1] ******************************************************************* 

GATHERING FACTS *************************************************************** 
<10.169.99.222> ESTABLISH CONNECTION FOR USER: msdp 
<10.169.99.222> REMOTE_MODULE setup 
<10.169.99.222> EXEC sshpass -d9 ssh -C -tt -vvv -o ProxyCommand="nc -x 142.133.134.161:1088 %h %p" -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PubkeyAuthentication=no -o User=msdp -o ConnectTimeout=10 10.169.99.222 /bin/sh -c 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1473708903.98-28407509853006 && echo $HOME/.ansible/tmp/ansible-tmp-1473708903.98-28407509853006' 
fatal: [10.169.99.222] => SSH Error: ssh_exchange_identification: Connection closed by remote host 
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue. 

但是當我自己運行ssh命令時,我能夠成功連接。

[[email protected] ANSIBLE]# ssh -C -tt -o ProxyCommand="nc -x 142.133.134.161:1088 %h %p" -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PubkeyAuthentication=no -o User=root -o ConnectTimeout=10 10.169.99.222 
[email protected]'s password: 
Last login: Mon Sep 12 12:28:19 2016 from 10.169.102.6 
[email protected] ~ # 

我是否需要清除任何有效的文件?

+0

檢查你的ssh權限上10.169.99.222的用戶 「MSDP」 –

回答

0

當您手動運行SSH命令時,您指定的是root用戶。您的Ansible手冊正在使用您的本地用戶msdp。嘗試在您的庫存文件中設置ansible_user變量。也許是這樣的:

10.169.99.22 ansible_user=root