当我更改 ssh 端口时,SFTP 无法访问但 SSH 工作正常?

当我更改 ssh 端口时,SFTP 无法访问但 SSH 工作正常?

我正在使用iptables防火墙httpdwhitelistCloudFlare

这是我的规则iptables,我已经将 SSH 端口更改为2204

Chain INPUT (policy DROP)
target     prot opt source               destination         
ACCEPT     tcp  --  199.27.128.0/21      anywhere            multiport dports http,https 
ACCEPT     tcp  --  198.41.128.0/17      anywhere            multiport dports http,https 
ACCEPT     tcp  --  197.234.240.0/22     anywhere            multiport dports http,https 
ACCEPT     tcp  --  190.93.240.0/20      anywhere            multiport dports http,https 
ACCEPT     tcp  --  188.114.96.0/20      anywhere            multiport dports http,https 
ACCEPT     tcp  --  173.245.48.0/20      anywhere            multiport dports http,https 
ACCEPT     tcp  --  172.64.0.0/13        anywhere            multiport dports http,https 
ACCEPT     tcp  --  162.158.0.0/15       anywhere            multiport dports http,https 
ACCEPT     tcp  --  141.101.64.0/18      anywhere            multiport dports http,https 
ACCEPT     tcp  --  131.0.72.0/22        anywhere            multiport dports http,https 
ACCEPT     tcp  --  108.162.192.0/18     anywhere            multiport dports http,https 
ACCEPT     tcp  --  104.16.0.0/12        anywhere            multiport dports http,https 
ACCEPT     tcp  --  103.31.4.0/22        anywhere            multiport dports http,https 
ACCEPT     tcp  --  103.22.200.0/22      anywhere            multiport dports http,https 
ACCEPT     tcp  --  103.21.244.0/22      anywhere            multiport dports http,https 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh 
ACCEPT     tcp  --  116.2.22.0/24        anywhere            tcp dpt:b2-license 

之后,我可以正常访问 SSH,但不能访问 SFTP。看起来我的新 SSH 端口与b2-license端口相同。

这是我面临的问题?

这是我从 FileZilla 收到的错误

Status: Waiting to retry...
Status: Connecting to xx.xx.xx.xx:2204...
Response:   fzSftp started, protocol_version=4
Command:    open "[email protected]" 2204
Error:  Connection timed out after 20 seconds of inactivity
Error:  Could not connect to server

并登录成功ssh

Last login: Sun Jul 31 14:07:34 2016 from my-ip

更新:我可以通过 Tunilier 连接到 sftp,但无法通过 FileZilla 连接

如果您对此有任何想法,我将非常感激。

答案1

您运行的 filezilla 客户端可能不支持与您的服务器所需的相同加密算法。

您是否尝试过更新您的 filezilla 客户端?您是否尝试过其他 sftp 客户端?

另外,该文件是否/usr/libexec/openssh/sftp-server存在且具有 +x 权限?

最后,您可以尝试以非守护进程模式运行 sshd 并使用调试选项(停止 sshd 服务,然后运行/usr/sbin/sshd -Dd并使用您的 sftp 客户端重试)。

答案2

您似乎正尝试从不允许的 IP 地址连接到您的 sftp 服务器。您仅允许网络中的地址116.2.22.0/24

接受 tcp -- 116.2.22.0/24 任何地方 tcp dpt:b2-license

您是否尝试过连接到 2204 端口上的 ssh

ssh -p 2204 [email protected]

我怀疑你会遇到同样的超时情况。

答案3

当您使用 sftp 时,sshd 服务器进程会启动一个辅助应用程序(您应该在 sshd_config 中看到对此的引用)。我想知道是否有一些高级安全组件(例如 SELinux)不允许它在该端口上工作。

您正在使用哪个操作系统发行版/版本?

如果使用基于 RHEL 的发行版,会sestatus报告什么?

答案4

我一直有这个问题,直到我看到 ssh 使用 -p 参数作为端口,而 sftp 使用 -P(大写)。当选项的大小写错误时,两者都会莫名其妙地出错。由于它在一个客户端上工作,所以一定是这样的配置问题。

相关内容