確保Ubuntu上PHP-FPM的安全性可從以下方面入手:
系統與軟件更新
定期更新系統和PHP-FPM及相關軟件包,修復安全漏洞:
sudo apt update && sudo apt upgrade -y
用戶與權限配置
www-data
)運行PHP-FPM,在配置文件中指定:user = www-data
group = www-data
sudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
配置文件安全設置
listen = /run/php/php{version}-fpm.sock
),避免暴露TCP端口;若需使用TCP,需限制僅本地訪問(listen = 127.0.0.1:9000
)并配置防火墻。php.ini
中注釋或刪除exec
、system
等高風險函數。pm.max_children
等參數限制進程數量,避免資源耗盡攻擊。防火墻與網絡隔離
使用ufw
限制端口訪問,僅允許HTTP/HTTPS及必要的管理端口:
sudo ufw allow 'Nginx Full'
sudo ufw enable
日志與監控
php_admin_flag[log_errors] = on
error_log = /var/log/php-fpm/error.log
高級安全增強(可選)
關鍵操作參考來源: