![如何将 nftables 与被动 FTP 一起使用?](https://linux22.com/image/735093/%E5%A6%82%E4%BD%95%E5%B0%86%20nftables%20%E4%B8%8E%E8%A2%AB%E5%8A%A8%20FTP%20%E4%B8%80%E8%B5%B7%E4%BD%BF%E7%94%A8%EF%BC%9F.png)
以下是允许不起作用的被动 FTP 的规则。
/proc/sys/net/netfilter/nf_conntrack_helper 设置为 1
nf_conntrack_ftp模块已加载。
是什么阻碍了它?我真的需要计数器吗?如果我已经使用 ct state established,related accept 行允许已建立的相关连接,我真的需要 tcp dport 1024-65535 行吗?
table inet myhelpers {
ct helper ftp-standard {
type "ftp" protocol tcp
}
chain input {
type filter hook prerouting priority 0;
tcp dport 21 ct helper set "ftp-standard"
}
}
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
ct state established,related accept
# passive FTP
tcp dport 21 ct state established,new counter accept
tcp dport 20 ct state established,related counter accept
tcp dport 1024-65535 ct state established,related counter accept
}
}
答案1
谢谢你的回答,AB 你说得对。还有一件事。我正在使用 TLS 测试 FTP,在 TLS 中,控制连接是加密的,因此防火墙无法知道服务器提供的被动端口是什么。我必须指定这一点。一旦我这样做了,它就开始工作了。