Iptables防火墙iprange模块扩展匹配规则

784 阅读1分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第10天,点击查看活动详情

Iptables防火墙iprange模块扩展匹配规则

iprange模块可以同时设置多个IP或者设置IP的某一段连续的范围,通过iprange模块可以对多个来源地址同时设置策略。

iprange模块的参数:

  • --src-range:指定源地址范围。
  • --dst-range:指定目标地址范围。
  • ! --src-range:非指定的源地址。
  • ! --dst-range:非指定的目标地址。

可以在参数前面加!号表示去反。

案例:源地址范围为192.168.20.10-192.168.20.19的IP地址都不允许ping192.168.20.20这个目标地址。

1)编写防火墙规则

在INPUT链的filter表中添加对应的规则。

1.无需指定目标地址
[root@jxl-1 ~]# iptables -t filter -I INPUT -p icmp -m iprange --src-range 192.168.20.10-192.168.20.19 -j DROP

2.也可以指定目标地址,效果都一样
[root@jxl-1 ~]# iptables -t filter -I INPUT -p icmp -m iprange --src-range 192.168.20.10-192.168.20.19 --dst-range 192.168.20.20 -j DROP

2)查看添加的规则

禁止192.168.20.10-192.168.20.19的源地址请求的ICMP协议数据报文进入本机。

[root@jxl-1 ~]# iptables -L -n -v --line-number
Chain INPUT (policy ACCEPT 2033 packets, 2002K bytes)
num   pkts bytes target     prot opt in     out     source               destination         
1        0     0 DROP       icmp --  *      *       0.0.0.0/0            0.0.0.0/0            source IP range 192.168.20.10-192.168.20.19

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 2072 packets, 3079K bytes)
num   pkts bytes target     prot opt in     out     source               destination         

3)测试效果

登陆192.168.20.10这个服务器中ping192.168.20.20,发现ping不通,登陆192.168.20.21这个服务器,发现能ping通192.168.20.20。

在这里插入图片描述