LAMP(Linux + Apache + MySQL/MariaDB + PHP/Python/Perl)作为经典的开源Web架构,其安全性取决于配置和维护水平。以下是关键分析及加固建议:
Linux系统
yum update
或 apt upgrade
/etc/ssh/sshd_config
)ufw
或iptables
)仅开放必要端口(80,443,22)Apache
ServerTokens Prod
)a2dismod cgi autoindex status
mod_security
和mod_evasive
防御攻击MySQL/MariaDB
mysql_secure_installation
my.cnf
中的SSL参数)PHP
eval()
)、文件包含漏洞。php.ini
:
ini
disable_functions = exec,passthru,shell_exec,system
expose_php = Off
open_basedir = /var/www/html
权限控制
640
(文件)、750
(目录),用户组隔离:
bash
chown -R www-data:www-data /var/www/html
chmod -R 640 /var/www/html/*; find /var/www/html -type d -exec chmod 750 {} \;
加密传输
bash
certbot --apache -d example.com
apache
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
入侵防护
bash
apt install fail2ban
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
日志监控
bash
# 示例:监控登录失败
grep "authentication failure" /var/log/auth.log
openvas-setup
lynis audit system
apache2ctl -t -D DUMP_MODULES
mysqlcheck --all-databases
LAMP本身设计是安全的,但默认配置不安全。通过严格的权限管理、定期更新、最小化服务暴露和加密通信,可达到企业级安全水平。对于高敏感业务,建议增加WAF(如Cloudflare)和HIDS(如OSSEC)进行多层防护。