1、Redhat Enterprise Linux7已经默认使用firewalld作为防火墙,其使用方式已经变化。
基于iptables的防火墙被默认不启动,但仍然可以继续使用。
RHEL7中有几种防火墙共存:firewalld、iptables、ebtables等,默认使用firewalld作为防火墙,管理工具是firewall-cmd。RHEL7的内核版本是3.10,在此版本的内核里防火墙的包过滤机制是firewalld,使用firewalld来管理netfilter,不过底层调用的命令仍然是iptables等。因为这几种daemon是冲突的,所以建议禁用其他几种服务。
防火墙_第1张图片
例如若要禁用iptables、ip6tables、ebtables防火墙,方法 :systemctl mask {iptables,ip6tabels,ebtables}
2、获取firewalld状态:firewall-cmd --state
3、想要列出默认有效的服务,也可以进入下面的目录也能够取得
防火墙_第2张图片
4、列出全部启用的区域的特性(即查询当前防火墙策略)
解释:特性可以是定义的防火墙策略,如:服务、端口和协议的组合、端口/数据报转发、伪装、ICMP 拦截或自定义规则等
防火墙_第3张图片
5、获取永久选项所支持的服务
firewall-cmd --permanent --get-services
获取永久选项所支持的ICMP类型列表
firewall-cmd --permanent --get-icmptypes
6、获取支持的永久区域
firewall-cmd --permanent --get-zones
7、配置防火墙在public区域打开http协议,并保存,以致重启有效
firewall-cmd --permanent --zone=public --add-service=http
8、查看永久模式下public区域是否打开http服务。
firewall-cmd --permanent --zone=public --query-service=http
9、防火墙开放8080端口在public区域
firewall-cmd --permanent --zone=public --add-port=8080/tcp
10、命令行配置负规则:
查看负规则:# firewall-cmd --list-rich-rules
创建负规则:
firewall-cmd --add-rich-rule 'rule family=ipv4 source address=10.35.89.0/24 service name=ftp log prefix="ftp" level=info accept' --permanent
firewall-cmd --add-rich-rule 'rule family=ipv4 source address=10.35.89.0/24 port port=80 protocol=tcp  log prefix="80" level=info accept' --permanent
firewall-cmd --add-rich-rule rule family="ipv4" source address="192.168.10.30" forward-port port="808" protocol="tcp" to-port="80" to-addr="10.10.10.2"
11、 负规则中使用伪装功能可以更精确详细的限制:
firewall-cmd --add-rich-rule 'rule family=ipv4 source address=10.10.10.2/24 masquerade'
12、 仅允许部分IP访问本机服务配置
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"
source address="192.168.0.0/24" service name="http" accept"
禁止远程IP访问ssh
firewall-cmd --permanent --zone=public --add-rich-rule=’rule family=ipv4
source address=192.168.0.0/24 service name=ssh reject’
删除rich规则
firewall-cmd --permanent --zone=public --remove-rich-rule=’rule family=ipv4
source address=192.168.0.0/24 service name=ssh reject’
13、仅允许部分IP访问本机端口配置
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4"
source address="192.168.0.0/24"port protocol="tcp" port="8080" accept"
创建rich规则,可以指定日志的前缀和输出级别
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.4/24"port port=8080 protocol="tcp" log prefix=proxy level=warning accept"
14、firewall daemon 主要的配置工具是firewall-config。它支持防火墙的所有特性。管理员也可以用它来改变系统或用户策略。