惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

阮一峰的网络日志
阮一峰的网络日志
D
Darknet – Hacking Tools, Hacker News & Cyber Security
S
Schneier on Security
The Last Watchdog
The Last Watchdog
Cyberwarzone
Cyberwarzone
S
Securelist
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
Cyber Attacks, Cyber Crime and Cyber Security
L
Lohrmann on Cybersecurity
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园 - 司徒正美
The Cloudflare Blog
V
V2EX
博客园_首页
博客园 - 聂微东
Vercel News
Vercel News
人人都是产品经理
人人都是产品经理
G
GRAHAM CLULEY
T
Tenable Blog
Last Week in AI
Last Week in AI
Y
Y Combinator Blog
L
LINUX DO - 最新话题
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
SecWiki News
SecWiki News
博客园 - 三生石上(FineUI控件)
S
Secure Thoughts
N
News | PayPal Newsroom
T
The Blog of Author Tim Ferriss
The GitHub Blog
The GitHub Blog
T
Troy Hunt's Blog
博客园 - 【当耐特】
Forbes - Security
Forbes - Security
H
Hacker News: Front Page
A
About on SuperTechFans
B
Blog RSS Feed
Engineering at Meta
Engineering at Meta
MongoDB | Blog
MongoDB | Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
罗磊的独立博客
D
DataBreaches.Net
P
Privacy & Cybersecurity Law Blog
Schneier on Security
Schneier on Security
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Google DeepMind News
Google DeepMind News
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Jina AI
Jina AI
D
Docker
P
Proofpoint News Feed

钧言极客

Alpine Linux 服务器配置指北 Visual Studio Code 安装开启 中文语言包插件 Linux 安装 MediaInfo:轻松解析视频文件信息 Hugo 实现的短标签 PVE存储合并实践:整合local-lvm到local 组网工具WireGuard入门指南 Debian 安装NVIDLA显卡驱动和CUDA工具包 Alpine VNC重置密码
Linux 管理 UFW 防火墙
JunYan · 2025-11-29 · via 钧言极客

UFW(Uncomplicated Firewall)是 Debian 和 Ubuntu 系统上用于管理 iptables 防火墙规则的用户友好前端工具。它的设计目标是简化防火墙配置过程,让没有深厚网络知识的用户也能轻松保护自己的系统。

🛠️ 安装和策略配置

使用root权限或者sudo权限,在Debian/Ubuntu系统上进行安装。

安装UFW

在Ubuntu的较新系统已经成为安装的一部分,在Debian/Ubuntu系统上,使用命令行进行安装:

sudo apt update
sudo apt install ufw

检查 UFW 状态

安装后,检查UFW状态是否处于启用状态:

显示 Status: inactive 表示已经安装UFW但未启动。

默认策略配置

默认情况下 UFW 是 拒绝所有传入连接 ,这样所有未明确允许的传入流量都会被阻止,从而提高服务器的安全性。

根据自身情况设置合理的防火墙策略。

# 默认拒绝所有入站连接
sudo ufw default deny incoming

# 默认允许所有出站连接
sudo ufw default allow outgoing

防火墙配置

配置 IPv6

在启用 UFW 时,如果你的系统支持 IPv6,UFW 将自动检测并同时启用 IPv6。

  • 打开 UFW 的主配置文件:
sudo vim /etc/default/ufw
  • 在文件中找到以下行:

如果是注释那就删除,确保 IPV6 设置为 yes

允许 SSH 连接

PS:在启用 UFW 前,先允许SSH连接,不然就要VNC拯救了。

如果使用非标端口,需要指定当前实际的端口号。

# 使用服务名称
sudo ufw allow OpenSSH

# 使用 指定端口
sudo ufw allow 22/tcp

启用 UFW

完成简单基础配置后,启用防火墙

# 验证已添加规则
ufw show added

# 启用 UFW
sudo ufw enable

系统会提示操作可能会中断现有的 SSH 连接,输入 y 确认。启用后,UFW 将在系统启动时自动加载。

你会看到如下输出:

Firewall is active and enabled on system startup

常用业务端口配置

配置服务器常用端口

# HTTP 和 HTTPS
sudo ufw allow http
sudo ufw allow https

# 或直接使用端口号
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# 其他常见服务
sudo ufw allow 53/tcp  # DNS
sudo ufw allow 3306/tcp # Mysql
sudo ufw allow 8080/tcp # Tomcat 服务

使用 UFW 应用配置管理

UFW 支持应用程序配置文件,可以查看可用的应用配置:

# 列出可用应用配置
sudo ufw app list

# 查看特定应用的详细信息
sudo ufw app info SSH

# 使用特定应用配置
sudo ufw allow SSH

高级配置技巧

让你更精细地控制谁能访问你的服务器,非常适合提升安全性!

基于 IP 地址和子网的规则

UFW 默认情况下会同时应用 IPv4 和 IPv6 的规则。

如果需要为IPv6单独设置规则,可以把 IPv4 地址换成 IPv6地址。

# 允许特定 IP 地址访问所有端口
sudo ufw allow from 192.168.1.99

# 允许特定子网访问
sudo ufw allow from 192.168.1.0/24

# 允许某个 IP 访问指定端口
sudo ufw allow from 192.168.1.99 to any port 3306

# 允许整个子网访问特定服务
sudo ufw allow from 192.168.1.0/24 to any port 3306

# 允许端口范围内的所有TCP连接
sudo ufw allow proto tcp from any to any port 2000:3000


# 限制特定 IP 只能访问服务,并限制TCP/UDP协议
sudo ufw allow from 192.168.1.99 to any port 3306 proto tcp

----------------------------------------

# 拒绝某个 IP 的访问
sudo ufw deny from 192.168.1.99

# 拒绝特定子网的连接
sudo ufw deny from 10.0.0.0/24

# 拒绝特定子网访问特定端口
sudo ufw deny from 10.0.0.0/24 to any port 80

端口范围和协议指定

# 允许 TCP 端口范围
sudo ufw allow 7100:7200/tcp

# 允许 UDP 端口范围
sudo ufw allow 7100:7200/udp

# 同时允许 TCP 和 UDP
sudo ufw allow 7100:7200

网络接口特定规则

# 查看网络接口名称
ip link show

# 允许特定网络接口的入站连接
sudo ufw allow in on eth0 to any port 3306

限速连接(Rate Limiting)

UFW 提供了 limit 选项,可以限制特定服务的连接速率。

某个 IP 在 30 秒内尝试连接超过 6 次(比如暴力破解密码),UFW 会暂时阻止该 IP 的连接。

删除规则

# 删除允许规则
sudo ufw delete allow 80/tcp

# 删除允许应用规则
sudo ufw allow http

# 使用编号删除规则
sudo ufw status numbered  # 查看规则编号

sudo ufw delete 5         # 删除编号为 5 的规则

UFW 防火墙管理命令

# 启用防火墙
sudo ufw enable

# 禁用 UFW 防火墙
sudo ufw disable

# 查看当前规则
sudo ufw status	

# 查看详细状态和策略
sudo ufw status verbose	

# 查看完整规则
sudo ufw show raw

# 完全重置 UFW(删除所有规则)
sudo ufw reset

安全建议

  • 最小权限原则:端口放行最小化,关闭不需要的服务

  • 备份规则:定期备份防火墙规则

sudo ufw export > ~/ufw-backup.rules
  • 防止锁定:在启用 UFW 前确保已允许 SSH 连接

  • 定期审查:定期检查防火墙规则,移除不再需要的规则

  • 日志监控:启用日志记录以便排查问题

日志存储在/var/log/ufw.log