以下是Ubuntu上配置PHP安全设置的关键步骤:
更新系统与软件包
sudo apt update && sudo apt upgrade
配置PHP核心安全参数
php.ini(路径:/etc/php/{版本}/apache2/php.ini或/etc/php/{版本}/fpm/php.ini):
disable_functions = exec,system,passthru,shell_exec,proc_openupload_max_filesize = 2M,post_max_size = 8Mexpose_php = Off,display_errors = Off,log_errors = Onallow_url_fopen = Off,allow_url_include = Offsudo systemctl restart apache2 # Apache
sudo systemctl restart php{版本}-fpm # PHP-FPM
启用Web安全模块
mod_security(Apache防火墙模块):sudo apt install libapache2-mod-security2
sudo a2enmod security2
sudo systemctl restart apache2
配置防火墙与加密
sudo ufw allow 'Apache Full' # 允许HTTP/HTTPS
sudo ufw enable
sudo a2enmod ssl
sudo systemctl restart apache2
强化会话与权限管理
php.ini设置会话安全:session.cookie_secure = On,session.cookie_httponly = On,session.cookie_samesite = Strictsudo chown -R www-data:www-data /var/www/html
sudo chmod -R 755 /var/www/html
定期维护与监控
/var/log/apache2/error.log)。注:具体配置需根据实际环境调整,生产环境建议先在测试环境验证。