Python Paramiko-SSH服务器不兼容(没有可接受的MAC)
我使用paramiko已经有一段时间了,一切都按照预期进行,但是当我离开测试环境时,在打开ssh会话时出现了这个错误Python Paramiko-SSH服务器不兼容(没有可接受的MAC),python,ssh,paramiko,Python,Ssh,Paramiko,我使用paramiko已经有一段时间了,一切都按照预期进行,但是当我离开测试环境时,在打开ssh会话时出现了这个错误 paramiko.ssh_exception.SSHException: Incompatible ssh server (no acceptable macs) 跟踪错误后,我注意到在我的远程服务器上,我的/etc/ssh/sshd\u config文件中缺少一些条目。我的两种设置均未列出以下Mac: HMAC-SHA1 HMAC-MD5 HMAC-SHA1-96 HMAC
paramiko.ssh_exception.SSHException: Incompatible ssh server (no acceptable macs)
跟踪错误后,我注意到在我的远程服务器上,我的/etc/ssh/sshd\u config
文件中缺少一些条目。我的两种设置均未列出以下Mac:
- HMAC-SHA1
- HMAC-MD5
- HMAC-SHA1-96
- HMAC-MD5-96
sshd\u配置
#
# Allow Ciphers and MACs
#
Ciphers aes256-ctr,aes192-ctr,aes128-ctr,arcfour256,arcfour128
MACs umac-64@openssh.com,hmac-ripemd160,hmac-sha2-512,hmac-sha2-256
RemoteAccess.py
class RemoteAccess():
def __init__(self, host="abc123", username="abc", password="123"):
self.name = host
self.client = paramiko.SSHClient()
self.client.load_system_host_keys()
self.client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
self.client.connect(host, username=username, password=password)
我引用的链接:
出于某种原因,paramiko1.15.1会抱怨Mac不兼容。paramiko1.16.0没有。这是通过将1.16.0文件复制到其安装位置修复的
/usr/lib/python2.7/site-packages/paramiko
paramiko版本的变更记录可在以下位置找到:
问题是?哪一个是您的paramiko版本?问题是“即使使用相同的sshd#u配置文件,是什么导致了此错误消息?”工作设置为paramiko 1.16.0,而非工作设置为paramiko 1.15.1是的,原因是
hmac-sha2-*
支持是在1.16中添加的(请参阅上面链接中的功能356)