本文介紹如何在centos 7.2系統上為LNMP(Linux, nginx, mysql/MariaDB, php)環境配置防火墻規則,保障服務器安全。 我們將使用iptables進行配置,請注意,在生產環境操作前,務必在測試環境中進行驗證。
步驟一:禁用firewalld
首先,我們需要禁用CentOS默認的firewalld防火墻服務:
systemctl stop firewalld.service systemctl disable firewalld.service
步驟二:設置iptables默認策略
接下來,設置iptables的默認策略,拒絕所有入站和轉發連接,允許所有出站連接:
sudo iptables -P INPUT DROP sudo iptables -P FORWARD DROP sudo iptables -P OUTPUT ACCEPT
步驟三:添加允許規則
然后,我們添加允許特定端口和連接的規則:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- 允許已建立連接和相關連接: 這允許返回的流量通過防火墻。
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
- 允許ICMP (ping):
sudo iptables -A INPUT -p icmp -j ACCEPT
- 允許本地回環接口流量:
sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
步驟四:保存和重啟iptables
最后,保存規則并重啟iptables服務使更改生效:
sudo iptables-save > /etc/sysconfig/iptables sudo systemctl restart iptables
重要提示:
- 以上規則僅為基本配置,根據實際需求可能需要添加其他規則,例如允許MySQL端口(3306)訪問等。
- 不熟悉iptables的用戶,建議使用更易用的防火墻管理工具,如ufw。
- 定期檢查和更新防火墻規則,確保服務器安全。
通過以上步驟,你就能為你的LNMP服務器設置基本的防火墻規則了。 記住,安全至關重要,請謹慎操作并根據你的具體情況調整規則。