iptables限制docker对外端口
docker会在iptables上加上自己的转发规则,如果直接在input链上限制端口是没有效果的。如果需要限制对外的端口,那么直接限制docker的转发链上的DOCKER表就能达到期望。参考如下:
# 查询DOCKER表并显示规则编号
iptables -n --line-numbers -vL DOCKER
比如输出如下信息:
Chain DOCKER (2 references)
num | pkts | bytes | target | prot | opt | in | out | source | destination |
1 | 0 | 151K | ACCEPT | tcp | -- | !br-1e4c8b959999 | br-1e4c8b959999 | 0.0.0.0/0 | 172.19.0.2 tcp dpt:2083 |
2 | 0 | 0 | ACCEPT | tcp | -- | !br-1e4c8b959999 | br-1e4c8b959999 | 0.0.0.0/0 | 172.19.0.2 tcp dpt:80 |
# 修改对应编号的iptables规则
# 这里修改编号1的规则仅限本机允许访问2083端口
iptables -R DOCKER 1 \
-p tcp -m tcp ! -i br-1e4c8b959999 -o br-1e4c8b959999 \
-s 127.0.0.1 --dport 2083 \
-j ACCEPT -d 172.19.0.2
## -p : port
## -m : 添加拓展模块
## -i : in 若带惊叹号时,惊叹号放置于-i参数之前,如 [! -i xxx]
## -o : out
## -s : 限制来源地址
## --dport : 来源地址端口
## -d : destination
阅读剩余
版权声明:
作者:觉
链接:https://cimen.club/235.html
文章版权归作者所有,未经允许请勿转载。
THE END