在Linux LAMP(Linux, Apache, MySQL, PHP)环境中设置防火墙规则,通常使用的是iptables
或ufw
(Uncomplicated Firewall)。以下是使用这两种工具设置防火墙规则的步骤:
使用 iptables
-
查看当前防火墙规则:
sudo iptables -L -n
-
允许SSH连接(默认端口22):
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
-
允许HTTP连接(默认端口80):
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
-
允许HTTPS连接(默认端口443):
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
-
允许MySQL连接(默认端口3306):
sudo iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
-
拒绝所有其他输入:
sudo iptables -P INPUT DROP
-
保存规则(具体命令可能因发行版而异):
sudo iptables-save > /etc/iptables/rules.v4
使用 ufw
-
启用
ufw
:sudo ufw enable
-
允许SSH连接:
sudo ufw allow 22/tcp
-
允许HTTP连接:
sudo ufw allow 80/tcp
-
允许HTTPS连接:
sudo ufw allow 443/tcp
-
允许MySQL连接:
sudo ufw allow 3306/tcp
-
查看当前防火墙状态和规则:
sudo ufw status verbose
-
禁用
ufw
(如果需要):sudo ufw disable
注意事项
- 备份现有规则:在修改防火墙规则之前,建议备份现有的规则,以防出现问题。
- 测试规则:在生产环境中应用新规则之前,先在测试环境中进行测试。
- 持久化规则:确保防火墙规则在系统重启后仍然有效。对于
iptables
,可以使用iptables-save
和iptables-restore
命令,或者配置/etc/network/if-pre-up.d/iptables
脚本。对于ufw
,规则通常会自动保存。
通过以上步骤,你可以在Linux LAMP环境中设置基本的防火墙规则,确保服务器的安全性。