我正在嘗試爲Ansible使用ASA模塊,並且我無法連接到設備。Ansible與思科ASA接入問題
「正常」手動ssh適用於「管理員」用戶使用ASA設備。
我不斷地得到這個錯誤Failed to connect to the host via ssh: Permission denied
望着-vvv
輸出,我可以看到在執行任務時ansible正在通過PasswordAuthentication=no
。
<192.168.1.64> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=admin -o ConnectTimeout=10 -o ControlPath=/root/.ansible/cp/896d0497f8 192.168.1.64 '/bin/sh -c '"'"'echo ~ && sleep 0'"'"''
但是我無法找到的地方,這是可以改變的模塊中。任何建議?
這是我的戲:
---
- hosts: 192.168.1.64
any_errors_fatal: True
gather_facts: no
remote_user: admin
vars:
cli:
host: asav_lab
username: admin
password: "{{asa_admin_password}}"
transport: cli
authorize: yes
auth_pass: "{{asa_admin_password}}"
tasks:
- asa_command:
commands:
- show version
provider: "{{ cli }}"
詳細輸出:
TASK [asa_command] *****************************************************************************************************************************************************************************************
task path: /var/lib/awx/projects/platforms-ansible/asa_test_play.yaml:41
Using module file /usr/lib/python2.7/dist-packages/ansible/modules/network/asa/asa_command.py
<192.168.1.64> ESTABLISH SSH CONNECTION FOR USER: admin
<192.168.1.64> SSH: EXEC ssh -C -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=admin -o ConnectTimeout=10 -o ControlPath=/root/.ansible/cp/896d0497f8 192.168.1.64 '/bin/sh -c '"'"'echo ~ && sleep 0'"'"''
<192.168.1.64> (255, '', 'ssh: connect to host 192.168.1.64 port 22: Connection refused\r\n')
fatal: [192.168.1.64]: UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh: ssh: connect to host 192.168.1.64 port 22: Connection refused\r\n",
"unreachable": true
}
'SSH:連接到主機192.168.1.64端口22:連接refused'指:SSH服務器不聽!改變另一個工具包似乎在這種情況下完全矯枉過正:-) –
我明白你爲什麼會這麼想,但OP在他的文章中聲明:「Normal」手動ssh對於「admin」用戶對ASA設備工作正常。該設備正在監聽,並且引發的異常是錯誤的,當使用Ansible時,繼續進行故障排除的麻煩更大,而這顯然不適合軟件的使用情況,而且,創建一個Python腳本來使用Paramiko進行網絡設備管理正好有8行代碼,我很難相信這是過分的。 – macattack2241
同意你的觀點(雖然大多數情況下在實際情況下,我們不能改變用戶現有的系統來修復它們)。 –