使用Paramiko连接到端口21并得到paramiko.ssh_exception.SSHException:读取SSH协议横幅时出错

问题描述 投票:0回答:1

我正在尝试通过 Paramiko 连接到 SFTP 服务器。我没有主机密钥。以下代码是我的尝试,它给了我一个错误:

paramiko.ssh_exception.SSHException:读取 SSH 协议横幅时出错

我注意到在其他给定示例中端口通常为 22,但给我的 SFTP 端口是 21。当我尝试 22 时,它给了我另一个错误:

无法连接到端口 22

提前感谢您的指导和见解。如果我可以提供更多信息,请告诉我。

from paramiko.client import SSHClient
from paramiko import AutoAddPolicy

client = SSHClient()
client.set_missing_host_key_policy(AutoAddPolicy())

client.connect(hostname="a_private_ip",
               port=21,
               username="user",
               password="xxx")

sftp_handle = client.open_sftp()
python ssh sftp paramiko
1个回答
1
投票

Paramiko 是一个 SFTP 客户端。 SFTP 使用端口 22。

如果您获得端口 21,那么它很可能不是 SFTP。端口 21 用于 FTP。 FTP 的加密变体,也称为 FTPS,也使用 21。人们有时会误认为它是 SFTP。

对于 FTP,请使用

ftplib
中的 FTP 类。对于 FTPS,请使用 ftplib 中的
FTP_TLS

© www.soinside.com 2019 - 2024. All rights reserved.