使用paramiko的python SSHClient连接问题

2024-04-26 10:26:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有.ppk文件,我正在使用paramiko模块创建连接,但它返回错误

这是我的密码

import paramiko

hostname = 'sftp.xyz.eu' 
myuser   = 'myusername'
mySSHK   = 'file.ppk'
password = '9SMxT2rAsybsLWt'
sshcon   = paramiko.SSHClient()  # will create the object
sshcon.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # no known_hosts error
sshcon.connect(hostname, username = myuser, password = password, key_filename = mySSHK)
print(sshcon)

它把这个给我,请纠正我

sshcon.connect(hostname, username = myuser, password = password, key_filename = mySSHK)
  File "/home/test/Documents/xml_read_ftp/paramiko/client.py", line 446, in connect
    passphrase,
  File "/home/test/Documents/xml_read_ftp/paramiko/client.py", line 764, in _auth
    raise saved_exception
paramiko.ssh_exception.SSHException: No existing session

现在我已经将我的文件转换为带有puty的公钥

现在我得到了这个错误

self, server_hostkey_name, server_key
  File "/home/test/Documents/xml_read_ftp/paramiko/client.py", line 824, in missing_host_key

paramiko.ssh_exception.SSHException: Server 'sftp.xyz.xyz' not found in known_hosts

Tags: keyintestparamikohomeconnectpasswordxml
1条回答
网友
1楼 · 发布于 2024-04-26 10:26:12

据我所知,您试图使用PuTTY/Pageant密钥(file.ppk),而应该使用OpenSSH密钥:http://docs.paramiko.org/en/stable/api/client.html#paramiko.client.SSHClient.connect

尝试将密钥导出到OpenSSH密钥,然后使用OpenSSH密钥重试

编辑

另外,您正在connect中使用password参数,但最好使用passphrase参数,因为我想这是密钥密码

如果password是用户密码,请将其删除:您正在尝试使用密钥身份验证进行连接,不需要任何用户密码

相关问题 更多 >