确保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
高级安全增强(可选)
关键操作参考来源: