在CentOS上配置LAMP(Linux, Apache, MySQL, PHP)環境時,防火墻的配置是一個重要的步驟,用于保護服務器的安全。以下是一些CentOS LAMP防火墻配置的技巧和步驟:
首先,確保你的CentOS系統上已經安裝了firewalld
。如果沒有安裝,可以使用以下命令進行安裝:
sudo yum install firewalld
安裝完成后,啟動并設置firewalld
在系統啟動時自動啟動:
sudo systemctl start firewalld
sudo systemctl enable firewalld
對于運行Web服務的服務器,通常需要開放以下端口:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
為了安全地遠程管理服務器,需要開放SSH端口(默認22):
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
如果運行MySQL/MariaDB數據庫,需要開放3306端口:
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
在開放端口時,應僅開放必要的服務端口,避免開放不必要的端口以減少安全風險。例如,禁用某個IP為192.168.0.100
的地址禁止訪問80端口:
sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.0.100' port protocol='tcp' port='80' reject"
sudo firewall-cmd --reload
firewalld
使用區域來定義不同的網絡環境,如公共網絡、內部網絡和信任網絡等。每個區域都有自己的防火墻規則集合。例如,將網絡接口和源分配給public
區域:
sudo firewall-cmd --get-default-zone
firewalld
支持動態更新防火墻規則,這意味著你可以在運行時添加、刪除或修改規則,而無需重新加載整個防火墻配置:
sudo firewall-cmd --add-port=8088/tcp --permanent
sudo firewall-cmd --reload
在配置完所有規則后,需要重新加載firewalld
以使規則生效,并驗證規則是否正確添加:
sudo firewall-cmd --reload
sudo firewall-cmd list-all
firewalld
以使規則生效。通過以上步驟和技巧,你可以在CentOS上成功配置LAMP環境的防火墻,確保服務器的安全性和穩定性。