iptables简单策略

发布时间 2023-06-14 15:04:19作者: liuxiaobei556

允许IP_ADRRESS访问 9200-9400

iptables -I INPUT 1 -p tcp --dport 9200:9400 -s IP_ADRRESS_1,IP_ADRRESS_2,IP_ADRRESS_3 -j ACCEPT

禁止访问 9200-9400端口

iptables -A INPUT -p tcp --dport 9200:9400 -j REJECT

保存iptables规则

iptables-save > /etc/sysconfig/iptables.ts

开机加载iptables规则

echo '/sbin/iptables-restore /etc/sysconfig/iptables.ts' >> /etc/rc.d/rc.local

添加执行权限

chmod -x /etc/rc.d/rc.local

查看规则显示行数

iptables -L -n --line-numbers

# https://docs.docker.com/network/iptables/
#Docker与iptables (在DOCKER-USER链中处理)
#Docker至少会在iptables规则中自动安装两个新链,一个是DOCKER,一个是DOCKER-USER,可以通过如下方式查看
#iptables -S -t nat 查看DOCKER链规则
#iptables -S 查看DOCKER-USER链规则
#随着docker版本不同,可能还会有其他链,但一般来说,我们应该只修改DOCKER-USER链即可。
#如果想要对docker端口做访问限制,可以参考如下规则:

只允许192.168.1.1访问docker的服务,其中eth0是你机器上的实际网卡名

iptables -I DOCKER-USER -i eth0 ! -s 192.168.1.1 -j DROP

只允许网段192.168.1.0/24

iptables -I DOCKER-USER -i eth0 ! -s 192.168.1.0/24 -j DROP

只允许ip范围

iptables -I DOCKER-USER -m iprange -i eth0 ! --src-range 192.168.1.1-192.168.1.3 -j DROP

以下组合可以达到允许172.24.51.196-172.24.51.209 172.24.51.212,172.24.51.213,172.24.51.214访问docker服务

iptables -I DOCKER-USER -m iprange -i eth0 ! --src-range 172.24.51.196-172.24.51.209 -j DROP
iptables -I DOCKER-USER -i eth0 -s 172.24.51.212,172.24.51.213,172.24.51.214 -j ACCEPT

以下容器

echo '/usr/sbin/iptables -I DOCKER-USER -m iprange -i eth0 ! --src-range 172.24.51.196-172.24.51.209 -j DROP' >> /etc/rc.d/rc.local
echo '/usr/sbin/iptables -I DOCKER-USER -i eth0 -s 172.24.51.212,172.24.51.213,172.24.51.214 -j ACCEPT' >> /etc/rc.d/rc.local

只允许172.24.51.212,172.24.51.213,172.24.51.214访问30092,30093

iptables -I INPUT 1 -p tcp -m multiport --dport 30092,30093 -s 172.24.51.196,172.24.51.197,172.24.51.198,172.24.51.199,172.24.51.200,172.24.51.201,172.24.51.202,172.24.51.203,172.24.51.204,172.24.51.205,172.24.51.206,172.24.51.207,172.24.51.208,172.24.51.209,172.24.51.212,172.24.51.213,172.24.51.214 -j ACCEPT
iptables -A INPUT -p tcp -m multiport --dport 30092,30093 -j REJECT