50% 折扣 所有计划,时间有限。开始于 $2.48/mo
还剩 9 分钟
安全与网络

UFW 命令解释:如何安装、启用和管理防火墙规则

艾达·洛夫古德 By 艾达·洛夫古德 阅读时间 9 分钟 更新于 2025 年 2 月 23 日
ufw 命令语法

如果您是系统管理员,在您的职业生涯中肯定有过这样的时刻,您希望拥有一个易于配置和管理的强大安全系统,而无需深入研究复杂的内容 iptables规则。 UFW,或 简单的防火墙 是一个很棒的网络安全工具,它通过提供简单的界面来填补这一空白。 UFW 允许您使用简单的命令控制服务器的防火墙设置。

在本 UFW 教程中,我们将引导您了解有关 UFW 所需了解的所有信息,从安装到高级配置。我们将介绍如何启用和禁用 UFW、了解其语法并将实际示例应用于常见场景。学完本 UFW 教程后,您将对如何使用 UFW 有效保护您的服务器有深入的了解。

UFW安装

即使您是防火墙管理新手,您也可以轻松安装 UFW,因为它的安装过程非常简单。以下是在您的服务器上安装并运行 UFW 的分步教程。

第 1 步:更新您的包裹清单

在安装任何新软件之前,最好更新您的软件包列表。

sudo apt update

第2步:安装UFW

您可以使用简单的命令安装 UFW:

sudo apt install ufw

第 3 步:验证安装

现在安装完成了,可以检查是否安装成功。您可以通过运行以下命令来检查 UFW 安装的版本:

ufw version

第 4 步:初始配置

在启用 UFW 之前,进行一些初始配置很重要。这样,您可以确保它在激活时按预期运行。最关键的步骤之一是设置默认策略。默认情况下,UFW 配置为拒绝所有传入连接并允许所有传出连接。您可以使用以下命令来验证或设置这些默认值:

sudo ufw default deny incoming
sudo ufw default allow outgoing

第5步:启用UFW

启用 UFW 会使用您定义的规则和默认策略激活防火墙。要启用 UFW,请运行以下命令:

sudo ufw enable

第6步:检查UFW状态

您可以使用以下命令查看UFW的状态以及当前应用的规则:

sudo ufw status

通过遵循此 UFW 教程,您可以在服务器上成功安装并启用 UFW。此初始设置使进一步的配置变得容易。 UFW 非常可定制,允许您添加特定规则以根据需要允许或阻止流量。

基本 UFW 命令和语法

UFW 的设计宗旨是易于使用;这就是为什么它具有简单的命令和清晰的语法,可以简化防火墙管理。了解这些基本命令及其语法对您配置和维护服务器防火墙有很大帮助。在 UFW 教程的最后一部分中,我们介绍了启用 UFW。因此,让我们从允许您在系统上禁用 UFW 的命令开始本节。

禁用 UFW

出于故障排除或维护原因,您可能需要禁用 UFW。这个命令可以为你做到这一点:

sudo ufw disable

检查 UFW 状态

如果您定期检查 UFW 的状态,您就会知道哪些规则当前处于活动状态。因此,您可以确保防火墙按照您期望的方式运行。您可以使用以下 UFW 命令检查 UFW 的状态:

sudo ufw status

您可以在此命令后使用详细选项来获取有关 UFW 状态的更多详细信息。

sudo ufw status verbose

允许交通

UFW 的主要功能之一是根据您的安全要求允许或拒绝流量。如果要允许流量通过特定端口,则应使用allow 命令,后跟端口号和协议(tcp/udp)。这是一个例子:

sudo ufw allow 22/tcp

此命令允许使用 TCP 协议在端口 22 上传入 SSH 连接。

拒绝交通

同样,要阻止流量,您应该使用拒绝命令。

sudo ufw deny 23/tcp

此命令阻止使用 TCP 协议在端口 23 上传入的 Telnet 连接。

