【发布时间】:2022-01-25 01:25:16
【问题描述】:
使用 Pysftp 库 sftp 到服务器,我在尝试连接时收到身份验证失败。
但是在 filezilla 中使用相同的凭据我可以连接。
from pysftp import CnOpts, Connection
from paramiko import RSAKey
import io
private_key_text = '''
-----BEGIN OPENSSH PRIVATE KEY-----
key removed...
-----END OPENSSH PRIVATE KEY-----
'''
passphrase = 'my_passphrase'
private_key = RSAKey.from_private_key(io.StringIO(private_key_text), password=passphrase)
host = 'host_address'
username = 'username'
cnopts = CnOpts()
target_dir = '/home'
cnopts.hostkeys = None
with Connection(host=host, username=username, private_key=private_key, private_key_pass=passphrase,
cnopts=cnopts, default_path=target_dir) as sftp:
print(f'Successfully connected to remote SFTP server [{host}]')
【问题讨论】: