CentOS 7防火墙配置详解
CentOS 7引入了firewalld作为默认的防火墙管理工具,相较于传统的iptables,firewalld提供了更为动态和灵活的防火墙规则管理方式,本文将详细介绍如何在CentOS 7中配置和管理firewalld防火墙。
一、firewalld的基本操作
1、启动与停止:
启动firewalld服务:systemctl start firewalld
停止firewalld服务:systemctl stop firewalld
查看firewalld状态:systemctl status firewalld
重启firewalld服务:systemctl restart firewalld
设置开机自启:systemctl enable firewalld
取消开机自启:systemctl disable firewalld
2、查看版本与帮助:
查看版本:firewall-cmd --version
查看帮助:firewall-cmd --help
3、显示状态与查询:
显示当前状态:firewall-cmd --state
查询是否拒绝所有包:firewall-cmd --query-panic
二、配置防火墙区域(Zone)
firewalld使用区域来定义不同的信任级别,每个区域对应不同的防火墙规则,常用的区域包括drop、block、public、external、work、home、internal、trusted等。
查看活动区域:firewall-cmd --get-active-zones
指定接口区域:firewall-cmd --zone=<区域> --change-interface=<接口>
查看接口所属区域:firewall-cmd --get-zone-of-interface=<接口>
三、端口与服务管理
1、开放与关闭端口:
开放端口:firewall-cmd --permanent --add-port=80/tcp
(永久生效)
关闭端口:firewall-cmd --permanent --remove-port=80/tcp
重新载入配置:firewall-cmd --reload
2、服务管理:
添加服务到特定区域:firewall-cmd --permanent --add-service=http
移除服务:firewall-cmd --permanent --remove-service=http
四、IP地址伪装与端口转发
1、IP地址伪装:
查看伪装状态:firewall-cmd --zone=external --query-masquerade
开启伪装:firewall-cmd --zone=external --add-masquerade
关闭伪装:firewall-cmd --zone=external --remove-masquerade
2、端口转发:
添加端口转发规则:firewall-cmd --zone=external --add-forward-port=port=22:proto=tcp:toport=3753
删除端口转发规则:firewall-cmd --zone=external --remove-forward-port=port=22:proto=tcp:toport=3753
五、自定义复杂规则
可以通过添加富规则(rich rules)来实现更复杂的防火墙策略,例如允许或拒绝特定IP访问特定端口。
添加富规则:
允许特定IP访问本机8080端口:firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" accept'
禁止特定IP访问本机8080端口:firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" reject'
六、FAQs
Q1: 如何更改防火墙的默认区域?
A1: 可以通过修改区域的配置文件或使用firewall-cmd命令来更改,要将公共区域设置为默认区域,可以使用以下命令:
firewall-cmd --set-default-zone=public
Q2: 如何备份与恢复firewalld配置?
A2: firewalld的配置存储在/usr/lib/firewalld/
和/etc/firewalld/
目录下的XML文件中,备份这些文件即可备份整个配置,恢复时,只需将这些文件复制回原位置并重启firewalld服务即可。
小编有话说
CentOS 7的firewalld防火墙提供了强大的动态管理功能,使得防火墙规则的管理变得更加灵活和便捷,通过合理配置防火墙区域、端口和服务,可以有效地保护系统免受未经授权的访问和攻击,记得定期备份防火墙配置,以防不测,希望本文能帮助大家更好地理解和使用CentOS 7的firewalld防火墙。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1413240.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复