按 IP 地址允许流量

UFW 甚至允许您允许或拒绝来自特定 IP 地址的流量。这样,您就可以拥有更具体的安全规则。这是一个例子:

sudo ufw allow from 192.168.1.10

按 IP 地址拒绝流量

根据 IP 地址拒绝流量与最后一个命令一样简单。以下是如何执行此操作的示例:

sudo ufw deny from 10.0.0.0/8

管理 UFW 规则

当您使用 UFW 时,您可能需要添加、修改或删除规则。让我们看看哪些 UFW 命令可以让您做到这一点。首先,让我们从添加新规则开始。要向 UFW 添加新规则,您只需使用我们之前解释的允许或拒绝 UFW 命令即可。但是,删除规则包括更多步骤。要删除规则,您应该首先列出编号的规则。此步骤很重要,因为您需要确定要删除的具体规则。以下命令将为您列出编号的规则:

sudo ufw status numbered

然后,您可以通过指定规则编号来删除该规则:

sudo ufw delete 1

重新加载 UFW

每当您更改 UFW 规则时,最好重新加载防火墙。以下 UFW 命令会为您重新加载 UFW:

sudo ufw reload

此命令重新应用所有规则,无需禁用并重新启用防火墙。

重置UFW

有一个 UFW 命令允许您重新开始或删除所有现有规则。但请记住,如果您重置 UFW,它将被禁用并且所有规则都将被删除。以下 UFW 命令重置 UFW:

sudo ufw reset

学习这些基本的 UFW 命令并理解它们的语法对于有效的防火墙管理至关重要。在接下来的部分中,我们将深入探讨可以进一步增强服务器安全性的高级配置和用例。

将 UFW 与其他安全工具相结合

UFW 是管理防火墙的强大工具。但您有机会将其与其他安全工具结合使用,以充分利用它。其中一个这样的工具是 失败2禁止,它通过监控日志并禁止显示恶意迹象的 IP 地址来帮助防止暴力攻击。以下是如何将 UFW 与fail2ban 集成以增强您的安全设置。

fail2ban 是一种安全工具,能够扫描日志文件以查找失败登录尝试或其他可疑活动的模式。发现可疑模式后,它可以自动更新防火墙规则以阻止违规 IP 地址。 UFW 和 Fail2ban 的组合对于防御重复的暴力登录尝试非常有用。

安装fail2ban

要安装fail2ban,请在服务器上运行以下命令:

sudo apt-get install fail2ban

使用 UFW 配置fail2ban

现在,您将学习如何配置fail2ban以与UFW配合使用。

第 1 步:创建本地 Jail 配置

fail2ban 的默认配置文件位于 /etc/fail2ban/jail.conf。但是,建议创建此文件的本地副本,以避免更新fail2ban 时覆盖您的设置。在这里,您可以复制配置文件:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

第 2 步:编辑 Jail 配置

打开 jail.local 使用以下命令在您喜欢的文本编辑器中创建文件:

sudo nano /etc/fail2ban/jail.local

在此文件中,找到 [默认] 部分并设置 班泰姆, 寻找时间, 和 最大重试次数 参数。以下是每个参数显示的内容的列表:

  • 班时间: 控制 IP 被禁止的时间。
  • 查找时间: 显示对失败尝试进行计数的时间窗口。
  • 最大重试次数: 显示禁止前允许的失败次数。

例如,您可以按如下方式设置这些参数:

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5

步骤 3:在 Jail 配置中启用 UFW

找到 [sshd] 部分(或您想要保护的任何其他服务) jail.local 文件。现在,确保启用设置为 true 并指定 UFW 应用于禁止:

[sshd]
enabled = true
banaction = ufw
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5

此配置对于确保fail2ban 监视 SSH 服务并更新 UFW 规则以禁止恶意 IP 地址是必要的。

启动并启用fail2ban

