在Ubuntu中进行PHP安全配置是确保Web应用安全性的重要步骤。以下是一些关键的安全配置措施:
确保系统和所有软件包都是最新的,以防止已知的安全漏洞。
sudo apt update
sudo apt upgrade
安装Apache和PHP,并配置Apache以使用PHP模块。
sudo apt install apache2 libapache2-mod-php
编辑Apache的配置文件 /etc/apache2/mods-enabled/php7.4.conf
(根据你的PHP版本调整),确保以下配置被添加或确认:
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
然后重启Apache服务:
sudo systemctl restart apache2
编辑PHP的配置文件 php.ini
。这个文件通常位于 /etc/php/7.4/apache2/
目录下(根据你的PHP版本调整路径)。
disable_functions = exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source
upload_max_filesize = 2M
post_max_size = 8M
safe_mode = On
display_errors = Off
log_errors = On
error_reporting = E_ALL
expose_php = Off
配置Apache以使用 php.ini
文件:
apache2ctl -M | grep php7_module
启用 mod_security
和 mod_evasive
等Apache模块来防止攻击。
sudo apt install libapache2-mod-security2
sudo a2enmod security2
使用 ufw
(Uncomplicated Firewall)来限制对Web服务器的访问:
sudo ufw allow 'Apache Full'
sudo ufw enable
为了加密客户端和服务器之间的数据传输,使用SSL/TLS证书。你可以通过Let’s Encrypt免费获取证书:
sudo apt install certbot python3-certbot-apache
sudo certbot --apache
保持系统和软件的最新状态,定期应用安全补丁:
sudo apt update
sudo apt upgrade
通过以上步骤,你可以显著提高Ubuntu上PHP运行环境的安全性。请根据你的具体需求和环境调整配置。