我正在尝试将旧主机中收到的所有网络流量重定向到另一个新主机。为此,我在旧主机的 iptables 上创建了两个新规则:
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -d old_machine_ip -j DNAT --to-destination new_machine_IP
iptables -t nat -A POSTROUTING -s new_machine_ip -j SNAT --to-source old_machine_ip
/etc/init.d/iptables save
/etc/init.d/iptables restart
一切都运行正常,但是我无法再访问旧主机 ssh,因为它重定向到新主机,所以我想知道是否可以创建一个忽略 ssh 服务的预路由的单一规则。
此致,
答案1
只需插入一条规则,在 ssh 流量进入时离开链。这应该出现在您的 DNAT 规则之前。
iptables -t nat -A PREROUTING -m tcp -p tcp --dport 22 -j RETURN