![检查 sftp 连接](https://linux22.com/image/563683/%E6%A3%80%E6%9F%A5%20sftp%20%E8%BF%9E%E6%8E%A5.png)
我可以使用以下命令连接到远程服务器...
sftp [email protected]
但这在服务器 A 上有效,而如果我在服务器 B 上使用相同的命令,它却不起作用。
1)远程服务器主机需要做哪些更改才能使服务器 B 也能够连接?
2)如果在服务器B上启用了该服务,如何检查服务器A和服务器B之间的区别?
从两个服务器都无法 ping 远程服务器 IP,而且这也是不必要的。
答案1
实用解决方案
通过执行端口扫描来验证该 IP 上是否提供 SSH 服务。如果你不熟悉端口扫描器,只需从以下网址下载带有前端的 Nmap 包:http://nmap.org/download.html并执行标准扫描。
如果服务没有启动,您需要与负责管理该服务器的 IT 人员联系。
很可能 SSH 正在运行,但不在默认端口上。端口扫描应该会显示当前正在监听的端口。
另一种可能是服务器 B 上的 SSH 守护程序限制只有证书用户才能登录。在这种情况下,您需要一个公钥/私钥 SSH 密钥对。
您可以按照本教程创建一个: http://jaybyjayfresh.com/2009/02/04/logging-in-without-a-password-certificates-ssh/
一旦您拥有密钥对,您就可以联系 IT 部门,告诉他们将您的公钥添加到服务器 B 授权证书中。
如何联系 IT
如果这样找不到 SSH 监听端口,可以通过这种方式向 IT 人员提出请求
“我需要能够通过 SFTP 将文件传输到服务器 B。如果没有,您能否启动 SSH 服务并告诉我监听端口?如果设置了白名单,请将我的服务器添加到白名单中
如果服务器 B 使用证书认证方案,请将我的公钥添加到您的授权密钥列表中(附加到电子邮件中)。“
服务器 B 可能有一个允许连接到 SSH 守护进程的 IP 列表,请求的“白名单”部分应该会处理这个问题。
如果您没有集中式身份验证后端,请询问用户/密码。
答案2
由于您不是远程服务器 B 的管理员,因此您能做的很少。此时,您最好的做法是联系服务器 B 的管理员,告诉他们发生了什么,并与他们一起解决您的问题。
答案3
听起来像是防火墙问题。在这种情况下,您需要请求防火墙更改以从您的 IP 开放为 255.136.181.123 端口 22 协议 TCP。
尝试运行 sftp -v[电子邮件保护] 看看你是否能获得更多信息。
答案4
我认为这与 sftp 无关。
它与网络连接有关。
您在 255.136.181.123 上有防火墙吗?