如何在 Ubuntu 24.04/22.04/20.04 上安装 UFW

简单防火墙 (UFW) 是用于管理 Ubuntu 系统上的网络流量的精简解决方案。它设计简单,即使是网络安全经验最少的人也可以访问防火墙配置。无论您是开发人员、系统管理员还是好奇的用户,了解如何管理 UFW 都可以显著增强 Ubuntu 服务器的安全性。以下是 UFW 的一些突出的关键功能:

  • 用户友好界面:UFW 提供了一个易于理解的命令行界面,消除了通常与防火墙配置相关的复杂性。
  • 规则管理的灵活性:允许设置简单和高级规则,满足各种网络控制需求。
  • 与 iptables 集成:UFW 与 iptables 无缝协作,确保强大而可靠的防火墙管理。
  • 记录和监控功能:提供详细的日志和监控工具来跟踪和分析网络流量。

这些功能使 UFW 成为管理 Ubuntu 服务器上网络流量的首选,既安全又简单。以下部分将深入介绍安装和使用 UFW 的技术细节,确保您的服务器的网络安全强大且易于管理。

检查 UFW 是否已安装

在开始安装和配置过程之前,检查系统上是否已安装 UFW 至关重要。您可以通过执行以下命令来执行此操作:

ufw version

如果您查看版本信息,您将看到 UFW 已安装。如果没有,您将看到一条错误消息。在这种情况下,请按照以下步骤安装 UFW:

sudo apt update
sudo apt install ufw

安装后,您可以通过运行来验证 UFW 是否已安装 ufw version 再次。

使用 UFW 配置 IPv6(可选)

UFW 默认支持 IPv6。如果要启用 IPv6 支持,请使用您喜欢的文本编辑器打开 UFW 配置文件:

sudo nano /etc/default/ufw

找到以下行 IPV6=no 并将其更改为 IPV6=yes.

保存更改并退出编辑器。

设置 UFW 默认策略

设置默认策略对于控制传入和传出流量至关重要。默认策略将应用于任何与您稍后创建的任何特定规则不匹配的流量。要设置默认策略,请使用以下命令:

sudo ufw default deny incoming
sudo ufw default allow outgoing

这些命令将默认拒绝所有传入连接并允许所有传出连接。

允许 SSH 远程连接(特定情况)

要允许 SSH 连接,请执行以下命令:

sudo ufw allow ssh

此命令将允许在默认端口 (22) 上传入 SSH 连接。如果您使用自定义端口进行 SSH,则可以按如下方式指定它:

sudo ufw allow 2222/tcp

这将允许端口 2222 上的传入连接,假设您已将 SSH 服务器配置为监听此端口。

在 Ubuntu 上启用 UFW

笔记: 请记住,如果您使用 SSH 连接到远程 Ubuntu 服务器,请确保在继续本节之前已完成上一步以允许 UFW。

设置默认策略并允许 SSH 连接后,您可以使用以下命令启用 UFW 防火墙:

sudo ufw enable

系统将提示您确认操作,因为启用 UFW 可能会中断现有连接。输入“y”继续操作。

允许与 UFW 的其他连接

要允许其他连接(如 HTTP、HTTPS 或 FTP),请使用 ufw allow 命令后跟服务名称或端口号。

例如:

sudo ufw allow http
sudo ufw allow https
sudo ufw allow 21/tcp

这些命令允许 HTTP(端口 80)、HTTPS(端口 443)和 FTP(端口 21)的传入连接。

如果需要允许某个范围的端口连接,则可以按如下方式指定范围:

sudo ufw allow 8000:9000/tcp

此命令允许 TCP 端口 8000 到 9000 上的传入连接。

拒绝与 UFW 的连接

要拒绝特定连接,请使用 ufw deny 命令后跟服务名称或端口号。例如:

sudo ufw deny 25/tcp

此命令将拒绝端口 25(SMTP)上的传入连接。

使用 UFW 删除规则

要删除规则,请使用 ufw delete 命令后跟规则的参数。例如:

sudo ufw delete allow 21/tcp

此命令删除允许端口 21(FTP)上的传入连接的规则。

使用 UFW 检查 UFW 状态和规则

要检查 UFW 防火墙的状态并查看当前规则,请使用以下命令:

sudo ufw status verbose

此命令将显示您创建的 UFW 状态、默认策略和特定规则。

使用 UFW 进行日志记录

UFW 提供日志记录功能来跟踪其操作并监控潜在问题。在本节中,我们将讨论如何配置和查看日志。

配置UFW日志设置

要启用 UFW 的日志记录,请使用 ufw logging 命令后跟所需的日志级别(例如, low, medium, high, 或者 full)。 例如:

sudo ufw logging medium

此命令将日志级别设置为“中”,记录阻止的数据包和新连接。

查看 UFW 日志

UFW 日志存储在 /var/log/ufw.log 默认为文件。要查看日志文件,可以使用如下命令 less, tail, 或者 cat。 例如:

sudo less /var/log/ufw.log

此命令使用以下方式显示日志文件 less 命令,它允许您滚动浏览内容。

UFW 的应用程序配置文件

UFW 支持应用程序配置文件,即针对流行应用程序的预定义规则。这些配置文件简化了允许或拒绝特定应用程序连接的过程。您可以使用以下命令查看可用的应用程序配置文件:

sudo ufw app list

要查看特定配置文件的详细信息,请使用 ufw app info 命令后跟配置文件名称:

sudo ufw app info 'Apache Full'

要允许或拒绝应用程序配置文件的连接,请使用 ufw allow 或者 ufw deny 命令后跟配置文件名称:

sudo ufw allow 'Apache Full'

测试 UFW 规则

在应用新规则之前,您可能需要测试它们以确保它们按预期工作。要模拟连接并测试 UFW 规则,您可以使用 nc (netcat)工具。

首先,如果尚未安装 netcat,则需要安装它:

sudo apt install netcat

接下来,在服务器端运行以下命令,替换 <port> 使用您要测试的端口号:

nc -l <port>

在客户端,使用以下命令连接到服务器,替换 <server_ip> 服务器的 IP 地址和 <port> 端口号为:

nc <server_ip> <port>

如果连接成功,您可以通过在终端中输入来在服务器和客户端之间发送消息。如果连接失败,相应的 UFW 规则可能会阻止流量。请确保相应地调整您的 UFW 规则并再次测试。

禁用或重置 UFW

如果需要暂时禁用 UFW,请使用以下命令:

sudo ufw disable

要将 UFW 重置为默认设置并删除所有规则,请使用 ufw reset 命令:

sudo ufw reset

请注意,此操作将删除所有自定义规则,您必须从头开始重新配置 UFW。

安装GUFW

如前所述,GUFW 是用于管理 UFW 规则的图形前端。要在 Ubuntu 上安装 GUFW,请使用以下命令:

sudo apt update
sudo apt install gufw

安装后,您可以从应用程序菜单启动 GUFW。图形界面让您无需使用命令行即​​可轻松管理防火墙规则。

结论

就这样!我们刚刚完成了在 Ubuntu 24.04、22.04 和 20.04 上安装和配置 UFW 的步骤。请记住,正确设置防火墙对于系统安全至关重要。定期检查和更新规则,以确保它们符合您当前的需求。不要犹豫,尝试不同的配置,找到最适合您的配置。最重要的是,继续探索和学习 UFW,以维护安全、强大的 Ubuntu 系统。

Joshua James
跟我来
Joshua James 的最新帖子 (查看全部)