Linux Firewalld详解

admin 2024年10月8日11:03:13评论21 views字数 1941阅读6分28秒阅读模式
Linux操作系统中的firewalld是一种动态防火墙管理工具,它通过区域(zone)来定义网络连接的信任级别,。本文将详细介绍firewalld的常用命令、默认区域、状态查询、启动与关闭、现有生效规则的管理,以及如何放行指定端口和允许指定IP的访问。

一、Firewalld帮助命令

Firewalld提供了丰富的命令行工具,方便用户进行配置和管理。以下是一些常用的帮助命令:
查看firewalld版本和帮助信息:
firewall-cmd --version  #显示当前安装的 firewalld 版本firewall-cmd --help   #提供了所有可用命令的简要说明。man firewall-cmd    #提供了详细的命令手册页,包含每个选项的详细解释。

Linux Firewalld详解

二、Firewalld默认区域

Firewalld使用区域(zone)来定义网络连接的信任级别。每个区域有自己的规则,可以根据接口或源地址分配区域。默认的区域是public
查看所有可用区域:
firewall-cmd --get-zones
查看系统默认的zone:
firewall-cmd --get-default-zone

Linux Firewalld详解

设置默认的zone:
firewall-cmd --set-default-zone=public

三、状态查询

查看firewalld是否运行:
firewall-cmd --state

Linux Firewalld详解

查看firewalld服务的详细状态:
systemctl status firewalld

Linux Firewalld详解

查看firewalld日志信息
journalctl -u firewalld #查看 firewalld 的日志

四、启动与关闭Firewalld

启动firewalld:
 systemctl start firewalld
设置开机自启:
 systemctl enable firewalld
临时关闭firewalld:
systemctl stop firewalld
永久关闭firewalld(通过禁用服务):
systemctl disable firewalld

五、现有生效的规则

查看当前区域及其配置:
firewall-cmd --get-active-zones
查看指定区域的详细信息:
firewall-cmd --zone=public --list-all
重新加载配置(在修改规则后必须执行):
firewall-cmd --reload
查看所有当前规则:
firewall-cmd --list-all

Linux Firewalld详解

六、放行指定端口

允许TCP端口8080(永久生效):
firewall-cmd --zone=public --add-port=8080/tcp --permanent  firewall-cmd --reload
临时允许TCP端口8080(仅对当前会话有效,重启 firewalld 或系统后会失效):
firewall-cmd --zone=public --add-port=8080/tcp

七、允许指定IP访问

富规则(rich rules)允许更复杂的配置,如基于时间、源地址、目标地址等条件。
假设要允许192.168.1.100访问ssh:
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'firewall-cmd --reload
删除规则
firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'

八、其他高级配置

添加服务(例如允许SSH服务):
firewall-cmd --zone=public --add-service=ssh --permanent  firewall-cmd --reload
移除服务(例如移除HTTP服务):
firewall-cmd --zone=public --remove-service=http --permanent  firewall-cmd --reload
丢弃/拒绝所有入站流量(进入紧急模式):
firewall-cmd --panic-on
取消拒绝状态:
firewall-cmd --panic-off
清除所有规则
rm -rf /etc/firewalld/zones   #备份当前配置(强烈建议):在删除目录之前,先备份当前的 firewalld 区域配置文件systemctl restart firewalld #重启 firewalld 服务以应用更改

原文始发于微信公众号(网络个人修炼):Linux Firewalld详解

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月8日11:03:13
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Linux Firewalld详解https://cn-sec.com/archives/3239903.html

发表评论

匿名网友 填写信息