我一直试图让这个工作,但不断得到相同的错误。我已经尝试了主机的fqdn和ip。我试图通过它凭证和没有。我查看了错误消息中指示的行。谷歌搜索,但想不通这是为什么不工作:SSH - 与paramiko问题的Python
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('host', username='loginname')
stdin, stdout, stderr = ssh.exec_command("pwd")
stdout.readlines()
错误:
Traceback (most recent call last):
File "audit.py", line 7, in <module>
ssh.connect('host', username='loginname')
File "/usr/lib/python2.6/site-packages/paramiko/client.py", line 338, in connect
self._auth(username, password, pkey, key_filenames, allow_agent, look_for_keys)
File "/usr/lib/python2.6/site-packages/paramiko/client.py", line 520, in _auth
raise SSHException('No authentication methods available')
- 我能够通过ssh没有问题连接到主机。
- SSH版本:OpenSSH_5.3p1,OpenSSL的1.0.0-FIPS 2010年03月29
- 要注意:我试图创建多个远程服务器上运行的一系列命令的方式。我使用
sys import argv
来运行诸如python audit.py host1 host2 host3
这样的脚本,然后该脚本将通过针对这些特定主机的审计。我已经创建了一个完成这个的bash脚本,但是我想通过Python来实现它。
难道这是由于缺少'password'关键字? – Tshepang