配置fail2ban后,启动服务并使其开机运行:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

现在,检查fail2ban的状态以确保它正常运行:

sudo systemctl status fail2ban

结合 UFW 和fail2ban 的好处

将fail2ban 与 UFW 集成可以让您 分层安全方法。 UFW 提供了一种管理防火墙规则的简单方法,fail2ban 通过禁止显示恶意行为的 IP 地址来添加动态保护。这种高效的团队合作可以降低暴力攻击的风险,并确保您的服务器保持安全。

包起来

在本 UFW 教程中,我们回顾了 UFW 如何成为增强系统安全性和简化防火墙管理的强大工具。我们提供了易于遵循的使用 UFW 的安装和配置流程。我们还解释了将 UFW 与其他安全工具(例如fail2ban)结合使用如何使该过程更加优化。

常问问题

如何删除我添加的 UFW 规则?

要删除特定的 UFW 规则,您需要使用 ufw delete 命令,后跟要删除的规则。例如,如果您想要删除允许端口 80 (HTTP) 上的流量的规则,您可以使用以下命令:

sudo ufw delete allow 80/tcp

UFW 比 iptables 更好吗?

UFW 通过更简单的语法和用户友好的命令使防火墙管理变得简单。这使其成为初学者的理想选择。另一方面,iptables 提供更详细的控制和定制选项。这就是为什么它适合需要非常具体的防火墙规则的高级用户。

Firewalld 和 UFW 哪个更好?

UFW 对于初学者来说更容易,因为它具有简单的命令。它非常适合简单配置。 防火墙 提供更高级的功能和灵活性,使其成为复杂环境和动态防火墙规则的更好工具。选择取决于您的具体需求以及对每种工具的熟悉程度。

Ubuntu 上最好的防火墙是什么?

最适合 Ubuntu 的防火墙取决于您的需求。 UFW 是大多数用户的默认和推荐选项,因为它简单易用。对于更高级的配置,iptables 提供对防火墙规则的详细控制。 Firewalld 是另一个强大的选项,可提供防火墙规则的动态管理。您可以选择 UFW 来完成简单的任务,并考虑 iptables 或 Firewalld 来满足更复杂的需求。

分享

更多来自博客

继续阅读。

MikroTik L2TP VPN 指南的 Cloudzy 标题图片,显示一台笔记本电脑通过带有盾牌图标的发光的蓝色和金色数字隧道连接到服务器机架。
安全与网络

MikroTik L2TP VPN 设置(使用 IPsec):RouterOS 指南 (2026)

在此 MikroTik L2TP VPN 设置中,L2TP 处理隧道,而 IPsec 处理加密和完整性;将它们配对即可为您提供本机客户端兼容性,无需第三方年龄

雷克萨·赛勒斯雷克萨·赛勒斯 阅读时间 9 分钟
终端窗口显示有关远程主机标识更改的 SSH 警告消息,并在深青色背景上显示“修复指南”标题和 Cloudzy 品牌。
安全与网络

警告:远程主机标识已更改以及如何修复它

SSH 是一种安全网络协议,可在系统之间创建加密隧道。它仍然受到需要远程访问计算机而无需图形界面的开发人员的欢迎。

雷克萨·赛勒斯雷克萨·赛勒斯 10 分钟阅读
DNS 服务器故障排除指南插图,其中包含警告符号和深色背景上的蓝色服务器,用于 Linux 名称解析错误
安全与网络

名称解析暂时失败:这意味着什么以及如何修复?

使用 Linux 时,在尝试访问网站、更新包或执行需要 Internet 连接的任务时,您可能会遇到名称解析错误的临时故障。

雷克萨·赛勒斯雷克萨·赛勒斯 阅读时间 12 分钟

准备好部署了吗? 每月 2.48 美元起。

独立云,自 2008 年起。AMD EPYC、NVMe、40 Gbps。 14 天退款。