Firewalld 防火墙使用指南
来源
原始文档: firewalld_use.md
核心内容
Firewalld 是 Linux 系统的动态防火墙管理工具,支持区域(zone)概念和运行时/永久配置。
安装与基础操作
# 安装
sudo apt install firewalld
# 服务管理
sudo systemctl start firewalld
sudo systemctl stop firewalld
sudo systemctl status firewalld
端口管理
# 永久开放端口
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
# 临时开放端口(重启后失效)
sudo firewall-cmd --add-port=80/tcp
# 列出开放端口
sudo firewall-cmd --list-ports
sudo firewall-cmd --list-all
sudo firewall-cmd --reload
# 删除端口规则
sudo firewall-cmd --permanent --remove-port=3389/tcp
富规则(Rich Rules)
# 禁止指定网络通过特定端口入站
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="195.96.129.0/24" port port="1234" protocol="tcp" reject'
# 删除规则
sudo firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="195.96.129.0/24" port port="1234" protocol="tcp" reject'
# 禁止指定IP入站
sudo firewall-cmd --add-rich-rule='rule family="ipv4" source address="91.217.81.140" reject'
# 列出所有富规则
sudo firewall-cmd --list-rich-rules
删除规则示例
# 删除富规则
sudo firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port port="3389" protocol="tcp" accept'
# 删除TCP协议的3389端口规则
sudo firewall-cmd --permanent --remove-port=3389/tcp
# 重载配置
sudo firewall-cmd --reload
关键要点
--permanent参数使规则永久生效,需要--reload重载- 富规则支持更复杂的过滤逻辑
- 可以基于源IP、端口、协议进行精细化控制
- 与
lsof -i :端口号配合查看端口占用
相关实体
- firewalld - 动态防火墙管理器
- iptables - Linux 防火墙框架
- 网络安全 - 网络安全实践
- Linux安全 - Linux 系统安全