Rocky 操作防火墙

Rocky Linux 默认使用firewalld作为防火墙管理工具

一、查看防火墙状态

有两种常用方法

1. 使用 firewall-cmd 命令

复制代码
# 查看基本状态(running/not running)
sudo firewall-cmd --state

# 查看详细状态(包括区域、服务、端口等)
sudo firewall-cmd --list-all

2. 使用 systemctl 命令(推荐)

复制代码
# 查看服务状态
sudo systemctl status firewalld

状态显示为active (running)表示防火墙已开启,inactive (dead)表示已关闭

二、关闭防火墙

1. 临时关闭(重启后自动恢复)

复制代码
sudo systemctl stop firewalld

2. 永久关闭(重启后仍保持关闭)

复制代码
# 1. 停止防火墙服务
sudo systemctl stop firewalld

# 2. 禁用开机自启
sudo systemctl disable firewalld

# 3. 防止其他服务激活firewalld(可选但推荐)
sudo systemctl mask firewalld

三、开放指定端口

1. 开放单个端口(如 80 端口)

复制代码
# 临时开放(重启后失效)
sudo firewall-cmd --zone=public --add-port=80/tcp

# 永久开放(重启后保留)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

# 应用更改
sudo firewall-cmd --reload

验证

复制代码
# 查看已开放端口
sudo firewall-cmd --list-ports

2. 开放多个端口

复制代码
# 一次性开放多个端口
sudo firewall-cmd --zone=public --add-port=80/tcp --add-port=443/tcp --permanent

# 应用更改
sudo firewall-cmd --reload

3. 开放一个端口范围

复制代码
# 开放8000-8010范围内的所有TCP端口
sudo firewall-cmd --zone=public --add-port=8000-8010/tcp --permanent

# 应用更改
sudo firewall-cmd --reload

4. 使用服务名代替端口号

firewalld 预定义了常见服务(如 http、https、ssh 等),使用服务名更直观

复制代码
# 开放HTTP服务(自动关联80端口)
sudo firewall-cmd --zone=public --add-service=http --permanent

# 开放HTTPS服务(自动关联443端口)
sudo firewall-cmd --zone=public --add-service=https --permanent

# 应用更改
sudo firewall-cmd --reload

5. 移除已开放的端口

复制代码
# 移除80端口
sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent

# 应用更改
sudo firewall-cmd --reload
相关推荐
张小姐的猫3 小时前
【MySQL】数据类型
android·linux·数据库·c++·mysql·adb·php
金色熊族3 小时前
ebpf程序开发(一)--ubuntu20.04
linux·ebpf
‎ദ്ദിᵔ.˛.ᵔ₎3 小时前
Linux 线程控制
linux
叼烟扛炮4 小时前
Linux 学习笔记(八):GCC 编译器的四大阶段与链接原理
linux·笔记·学习
运维踩坑日记4 小时前
【无标题】
linux·运维·windows
虚无的纽扣4 小时前
【Linux】线程(下):怎么创建、终止与分离一个线程
linux·运维·服务器
叼烟扛炮4 小时前
Linux 学习笔记(七):软件安装与 Vim 编辑器极速入门
linux·学习·编辑器
金色熊族4 小时前
在Qt中使用asan检测内存泄漏(二)--检查依赖库的内存使用
linux·qt·asan
叼烟扛炮4 小时前
Linux 学习笔记(十六):进程的调度与优先级——谁先抢到 CPU?
linux·笔记·学习
幽灵诶4 小时前
学习Linux
linux·学习