在LAMP架构中,配置Linux防火墙(通常使用iptables或firewalld)以允许Web服务器的流量是非常重要的。以下是使用iptables和firewalld配置防火墙的基本步骤:
查看当前iptables规则:
sudo iptables -L -n -v
允许HTTP和HTTPS流量:
sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT
允许SSH流量(如果你需要远程管理服务器):
sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT
允许MySQL/MariaDB流量(如果你需要远程访问数据库):
sudo iptables -A INPUT -p tcp --dport 3306 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 3306 -m conntrack --ctstate ESTABLISHED -j ACCEPT
保存iptables规则:
sudo iptables-save > /etc/iptables/rules.v4
查看当前firewalld状态:
sudo firewall-cmd --state
允许HTTP和HTTPS流量:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
允许SSH流量:
sudo firewall-cmd --permanent --add-service=ssh
允许MySQL/MariaDB流量:
sudo firewall-cmd --permanent --add-service=mysql
重新加载firewalld配置:
sudo firewall-cmd --reload
--permanent选项确保规则在系统重启后仍然有效。通过以上步骤,你可以配置Linux防火墙以允许LAMP架构中的Web服务器和其他必要服务的流量。