RHEL 7系统中,firewalld防火墙取代了iptables防火墙。其实,iptables与firewalld都不是真正的防火墙,

它们只是一种服务。iptables服务会把配置好的防火墙策略交由内核层面的netfilter网络过滤器来处理,而firewalld服务则是把配置好的防火墙策略交由内核层面的nftables包过滤框架来处理。

防火墙会从上至下的顺序来读取配置的策略规则,在找到匹配项后就立即结束匹配工作并去执行匹配项中定义的行为(即放行或阻止)。如果在读取完所有的策略规则之后没有匹配项,就去执行默认的策略。一般而言,防火墙策略规则的设置有两种:一种是“通”(即放行),一种是“堵”(即阻止)。当防火墙的默认策略为拒绝时(堵),就要设置允许规则(通),否则谁都进不来;如果防火墙的默认策略为允许时,就要设置拒绝规则,否则谁都能进来,防火墙也就失去了防范的作用。

iptables命令可以根据流量的源地址、目的地址、传输协议、服务类型等信息进行匹配,一旦匹配成功,iptables就会根据策略规则所预设的动作来处理这些流量。防火墙策略规则的匹配顺序是从上至下的,一旦遇到符合要求的规则就结束,因此要把较为严格、优先级较高的策略规则放到前面。

 

参数

作用

-P

设置默认策略

-F

清空规则链

-L

查看规则链

-A

在规则链的末尾加入新规则

-I num

在规则链的头部加入新规则

-D num

删除某一条规则

-s

匹配来源地址IP/MASK,加叹号“!”表示除这个IP外

-d

匹配目标地址

-i 网卡名称

匹配从这块网卡流入的数据

-o 网卡名称

匹配从这块网卡流出的数据

-p

匹配协议,如TCP、UDP、ICMP

--dport num

匹配目标端口号

--sport num

匹配来源端口号

 1、安装iptables-services,7.6版本安装完才可使用service iptables save:

yum install iptables-services

2、查看iptables默认表:

iptables -L -n

3、iptables 默认内链(filter)表三种:

ptables服务把用于处理或过滤流量的策略条目称之为规则,多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类:

INPUT:处理进入防火墙的数据包

FORWARD:源自其他计算机,不接受到防火墙,而是转发(路由)

OUTPUT:处理防火墙发出的数据包

4.添加规则,拒绝icmp协议数据包

iptables -A INPUT -p icmp -j DROP  //-A [策略] -p [协议]  -j   [动作](DROP丢弃、ACCEPT允许、REJECT拒绝)

iptables -D INPUT 3       // 从上往下数,删除INPUT策略的第5行

5.对某个IP进行禁用规则

iptables -A INPUT -s 192.168.72.30  -p tcp --dport 22 -j DROP     //对来源为192.168.72.30,通过22端口进入的阻止

6.设置默认规则,过滤所有数据包,直接DROP

iptables -t filter -P INPUT DROP     

7.设置完保存规则

service iptables save        //默认规则配置文件在/etc/sysconfig/iptables

 8、重启iptables

service iptables stop /start