当前位置:首页 > RockyLinux > 正文

RockyLinux端口安全配置(手把手教你用firewalld加固系统防火墙)

在当今网络环境中,服务器安全至关重要。作为CentOS的继任者,RockyLinux因其稳定性和兼容性被广泛用于企业级部署。而端口安全配置是保障系统免受未授权访问的第一道防线。本文将为初学者详细讲解如何在RockyLinux中通过 firewalld 工具进行防火墙设置RockyLinux安全加固,确保你的服务器只开放必要的服务端口。

RockyLinux端口安全配置(手把手教你用firewalld加固系统防火墙) RockyLinux端口安全配置 防火墙设置 RockyLinux安全加固 firewalld使用教程 第1张

一、为什么需要端口安全配置?

每个运行在网络上的服务(如SSH、Web、数据库等)都会监听特定端口。如果不对这些端口进行管理,攻击者可能利用开放的无用端口发起扫描、暴力破解甚至远程执行攻击。因此,遵循“最小权限原则”——只开放必需的端口,是RockyLinux安全加固的核心策略之一。

二、确认 firewalld 是否已启用

RockyLinux 默认使用 firewalld 作为动态防火墙管理工具。首先,我们需要确认它是否正在运行:

# 查看 firewalld 状态sudo systemctl status firewalld

如果显示 active (running),说明防火墙已启用。若未启用,请执行以下命令启动并设置开机自启:

sudo systemctl start firewalldsudo systemctl enable firewalld

三、查看当前开放的端口和服务

使用以下命令查看当前防火墙规则:

# 查看默认区域的配置sudo firewall-cmd --list-all

输出示例:

public (active)  target: default  icmp-block-inversion: no  interfaces: eth0  sources:  services: ssh dhcpv6-client  ports: 80/tcp 443/tcp  protocols:  forward: no  masquerade: no  ...

可以看到,当前只允许 sshdhcpv6-client 服务以及 80/tcp443/tcp 端口通信。

四、添加/删除端口(永久生效)

假设你要为 Web 服务器开放 80 和 443 端口,并且希望重启后依然有效,需使用 --permanent 参数:

# 永久开放 HTTP 和 HTTPS 端口sudo firewall-cmd --permanent --add-port=80/tcpsudo firewall-cmd --permanent --add-port=443/tcp# 重新加载防火墙使配置生效sudo firewall-cmd --reload

若要删除某个端口(例如不再需要 8080 端口):

sudo firewall-cmd --permanent --remove-port=8080/tcpsudo firewall-cmd --reload

五、使用预定义服务简化配置

firewalld 提供了许多预定义的服务配置(如 httphttpsmysql 等),位于 /usr/lib/firewalld/services/ 目录下。你可以直接启用这些服务,而无需手动指定端口:

# 启用 HTTP 和 HTTPS 服务(效果等同于开放 80/443)sudo firewall-cmd --permanent --add-service=httpsudo firewall-cmd --permanent --add-service=httpssudo firewall-cmd --reload

六、限制 SSH 访问(高级安全建议)

SSH 是远程管理的关键,但也常成为攻击目标。建议仅允许可信 IP 访问 SSH 端口(默认 22):

# 仅允许 192.168.1.0/24 网段访问 SSHsudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="22" accept'# 删除默认的 ssh 服务(避免全局开放)sudo firewall-cmd --permanent --remove-service=sshsudo firewall-cmd --reload

七、验证配置是否生效

配置完成后,务必验证端口是否按预期开放。可使用以下命令从本地测试:

# 查看所有开放端口sudo firewall-cmd --list-ports# 查看所有启用的服务sudo firewall-cmd --list-services

也可使用外部工具(如 nmap)从另一台机器扫描目标服务器端口,确认非必要端口已被屏蔽。

八、总结

通过本文的步骤,你已经掌握了在 RockyLinux 中进行端口安全配置的基本方法。记住:安全不是一次性的任务,而是一个持续的过程。定期审查防火墙规则、及时关闭不再使用的服务端口,是保障服务器长期安全的关键。

无论你是系统管理员还是刚接触 Linux 的新手,掌握 firewalld 的使用都是RockyLinux安全加固的必备技能。希望这篇firewalld使用教程能帮助你构建更安全的服务器环境!