Linux防火墙的配置方法(firewalld服务)

红帽 RHEL7 系统已经用 firewalld 服务替代了 iptables 服务,新的防火墙管理命令 firewall-cmd 与图形化工具 firewall-config。
执行 firewall-config 命令即可看到 firewalld 的防火墙图形化管理工具,真的很强大,可以完成很多复杂的工作。
图片
①: 选择”立即生效“或”重启后依然生效“配置。
②: 区域列表。
③: 服务列表。
④: 当前选中的区域。
⑤: 被选中区域的服务。
⑥: 被选中区域的端口。
⑦: 被选中区域的伪装。
⑧: 被选中区域的端口转发。
⑨: 被选中区域的 ICMP 包。
⑩: 被选中区域的富规则。
?: 被选中区域的网卡设备。
?: 被选中区域的服务,前面有√的表示允许。
?:firewalld 防火墙的状态
允许其他主机访问 http 服务,仅当前生效:
图片
允许其他主机访问 8080-8088 端口且重启后依然生效:
图片
开启伪装功能,重启后依然生效:
firewalld 防火墙的伪装功能实际就是 SNAT 技术,即让内网用户不必在公网中暴露自己的真实 IP 地址。
图片
将向本机 888 端口的请求转发至本机的 22 端口且重启后依然生效:
图片
过滤所有”echo-reply”的 ICMP 协议报文数据包,仅当前生效:
ICMP 即互联网控制报文协议”Internet Control Message Protocol“,归属于 TCP/IP 协议族,主要用于检测网络间是否可通信、主机是否可达、路由是否可用等网络状态,并不用于传输用户数据。
Linux防火墙的配置方法(firewalld服务)_第1张图片
仅允许 192.168.10.20 主机访问本机的 1234 端口,仅当前生效:
富规则代表着更细致、更详细的规则策略,针对某个服务、主机地址、端口号等选项的规则策略,优先级最高。
图片
查看网卡设备信息:

图片



Centos升级到7之后,发现无法使用iptables控制Linuxs的端口,google之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口:
 
firewall:
systemctl start firewalld.service#启动firewall
systemctl stop firewalld.service#停止firewall
systemctl disable firewalld.service#禁止firewall开机启动 


firewall-cmd --state 查看防火墙启动状态


开启端口
 
firewall-cmd --zone=public --add-port=80/tcp --permanent
 
命令含义:
 
--zone #作用域
 
--add-port=80/tcp  #添加端口,格式为:端口/通讯协议
 
--permanent   #永久生效,没有此参数重启后失效
 
重启防火墙
 
firewall-cmd --reload
 
详细信息可以参考以下资料:
 
http://stackoverflow.com/questions/24729024/centos-7-open-firewall-port
 
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html



你可能感兴趣的:(linux)