Jer*_*oen 5 linux ubuntu firewall ip iptables
我想使用 iptables 将所有传入流量从某个端口转发到另一个端口。问题是预路由不适用于来自本地主机的流量。本主题提出了一个解决方案:
iptables -t nat -I PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 8080
iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport 443 -j REDIRECT --to-ports 8080
Run Code Online (Sandbox Code Playgroud)
该解决方案适用于大多数情况。但是,当我连接到http://myserver:443(其中 myserver 解析为本地计算机上托管的 IP 地址,但不是 127.0.0.1)时,它似乎绕过了这两个规则。
有没有办法也捕获从本地计算机发送到 eth0 IP 地址的转发请求?
您可以执行以下操作,而不是执行-d 127.0.0.1OUTPUT 规则-o lo。这将匹配通过环回接口的任何流量,无论目的地是什么。
顺便说一句,即使您发送到“ http://myserver:443 ”,流量仍然是本地的,因此它仍然通过环回接口,即使它没有解析为“127.0.0.1”。
| 归档时间: |
|
| 查看次数: |
4401 次 |
| 最近记录: |