一切都将在一个孤立的网络上,安全不是一个问题。
eth0连接到“公共”网络。DHCP指定的地址。
eth1连接到一个“专用网络”服务器,该服务器提供ssh、telnet、“他方”和ftp。
在这个例子中,这个服务器将有一个固定的IP (192.168.1.2)。
网关正在运行debian buster和Linux内核4.19.94
nft与NAT一起使用。
到目前为止,这是我的“网关”nft配置:
table ip my_nat {
chain my_prerouting { type nat hook prerouting priority 0;
tcp dport { 2222 } dnat to :22 # 2222 backdoor for ssh to the gateway
tcp dport { 1-1023 } dnat to 192.168.1.2
}
chain my_postrouting {
type nat hook postrouting priority 100;
ip daddr 192.168.1.2 masquerade
}
}
我需要添加什么才能使FTP工作
发布于 2020-09-04 11:56:01
经过一些尝试和错误之后,我想出了下面的nftables.conf,它按照预期工作,在两个方向上都支持NAT,并将服务器上的所有端口导出到“公共”网络。端口2222仍然用作网关的“后门”,如果我需要再次访问它:-)
table ip my_nat {
ct helper ftp-incoming {
type "ftp" protocol tcp
l3proto ip
}
chain my_prerouting {
type nat hook prerouting priority 0; policy accept;
iifname "eth0" tcp dport { 2222 } dnat to :ssh
iifname "eth0" tcp dport { 1-2221, 2223-65535 } dnat to 192.168.0.2
}
chain my_postrouting {
type nat hook postrouting priority 100; policy accept;
ip daddr 192.168.0.2 masquerade
oifname "eth0" masquerade
}
chain my_helpers {
type filter hook prerouting priority 10; policy accept;
iif "eth0" ip daddr 192.168.0.2 tcp dport ftp ct helper set "ftp-incoming"
}
}
https://serverfault.com/questions/1030547
复制相似问题