3.1 问题
本案例要求熟悉使用iptables的扩展规则,实现更丰富的过滤功能,完成以下任务:
根据MAC地址封锁主机
在一条规则中开放多个TCP服务
根据IP范围设置封锁规则
3.2 方案
iptables在基本过滤条件的基础上还扩展了很多其他条件,在使用时需要使用-m参数来启动这些扩展功能,语法如下:
iptables 选项 链名称 -m 扩展模块 --具体扩展条件 -j 动作
3.3 步骤
实现此案例需要按照如下步骤进行。
步骤一:根据MAC地址过滤
1)根据IP过滤的规则,当对方修改IP后,防火墙会失效
[root@proxy ~]# iptables -F
[root@proxy ~]# iptables -I INPUT -s 192.168.4.100 -p tcp --dport 22 -j DROP
//设置规则禁止192.168.4.100使用ssh远程本机
但是,当client主机修改IP地址后,该规则就会失效,注意因为修改了IP,对client主机的远程连接会断开,需要使用virt-manager开启虚拟机操作:
[root@client ~]# ifconfig eth0 192.168.4.101
[root@client ~]# ssh 192.168.4.5 //依然成功
根据MAC地址过滤,可以防止这种情况的发生
[root@client ~]# ip link show eth0 //查看client的MAC地址
eth0: <B