CentOS防火墙
一、
CentOS 7 中的 firewalld 是一种动态防火墙管理工具,用于配置和管理 Linux 系统上的 netfilter 防火墙规则,它通过区域(Zone)的概念来定义不同的网络环境,如公共网络、内部网络和信任网络等,每个区域都有自己的防火墙规则集合,可以根据网络环境的不同选择适当的区域,firewalld 提供了一种简化和易于使用的方法来配置和管理防火墙,使管理员能够轻松配置和调整防火墙规则,以保护系统免受未经授权的访问和攻击。
二、防火墙的基本操作
查看防火墙的状态
查看版本:firewall-cmd --version
查看状态:firewall-cmd --state
查看服务状态(普通用户可执行):systemctl status firewalld
查看全部信息:firewall-cmd --list-all
查看已开通的端口:firewall-cmd --list-ports
查看已开通的服务:firewall-cmd --list-services
查看所有服务列表(普通用户可执行):firewall-cmd --get-services
查看服务是否开机启动:systemctl is-enabled firewalld
配置防火墙的命令
启动、重启、关闭防火墙服务
启动:systemctl start firewalld
重启:systemctl restart firewalld
关闭:systemctl stop firewalld
查看状态:systemctl status firewalld
开放、移去某个端口
开放80端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
移去80端口:firewall-cmd --zone=public --remove-port=80/tcp --permanent
开放、移去范围端口
开放5000-5500之间的端口:firewall-cmd --zone=public --add-port=5000-5500/tcp --permanent
移去5000-5500之间的端口:firewall-cmd --zone=public --remove-port=5000-5500/tcp --permanent
开放、移去服务
开放ftp服务:firewall-cmd --zone=public --add-service=ftp --permanent
移去http服务:firewall-cmd --zone=public --remove-service=http --permanent
重新加载防火墙配置(修改配置后要重新加载防火墙配置或重启防火墙服务):firewall-cmd --reload
设置开机时启用、禁用防火墙服务
启用服务:systemctl enable firewalld
禁用服务:systemctl disable firewalld
三、区域管理
查看活动区域
firewall-cmd --get-active-zones
查看指定接口所属区域
firewall-cmd --get-zone-of-interface=eth0
添加与删除服务到特定区域
以 smtp 服务为例,将其添加到 work 区域
firewall-cmd --zone=work --add-service=smtp --permanent
查看 work 区域中的服务
firewall-cmd --zone=work --list-services
删除 work 区域中的 smtp 服务
firewall-cmd --zone=work --remove-service=smtp --permanent
四、高级功能
1.IP地址伪装(Masquerading)
IP地址伪装常用于NAT(网络地址转换),允许内部网络中的设备通过一个公共IP地址访问互联网,确保外部区域已启用伪装:
firewall-cmd --add-masquerade --permanent
重新加载防火墙规则:
firewall-cmd --reload
2.端口转发(Port Forwarding)
端口转发允许将一个外部端口的流量转发到内部网络中的另一个端口,将外部的TCP端口22流量转发到内部IP为192.168.1.100的TCP端口2222:
firewall-cmd --add-forward-port=port=22:proto=tcp:toport=2222:toaddr=192.168.1.100 --permanent
重新加载防火墙规则:
firewall-cmd --reload
五、常见问题解答(FAQs)
Q1:如何更改默认区域?
A1:可以通过修改/etc/firewalld/zones/public.xml
文件中的标签值来更改默认区域,将默认区域改为 work:
sudo sed -i 's/<\/?zone>/<\/?zone>default="work"/' /etc/firewalld/zones/public.xml
然后重新加载防火墙规则:
firewall-cmd --reload
Q2:如何永久关闭防火墙?
A2:虽然不建议关闭防火墙以保证系统安全,但如果确实需要关闭,可以执行以下命令:
systemctl stop firewalld
或者直接禁止开机启动:
systemctl disable firewalld
这样做会降低系统的安全性,因此应谨慎使用。
到此,以上就是小编对于“centos防火墙”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/42027.html<