在LNMP(Linux, Nginx, MySQL, PHP)环境中配置防火墙通常涉及使用 firewalld
或 iptables
。以下是在CentOS 7及以上版本中使用 firewalld
配置防火墙的步骤:
如果您想永久关闭firewalld,可以运行以下命令:
# 停止firewalld服务
systemctl stop firewalld.service
# 禁止firewalld开机启动
systemctl disable firewalld.service
如果您选择使用iptables作为防火墙,可以按照以下步骤进行配置:
备份原有的iptables配置:
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak
编辑iptables配置文件:
vi /etc/sysconfig/iptables
添加允许80端口和3306端口的规则:
在文件的末尾添加以下内容:
# 允许80端口通过防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
# 允许3306端口通过防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存并退出编辑器。
重启iptables服务以应用更改:
/etc/init.d/iptables restart
如果您想使用firewalld,可以按照以下步骤进行配置:
关闭firewalld:
systemctl stop firewalld
systemctl disable firewalld
安装iptables(如果尚未安装):
yum install -y iptables
配置iptables规则:
vi /etc/sysconfig/iptables
添加以下内容以允许80端口和3306端口:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
重启firewalld服务:
systemctl restart firewalld
验证防火墙状态:
firewall-cmd --state
通过以上步骤,您可以在LNMP环境中配置防火墙,确保只有指定的端口(如80和3306)对外开放,从而提高服务器的安全性。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: linux安装指令能解决什么难题