提问人:felix 提问时间:9/17/2023 更新时间:9/17/2023 访问量:18
转发时更改端口号
Change port number while forwarding
问:
在较大的防火墙中,以下两行允许我从 Internet 连接到在 LAN 主机 172.27.255.4 上运行并侦听端口 1046 和 22 的 SSH 服务器:
iptables -t nat -A PREROUTING -i ppp0 -p tcp -d aaa.bbb.ccc.ddd --dport 1046 -j DNAT --to-destination 172.27.255.4:1046
iptables -t filter -A FORWARD -p tcp -i ppp0 -d 172.27.255.4 --dport 1046 -j ACCEPT
地址 aaa.bbb.ccc.ddd 是防火墙的 IPV4 公共地址。使用端口 1046 连接到 SSH 服务器,这工作正常。
我现在要做的是阻止 SSH 服务器侦听端口 1046,但在从 Internet 连接时仍使用端口 1046。只需将上述代码的第一行从
iptables -t nat -A PREROUTING -i ppp0 -p tcp -d aaa.bbb.ccc.ddd --dport 1046 -j DNAT --to-destination 172.27.255.4:1046
自
iptables -t nat -A PREROUTING -i ppp0 -p tcp -d aaa.bbb.ccc.ddd --dport 1046 -j DNAT --to-destination 172.27.255.4:22
剂量不起作用。
我在这里错过了什么?
答:
0赞
felix
9/17/2023
#1
这样可以完成以下工作:
iptables -t nat -A PREROUTING -d aaa.bbb.ccc.ddd -p tcp --dport 1046 -j DNAT --to-destination 172.27.255.4:22
iptables -t filter -A FORWARD -p tcp -d 172.27.255.4 --dport 22 -j ACCEPT
第一条规则在路由数据包之前更改数据包目标。第二条规则路由(在本例中为转发)具有新的所需目的地的数据包。
评论