使用 Paramiko 连接到端口 21 并得到 paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
Connecting to port 21 with Paramiko and got paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
我正在尝试通过 Paramiko 连接到 SFTP 服务器。我没有主机密钥。以下代码是我的尝试,它给我一个错误:
paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
我注意到在其他给出的例子中端口通常是 22,但是我得到的 SFTP 端口是 21。当我尝试 22 时,它给了我另一个错误提示
Unable to connect to port 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()
Paramiko 是 SFTP 客户。 SFTP 使用端口 22.
如果给你端口 21,那么它很可能不是 SFTP。 FTP 使用端口 21。 FTP 的加密变体,也称为 FTPS,也使用 21。人们有时会把它误认为是 SFTP.
对于 FTP 使用来自 ftplib 的 FTP
class 来自 ftplib. For FTPS use FTP_TLS
class。
我正在尝试通过 Paramiko 连接到 SFTP 服务器。我没有主机密钥。以下代码是我的尝试,它给我一个错误:
paramiko.ssh_exception.SSHException: Error reading SSH protocol banner
我注意到在其他给出的例子中端口通常是 22,但是我得到的 SFTP 端口是 21。当我尝试 22 时,它给了我另一个错误提示
Unable to connect to port 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()
Paramiko 是 SFTP 客户。 SFTP 使用端口 22.
如果给你端口 21,那么它很可能不是 SFTP。 FTP 使用端口 21。 FTP 的加密变体,也称为 FTPS,也使用 21。人们有时会把它误认为是 SFTP.
对于 FTP 使用来自 ftplib 的 FTP
class 来自 ftplib. For FTPS use FTP_TLS
class。