在Ubuntu上配置LNMP(Linux, Nginx, MySQL, PHP)防火墻主要涉及配置UFW(Uncomplicated Firewall)。以下是詳細步驟:
首先,確保你的系統上已經安裝了UFW。如果沒有安裝,可以使用以下命令進行安裝:
sudo apt update
sudo apt install ufw
安裝完成后,啟用UFW:
sudo ufw enable
系統會提示你確認是否啟用UFW,輸入 y 并按回車鍵。
接下來,配置UFW規則以允許必要的端口。LNMP通常需要以下端口:
你可以使用以下命令來添加這些規則:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 3306/tcp
sudo ufw allow 9000/tcp
為了能夠遠程管理服務器,確保允許SSH訪問:
sudo ufw allow ssh
你可以使用以下命令查看當前的UFW狀態和規則:
sudo ufw status
如果你需要臨時禁用UFW,可以使用以下命令:
sudo ufw disable
如果你在配置過程中修改了防火墻規則,可以重新加載防火墻以應用更改:
sudo ufw reload
修改SSH端口:為了提高安全性,建議修改SSH的默認端口(22)為一個非標準端口,例如2222,并在 /etc/ssh/sshd_config 文件中進行配置:
Port 2222
然后重啟SSH服務:
sudo systemctl restart sshd
修改Nginx配置:確保Nginx配置文件(通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-available/default)中沒有阻止外部訪問的設置,并監聽正確的端口。
MySQL安全配置:運行 mysql_secure_installation 腳本進行基本的安全設置,包括設置強密碼、刪除匿名用戶、禁止遠程root登錄等。
PHP配置:編輯PHP配置文件(通常位于 /etc/php/7.x/fpm/php.ini),設置 display_errors 為 On,以便在開發過程中顯示錯誤信息,并設置 error_reporting 為 E_ALL,以報告所有錯誤。