Paramiko 未知服务器异常:已解决
在使用 Paramiko 库时,用户可能会遇到“未知服务器”异常,从而阻止连接尝试。当尝试连接到系统或本地 HostKeys 对象中未记录主机密钥的服务器时,会出现此问题。
解决方案:
要解决此异常,您需要设置连接到未知服务器时使用的策略。默认情况下,Paramiko 拒绝所有未知服务器,但您可以使用 AutoAddPolicy 覆盖此行为。
这里是一个修改后的 Python 代码片段,添加了 AutoAddPolicy 解决方案:
import paramiko client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect('127.0.0.1', username=username, password=password) stdin, stdout, stderr = client.exec_command('ls -l')
通过设置 AutoAddPolicy ,Paramiko 会自动将未知服务器的主机密钥添加到其主机密钥缓存中,从而允许将来的连接无需
附加选项:
ssh.get_host_keys().save('/some/file/path')
ssh.load_host_keys('/some/file/path')
使用这些技术,即使在处理没有注册主机的服务器时,您也可以与 Paramiko 建立安全的 SSH 连接钥匙。
以上是如何解决Paramiko的'未知服务器”异常?的详细内容。更多信息请关注PHP中文网其他相关文章!