Linux firewalld 命令详解

简介

firewalld 是一个在 Linux 中的防火墙管理工具,提供动态接口管理网络流量,它使用区域来定义网络连接的信任级别,并支持 IPv4 和 IPv6。

常用示例

启动防火墙
shell 复制代码
sudo systemctl start firewalld
停止防火墙
shell 复制代码
sudo systemctl stop firewalld
设置防火墙开机自启动
shell 复制代码
sudo systemctl enable firewalld
禁止防火墙开机自启动
shell 复制代码
sudo systemctl disable firewalld
检查防火墙的状态
shell 复制代码
sudo systemctl status firewalld
重新加载防火墙的配置
shell 复制代码
sudo firewall-cmd --reload
查看活动防火墙状态
shell 复制代码
sudo firewall-cmd --state
列出所有活动区域
shell 复制代码
sudo firewall-cmd --get-active-zones
查看指定区域的规则
shell 复制代码
sudo firewall-cmd --list-all --zone=public
列出所有区域
shell 复制代码
sudo firewall-cmd --get-zones
设置默认的区域
shell 复制代码
sudo firewall-cmd --set-default-zone=trusted
添加一个接口到区域
shell 复制代码
sudo firewall-cmd --zone=public --add-interface=eth0
从区域中移除一个接口
shell 复制代码
sudo firewall-cmd --zone=public --remove-interface=eth0
查看指定区域的接口
shell 复制代码
sudo firewall-cmd --get-zone-of-interface=eth0
列出所有支持的服务
shell 复制代码
sudo firewall-cmd --get-services
添加一个服务到区域
shell 复制代码
sudo firewall-cmd --zone=public --add-service=http
从区域中移除一个服务
shell 复制代码
sudo firewall-cmd --zone=public --remove-service=http
检查服务是否是启动的
shell 复制代码
sudo firewall-cmd --zone=public --query-service=http
使服务变更永久生效
shell 复制代码
sudo firewall-cmd --zone=public --add-service=http --permanent
临时打开一个端口
shell 复制代码
sudo firewall-cmd --zone=public --add-port=8080/tcp
临时关闭一个端口
shell 复制代码
sudo firewall-cmd --zone=public --remove-port=8080/tcp
使变更端口永久生效
shell 复制代码
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
列出在区域中打开的端口
shell 复制代码
sudo firewall-cmd --zone=public --list-ports
允许来自指定 IP 的流量
shell 复制代码
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
阻止来自指定 IP 的流量
shell 复制代码
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" drop'
记录并丢弃来自指定 IP 的流量
shell 复制代码
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" log prefix="Blocked: " level="info" drop'
使规则永久生效
shell 复制代码
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept' --permanent
启用伪装
shell 复制代码
sudo firewall-cmd --zone=public --add-masquerade
禁用伪装
shell 复制代码
sudo firewall-cmd --zone=public --remove-masquerade
在区域之间转发流量
shell 复制代码
sudo firewall-cmd --zone=trusted --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.100
在脚本或恢复模式中使用 firewall-offline-cmd
shell 复制代码
firewall-offline-cmd --add-service=http
永久保存所有变更到磁盘
shell 复制代码
sudo firewall-cmd --runtime-to-permanent
相关推荐
德迅云安全—珍珍7 分钟前
主机安全-德迅卫士
linux·服务器·安全
云动课堂13 分钟前
一键升级 OpenSSH 10到最新版:告别手工编译、兼容国产系统、批量部署无忧!
linux·服务器·centos
一分半心动17 分钟前
lnmp架构 mysql数据库Cannot assign requested address报错解决
linux·mysql·php
2501_9388101129 分钟前
动态IP的使用方法
网络·网络协议·tcp/ip
ChristXlx33 分钟前
Linux安装mysql(虚拟机适用)
linux·mysql
知星小度S36 分钟前
系统核心解析:深入操作系统内部机制——基础I/O探秘:文件描述符、重定向与Shell的I/O魔法(二)
linux·i/o
小周学学学37 分钟前
vcenter的SMB备份
运维·服务器·vmware·虚拟化
Neolnfra42 分钟前
陇剑杯2021-wifi题目解析
网络·安全·web安全·网络安全·系统安全·密码学·csrf
一周困⁸天.1 小时前
K8S-CoreDNS组件
网络·kubernetes
软件测试大叔1 小时前
CentOS 7.6 安装 nvtop 完整教程
linux·centos·性能监控