视窗苹果电脑软件设置安全生产力Linux安卓性能配置苹果自定义设备管理iPhone设置 全部

在Linux上使用UFW设置防火墙的综合指南

已编辑 2 几周前 通过 ExtremeHow 编辑团队

安全防火墙抗拒绝服务网络安全配置命令行服务器系统管理员最佳实践管理

在Linux上使用UFW设置防火墙的综合指南

翻译更新 2 几周前

保护您的Linux系统对于维护数据的完整性和机密性非常重要。防火墙在防止未经授权的访问和恶意攻击中起着至关重要的作用。UFW,全称为简单防火墙,是在Ubuntu和基于Debian系统上管理防火墙规则的易用界面。本指南详细解释了如何在Linux服务器上使用UFW设置防火墙。在本指南中,将使用各种示例来说明关键概念和步骤,以便您能有效使用UFW保护您的服务器。

了解防火墙和UFW

在深入了解如何使用UFW设置防火墙之前,有必要了解什么是防火墙。防火墙是一种网络安全工具,它根据预定义的安全规则监控和控制输入和输出的网络流量。基本上,它充当可信网络和不可信网络(可能是更广泛的互联网)之间的屏障。

UFW通过一个易于理解的命令行界面简化了防火墙管理过程。它为传统的`iptables`工具提供了一个抽象层,这对于初学者来说可能相当复杂。UFW预装在许多Ubuntu和基于Debian的系统上,并提供通过直接命令启用或禁用规则的简单性。

安装UFW

在开始配置UFW之前,您需要确保它已安装在系统上。大多数基于Ubuntu和Debian的发行版都预装了UFW。但在某些情况下,您可能需要手动安装它。打开终端并运行以下命令检查是否已安装:

sudo ufw status

如果安装了UFW,此命令将指示是否启用。如果命令返回“command not found”或您想确保拥有最新版本,您可以使用以下命令安装UFW:

sudo apt update sudo apt install ufw

启用UFW

一旦安装了UFW,您需要启用它。在此之前,通常的做法是定义一些基本规则以避免意外锁定。您可以使用以下命令启用UFW:

sudo ufw enable

UFW现在将被激活,您将看到一条消息,表明防火墙已激活并在系统启动时启用。不设置任何规则集启用UFW时,它会阻止除系统关键服务所需的连接。通常允许出站连接。

设置默认策略

配置防火墙的第一步是设置默认策略。UFW的默认策略是拒绝所有传入连接并允许所有传出连接。对于大多数用户来说,这种设置是合适的,确保不允许外部尝试连接到系统,除非明确指定。

您可以使用以下命令设置默认策略:

sudo ufw default deny incoming sudo ufw default allow outgoing

这两个命令配置UFW拒绝所有未经请求的传入连接,同时允许所有传出连接通过防火墙。这意味着您必须明确允许来自IP地址或服务的传入连接,以便允许访问您的系统。

允许连接

要启用您希望允许的特定服务的流量(如SSH、HTTP和HTTPS),您需要显式启用这些连接。UFW提供直观的命令来允许这些服务。

允许SSH连接

SSH是在远程管理服务器时的关键服务。它可能默认启用以允许在首次激活防火墙时进行管理。您可以使用以下命令允许SSH连接:

sudo ufw allow ssh

该命令简化为允许通过端口22的流量,这是SSH的标准端口。幕后运作如下:

sudo ufw allow 22/tcp

允许HTTP和HTTPS连接

如果您正在运行一个Web服务器或托管网站,必须允许HTTP和HTTPS流量。可以使用以下命令完成:

sudo ufw allow http sudo ufw allow https

上述命令打开端口80和443,它们分别是HTTP和HTTPS流量的默认端口。如果您托管Web服务,此步骤是为了访问所必需的。

指定端口号和IP地址

在允许服务时,您还可能需要指定自定义端口号或允许来自特定IP地址的访问。

允许特定端口号

假设您在自定义端口(此场景中为3010)上操作服务,您可以按如下方式允许访问:

sudo ufw allow 3010/tcp

如果您的服务通过UDP协议运行,则将`3010`替换为指定的端口号,并将`tcp`替换为`udp`。

允许来自特定IP地址的连接

为了更好的安全性,您可能想要限制某些服务仅允许特定IP地址访问。例如,假设您仅希望允许IP地址`192.168.1.10`的SSH连接。您可以使用以下命令配置:

sudo ufw allow from 192.168.1.10 to any port 22

此命令仅允许来自指定IP地址的SSH连接,减少了未经授权用户攻击的可能性。

拒绝连接

在配置防火墙时,您可能还希望拒绝特定连接作为额外的安全层。拒绝流量和允许它一样简单;您可以使用相同的语法,只需将“allow”替换为“deny”。

要拒绝特定端口上的流量,请使用:

sudo ufw deny 1234

将`1234`替换为您希望拒绝的所有连接的端口号。

删除规则

有时,您可能需要删除特定规则。要删除特定规则,使用相同的命令,不使用“allow”或“deny”,并将其替换为“delete”:

sudo ufw delete allow 3010/tcp

以上命令将删除允许端口`3010`上流量的现有规则。

高级UFW功能

检查UFW状态

您可以检查防火墙的当前状态,包括当前活动的规则,使用以下命令:

sudo ufw status verbose

它显示详细信息,包括防火墙是否活动、默认策略以及每条规则的详细视图。

UFW日志记录

如果您需要跟踪防火墙行为(如潜在的攻击或未经授权的访问尝试),您可以使用以下命令启用日志记录:

sudo ufw logging on

您可以设置不同的日志记录级别,如低、中和高,以控制UFW记录其活动的详细程度。根据您希望日志多详细,选择级别。

使用IPv6的UFW

对于同时使用IPv4和IPv6的系统,可能需要编辑`/etc/default/ufw`配置文件。通过将`IPV6`更改为`yes`,确保UFW的配置允许IPv6:

IPV6=yes

一旦配置好,IPv6支持将像IPv4一样运行,前提是您的服务器已连接到IPv6网络并且相关服务需要IPv6流量。

结论

使用UFW,在您的Linux系统上设置防火墙变得既简单又强大。通过了解防火墙规则的基础知识以及UFW如何工作,您可以更好地保护系统免受外部威胁,同时允许必要的连接。本指南涵盖了基本的UFW操作,确保您能够有效管理防火墙规则。无论您是系统管理员、开发人员,还是拥有私人服务器的人,使用正确配置的防火墙保护系统是维持系统安全和性能的重要措施。

请记住,系统的安全性取决于您如何细致地配置和维护防火墙规则。定期审核、测试防火墙设置以及随时了解最新的安全最佳实践是强大服务器安全态势的关键方面。

如果你发现文章内容有误, 您可以


评论