ProFTPD - 使用 TLS 时无法检索目录列表

ProFTPD - 使用 TLS 时无法检索目录列表

我的 ProFTPD 服务器有问题。

当我尝试使用 TLS 连接到服务器时,MLSD 命令后出现超时。这种情况仅在我使用 TLS 时发生 - 不使用 TLS 时也可以正常工作。

我检查了这些日志:

proftpd.log-用户 xxx:登录成功。

tls.log-TLSv1/SSLv3 连接已接受...保护设置为私有

请问问题可能出在哪里?我可以提供更多信息,只需在评论中询问即可。

编辑:今天我尝试将 iptables 的 INPUT 策略设置为 ALLOW ... 一切正常... 所以问题出在防火墙上。我应该如何设置 iptables 以与 FTPS 配合使用?

这是我的 iptables 设置:

*filter
:INPUT DROP [930:61159]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [256:26448]
-A INPUT ! -i eth0 -j ACCEPT
-A INPUT -p tcp -m tcp --tcp-flags ACK ACK -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A INPUT -p tcp -m tcp -m multiport --dports 80,443,20,21,25,143,993,110,995,1194 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
COMMIT

答案1

问题是,conntrack_ftp 模块允许 ftp 数据连接即时通过防火墙,即使它们因规则而被丢弃,也无法分析PASV/PORT命令的加密流。这同样适用于无法在具有加密控制连接的防火墙/nat 后面使用主动模式。

因此,您需要为被动模式设置静态端口(或者如果客户端不在防火墙/nat 后面,则使用主动模式)并添加防火墙规则以接受这些端口上的传入连接。

被动模式的端口通过被动端口指示。

编辑:我应该补充一点,PassivePorts 的数量不仅限制了并行连接的数量,还限制了每秒的连接数(读取目录列表和/或文件传输)net.netfilter.nf_conntrack_tcp_timeout_time_wait。因此,如果您要传输大量小文件,请打开大量端口!

相关内容