我在 RHEL 8 上运行 Python 3.6.8
我正在尝试使用此 #!/usr/bin/env python 连接到另一台服务器上的 sftp
import pysftp
myHostname = I.I.I.I
myport = PPPP
myUsername = xxx
myPassword = xxx
cnopts = pysftp.CnOpts(knownhosts='/home/xxx/.ssh/known_hosts')
with pysftp.Connection(host=myHostname, port=myport, username=myUsername, password=myPassword, cnopts=cnopts) as sftp:
我收到此错误:
Exception has occurred: SSHException
No hostkey for host I.I.I.I found.
File "/home/xxxx/python/xxxxy", line 16, in <module>
with pysftp.Connection(host=myHostname, port=myport, username=myUsername,
password=myPassword, cnopts=cnopts) as sftp:
但是当我查询 cnopts.hostkeys 我发现服务器列出
[I.I.I.I]:PPPP
在 cnopts 中找到的 IP 地址与 SFTP 命令中的 IP 地址相同
如果我将此行插入到我的脚本中:
cnopts.hostkeys = None
我可以很好地连接到远端
这表明连接和身份验证工作正常。
有什么建议么?