iptables中的PREROUTING NAT表中的DROP或REJECT数据包

时间:2018-08-31 09:24:18

标签: networking iptables nat

目标是仅允许特定网络访问在我的服务器上运行的docker容器服务/端口。

  1. 试图将ACCEPT规则添加到INPUT过滤器链中。这没有帮助,即使没有ACCEPT规则的网络仍然能够访问docker服务/端口。

  2. 尝试在FORWARD链中添加ACCEPT和DROP规则,这可行。但这有很多缺点,例如: 一种。规则在Docker重新启动时被删除或重新定位 b。如果重新部署Docker容器并在运行时获得不同的IP,则规则可能无效。

  3. 计划在到达FORWARD链之前将其封锁。

  4. 因此,在NAT表中添加了一个新链,如果流量来自允许的网络,则重定向到DOCKER链;如果来自其他网络,则将DNAT添加到BLOCKHOLE IP。在PREROUTING中,第一个规则是跳到该链。这似乎很有效。

    DNAT tcp-0.0.0.0/0 0.0.0.0/0 tcp dpt:1234至:0.0.0.1

但是,除了将其重定向到BLOCKHOLE之外,我们还可以以某种方式拒绝此流量,以便客户端知道它是不允许的,因此被拒绝了。

0 个答案:

没有答案