引言

在服务器管理中,防火墙的配置是保障服务器安全的重要环节。CentOS作为一款流行的Linux发行版,其内置的firewalld防火墙提供了强大的功能和灵活性。本文将详细介绍如何在CentOS上配置IP白名单,以确保只有指定的IP地址可以访问服务器,从而增强服务器的安全性。

准备工作

在开始之前,请确保您已经登录到CentOS服务器,并且拥有root权限。

1. 查看防火墙状态

首先,我们需要查看当前防火墙的状态,了解当前的规则和设置。

systemctl status firewalld

2. 开启或关闭防火墙

如果需要临时关闭防火墙,可以使用以下命令:

systemctl stop firewalld

如果需要永久关闭防火墙,可以使用以下命令:

systemctl disable firewalld

要开启防火墙,使用以下命令:

systemctl start firewalld

要永久开启防火墙,使用以下命令:

systemctl enable firewalld

3. 配置IP白名单

3.1 添加IP地址到白名单

要允许特定IP地址访问服务器,可以使用以下命令添加到白名单:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="指定IP" accept'

例如,要允许IP地址192.168.1.100访问服务器,命令如下:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'

3.2 查看白名单中的IP地址

要查看当前白名单中的所有IP地址,使用以下命令:

firewall-cmd --list-rich-rules

3.3 删除IP地址从白名单

如果需要从白名单中移除某个IP地址,使用以下命令:

firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="指定IP" accept'

例如,要从白名单中移除IP地址192.168.1.100,命令如下:

firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'

4. 重载防火墙规则

在添加或删除规则后,需要重载防火墙以使更改生效。

firewall-cmd --reload

或者,可以使用以下命令立即生效:

systemctl restart firewalld

5. 防火墙高级设置

除了添加和移除IP地址到白名单外,firewalld还支持其他高级设置,如端口转发、服务规则等。以下是一些常用的高级设置命令:

  • 添加端口转发:
firewall-cmd --permanent --add-forward-port=port=指定端口 proto=指定协议 toaddr=目标IP:目标端口
  • 查看开放的端口:
firewall-cmd --list-all
  • 查看防火墙规则:
firewall-cmd --list-all --zone=指定区域

总结

通过以上步骤,您可以在CentOS上轻松配置IP白名单,从而提高服务器安全性。记住,定期检查和更新防火墙规则对于维护服务器安全至关重要。