原文链接:信创服务器上firewalld命令详解 | 统信 | 麒麟 | 中科方德
Hello,大家好啊!今天给大家带来一篇关于在信创服务器上使用firewalld命令的详解文章。firewalld是Linux系统中常用的防火墙管理工具,它提供了一种动态管理防火墙的方式,可以在不重启防火墙服务的情况下立即应用新的规则。本文将详细介绍firewalld的基本用法和常用命令,帮助大家更好地管理和配置防火墙。欢迎大家分享转发,点个关注和在看吧!
1.查看配置文件
firewalld 配置文件结构 firewalld 的配置文件主要存放在 /etc/firewalld 目录下。主要子目录和文件包括: /etc/firewalld/zones/:存放各个区域的配置文件。 /etc/firewalld/services/:存放各个服务的 XML 配置文件。 /etc/firewalld/firewalld.conf:主配置文件。
2.服务启动与关闭
[root@pdsyw ~]# systemctl stop firewalld.service [root@pdsyw ~]# [root@pdsyw ~]# systemctl start firewalld.service [root@pdsyw ~]# [root@pdsyw ~]# systemctl restart firewalld.service [root@pdsyw ~]# [root@pdsyw ~]# systemctl disable firewalld.service Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed /etc/systemd/system/multi-user.target.wants/firewalld.service. [root@pdsyw ~]# [root@pdsyw ~]# systemctl enable firewalld.service Created symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service → /usr/lib/systemd/system/firewalld.service. Created symlink /etc/systemd/system/multi-user.target.wants/firewalld.service → /usr/lib/systemd/system/firewalld.service. [root@pdsyw ~]#
3.查看当前防火墙状态
[root@pdsyw ~]# firewall-cmd --state running [root@pdsyw ~]#
4.查看当前区域
[root@pdsyw ~]# firewall-cmd --get-active-zones public interfaces: ens160 [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --set-default-zone=home success [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --get-active-zones home interfaces: ens160 [root@pdsyw ~]#
5.更改当前区域
[root@pdsyw ~]# firewall-cmd --set-default-zone=public success [root@pdsyw ~]# firewall-cmd --zone=public --add-service=http --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
6.查看特定区域的规则
[root@pdsyw ~]# firewall-cmd --zone=public --list-all public (active) target: default icmp-block-inversion: no interfaces: ens160 sources: services: cockpit dhcpv6-client mdns samba ssh ports: protocols: masquerade: no forward-ports: source-ports: icmp-blocks: echo-request rich rules: rule family="ipv4" source address="192.168.80.111" accept [root@pdsyw ~]#
7.删除服务
[root@pdsyw ~]# firewall-cmd --zone=public --remove-service=http --permanent success [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
8.临时开放端口
[root@pdsyw ~]# firewall-cmd --zone=public --add-port=9999/tcp success [root@pdsyw ~]#
9.永久开放端口
[root@pdsyw ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
10.关闭端口
[root@pdsyw ~]# firewall-cmd --zone=public --remove-port=8080/tcp --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
11.添加 IP 地址限制
[root@pdsyw ~]# firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.80.111" accept' --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
12.添加 ICMP 规则
[root@pdsyw ~]# firewall-cmd --zone=public --add-icmp-block=echo-request --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
13.添加接口到区域
[root@pdsyw ~]# firewall-cmd --zone=public --change-interface=ens160 --permanent The interface is under control of NetworkManager, setting zone to 'public'. success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
14.添加 Direct 规则
[root@pdsyw ~]# firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -p tcp --dport 8080 -j ACCEPT success [root@pdsyw ~]# firewall-cmd --direct --get-all-rules ipv4 filter INPUT 0 -p tcp --dport 8080 -j ACCEPT [root@pdsyw ~]#
15.应用场景-公共网络
[root@pdsyw ~]# firewall-cmd --zone=public --change-interface=ens170 success [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --zone=public --add-service=ssh --permanent Warning: ALREADY_ENABLED: ssh success [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
16.公共网络-家庭网络
[root@pdsyw ~]# firewall-cmd --zone=home --change-interface=ens180 success [root@pdsyw ~]# firewall-cmd --zone=home --add-service=samba --permanent Warning: ALREADY_ENABLED: samba success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
17.公共网络-工作网络
[root@pdsyw ~]# firewall-cmd --zone=work --change-interface=ens160 success [root@pdsyw ~]# firewall-cmd --zone=work --add-service=https --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
18.启用日志记录
[root@pdsyw ~]# firewall-cmd --set-log-denied=all
[root@pdsyw ~]# tail -f /var/log/messages
19.创建自定义区域
[root@pdsyw ~]# firewall-cmd --permanent --new-zone=pdsyw success [root@pdsyw ~]# firewall-cmd --zone=pdsyw --add-interface=ens150 --permanent success [root@pdsyw ~]# firewall-cmd --zone=pdsyw --add-port=8888/tcp --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
20.检查并移除接口和服务
[root@pdsyw ~]# firewall-cmd --zone=pdsyw --list-all pdsyw (active) target: default icmp-block-inversion: no interfaces: ens150 sources: services: ports: 8888/tcp protocols: masquerade: no forward-ports: source-ports: icmp-blocks: rich rules: [root@pdsyw ~]# firewall-cmd --zone=pdsyw --remove-interface=ens150 --permanent success [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]#
21.删除配置文件
[root@pdsyw ~]# rm /etc/firewalld/zones/pdsyw.xml rm:是否删除普通文件 '/etc/firewalld/zones/pdsyw.xml'?y [root@pdsyw ~]# [root@pdsyw ~]# firewall-cmd --reload success [root@pdsyw ~]# firewall-cmd --get-zones block dmz drop external home internal public trusted work [root@pdsyw ~]#
通过本文的介绍,您应该已经掌握了在信创服务器上使用firewalld命令管理防火墙的基本方法和常用命令。firewalld提供了一种灵活且强大的方式来管理Linux系统的网络安全。如果您觉得这篇文章有用,请分享和转发。同时,别忘了点个关注和在看,以便未来获取更多实用的技术信息和解决方案。感谢大家的阅读,我们下次再见!