已编辑 1 一周前 通过 ExtremeHow 编辑团队
翻译更新 1 一周前
Fedora 是一个强大的 Linux 发行版,以其前沿特性和安全环境而闻名。维持系统安全的关键之一是正确配置的防火墙。防火墙充当计算机与外界之间的屏障,根据一组安全规则控制流量的许可或拒绝。 本指南将带您完成在 Fedora 上设置防火墙的过程,确保您拥有有效保护系统所需的工具。我们将使用简单的语言和直接的步骤,所以即使您是 Fedora 或防火墙的新手,也会觉得很容易理解。
在介绍如何在 Fedora 上设置防火墙的具体步骤之前,了解防火墙是什么以及它的作用是很重要的。防火墙是一种网络安全工具,它根据预定义的安全规则监视和控制进出网络的流量。 它本质上是一个守门员,决定哪些数据包被允许通过,哪些不被允许。
防火墙可以作为硬件、软件或者两者的结合来实现。在 Fedora 的背景下,我们将处理软件防火墙,它通过配置规则和策略来监视系统与外部网络的交互,从而提供有效的保护。
Fedora 使用一个叫做firewalld
的工具作为其主要的防火墙管理系统。该工具提供了一个支持网络区的动态防火墙,允许用户轻松管理和配置防火墙规则。默认情况下,firewalld
已安装并在 Fedora 上启用,确保您的系统具有基本的安全级别。
在进行任何更改之前,我们首先检查您 Fedora 系统上 firewalld
的状态。打开终端并运行以下命令:
sudo systemctl status firewalld
如果输出显示 firewalld
处于活动和运行状态,表示防火墙当前已启用。如果它没有运行,可以使用以下命令启动它:
sudo systemctl start firewalld
要确保 firewalld
在系统引导时自动启动,请使用以下命令:
sudo systemctl enable firewalld
Firewalld
使用区的概念,来决定网络连接的信任级别。一个区关联着防火墙将允许或拒绝的一组服务和端口。例如,您可能会为家庭网络设置与公共 Wi-Fi 网络不同的设置。
可以为每个网络接口分配一个区,这些区可以根据具体的安全需求进行配置。
要查看所有可用的区,请使用以下命令:
sudo firewall-cmd --get-zones
输出可能包括以下区域:
通常,当您连接到网络时,网络接口将默认分配到“Public”区,这个区是比较限制的。要将接口分配到另一个区域,可以使用:
sudo firewall-cmd --zone=home --change-interface=eth0
用所需的区替换home
,用您的接口名称替换eth0
。
了解区后,下一步是配置允许或阻止哪些流量。 可以通过指定在区内允许的服务或端口来控制流量。服务是为特定目的(例如 HTTP 或 SSH)所需的端口和协议的预定义集合。
如果您想在特定区域内允许一个特定服务,例如 SSH,您可以使用以下命令:
sudo firewall-cmd --zone=public --add-service=ssh
上述命令允许“public”区中的 SSH 流量。
在某些情况下,您可能希望允许特定端口而不是使用服务名称。例如,要允许端口 8080 上的流量,您可以使用:
sudo firewall-cmd --zone=public --add-port=8080/tcp
如果您使用的是其他协议,请将tcp
替换为适当的协议。
默认情况下,使用firewalld
进行的更改是临时的,在重启时会丢失。要使其永久化,请在命令中添加--permanent
标志:
sudo firewall-cmd --zone=public --add-service=http --permanent
完成永久更改后,请记得重新加载防火墙以应用它们:
sudo firewall-cmd --reload
对于更复杂的防火墙配置,firewalld
提供了复杂规则。这些规则通过允许您指定详细的条件和动作来提供更多的灵活性。复杂规则可用于根据 IP 地址、协议、端口等允许或阻止流量。
假设您只想允许特定 IP 地址的流量。您可以使用以下命令创建复杂规则:
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
该命令允许来自 IP 地址192.168.1.100
的传入流量。
要阻止来自某个 IP 地址的流量,您可以使用以下命令:
sudo firewall-cmd --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" drop'
使用复杂规则,您可以微调防火墙设置以满足网络的具体安全策略。
虽然命令行工具提供了强大的功能,但一些用户可能更喜欢图形界面来管理防火墙。Fedora 提供了一个称为firewall-config
的 GUI 工具,它可以让用户在不使用命令的情况下轻松管理区和规则。
如果尚未安装,您可以使用以下命令安装 GUI 工具:
sudo dnf install firewall-config
安装后,从桌面环境启动firewall-config
应用程序。这将提供一个用户友好的界面来管理防火墙规则和设置。
设置防火墙后,对其进行测试以确保规则按预期工作是很重要的。测试通常包括尝试访问服务并验证它们是否被正确允许或阻止。
以下是一些测试和故障排除防火墙规则的一般步骤:
nmap
扫描您的开放端口并确认防火墙设置。firewalld
的状态和日志是否有任何错误或警告。在 Fedora 上设置防火墙涉及了解firewalld
的基础知识,并配置区、服务、端口和复杂规则以满足网络的安全需求。虽然默认设置提供了良好的起点,但自定义防火墙策略可确保您的 Fedora 系统受到未经授权访问和潜在威胁的保护。
通过遵循本指南,无论您喜欢使用命令行还是图形界面,您现在都将拥有有效管理 Fedora 防火墙的坚实基础。
如果你发现文章内容有误, 您可以