Python 使用Paramiko在主机密钥更改时自动更新已知的_主机文件
目前,我正在使用Paramiko(Python)在节点上执行远程命令。有时,远程节点会更改其公钥,因此,由于指纹不匹配,Paramiko会失败。有没有办法在Python 使用Paramiko在主机密钥更改时自动更新已知的_主机文件,python,ssh,key,paramiko,ssh-keys,Python,Ssh,Key,Paramiko,Ssh Keys,目前,我正在使用Paramiko(Python)在节点上执行远程命令。有时,远程节点会更改其公钥,因此,由于指纹不匹配,Paramiko会失败。有没有办法在已知\u主机文件中的密钥发生更改时进行更新?如果不可能,是否有其他方法可以忽略抛出的警告 目前,我有一个黑客解决方案,在进行不好的呼叫之前删除已知的\u主机文件。当主机密钥更改时抛出BadHostKeyException,因为这是连接被劫持的标志(aka) 你永远不应该盲目忽视这个例外。除非可能,如果您连接到与客户端位于同一个专用网络中的服务
已知\u主机
文件中的密钥发生更改时进行更新?如果不可能,是否有其他方法可以忽略抛出的警告
目前,我有一个黑客解决方案,在进行不好的呼叫之前删除
已知的\u主机
文件。当主机密钥更改时抛出BadHostKeyException
,因为这是连接被劫持的标志(aka)
你永远不应该盲目忽视这个例外。除非可能,如果您连接到与客户端位于同一个专用网络中的服务器
在您的特定情况下,更好的策略是在服务器重新安装期间保留主机密钥
无论如何,如果您真的不关心安全性,并且愿意盲目接受任何主机密钥:
- 不要打电话,这样你就可以从知道主机密钥的空白列表开始李>
- 并使用,自动接受新主机的主机密钥(由于上一点,所有主机都是新的):
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())