在LNMP(Linux, Nginx, MySQL, PHP)环境中配置防火墙通常涉及以下几个步骤。以下是一个基于CentOS 7的示例,使用firewalld
作为防火墙管理工具。
首先,确保你已经安装了firewalld
。如果没有安装,可以使用以下命令进行安装:
sudo yum install firewalld -y
然后启动并设置firewalld
开机自启:
sudo systemctl start firewalld
sudo systemctl enable firewalld
接下来,你需要配置防火墙规则以允许特定的端口通过。对于LNMP环境,通常需要允许80端口(Nginx)和3306端口(MySQL)。
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --permanent --add-service=mysql
这些命令将HTTP、HTTPS和MySQL服务永久添加到防火墙规则中。
添加规则后,需要重新加载防火墙配置以使更改生效:
sudo firewall-cmd --reload
最后,验证防火墙配置是否正确应用:
sudo firewall-cmd --list-all
这将显示当前的防火墙规则,你可以检查是否包含了允许80和3306端口的规则。
在某些情况下,关闭SELinux可能会简化防火墙配置。你可以通过以下命令临时关闭SELinux:
sudo setenforce 0
或者永久关闭SELinux,编辑/etc/selinux/config
文件,将SELINUX=enforcing
改为SELINUX=disabled
,然后重启系统。
sudo vi /etc/selinux/config
# 将 SELINUX=enforcing 改为 SELINUX=disabled
# 保存并退出
sudo reboot
请注意,关闭SELinux可能会降低系统的安全性,因此请根据你的实际需求进行选择。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读:LNMP中如何配置防火墙规则