温馨提示×

LNMP如何保护Debian

小樊
36
2026-08-14 21:22:02
栏目: 智能运维

Debian + LNMP(Linux + Nginx + MySQL/MariaDB + PHP) 环境中,“保护 Debian”通常指 系统安全加固 + Web 服务安全 + 防入侵。下面按 由系统到应用 的顺序,给你一套实操性很强的安全方案。


一、系统层面保护 Debian

1️⃣ 系统更新与源安全

apt update && apt upgrade -y
apt autoremove -y

✅ 开启自动安全更新(推荐)

apt install unattended-upgrades
dpkg-reconfigure unattended-upgrades

2️⃣ 禁用 root 直接登录(SSH)

编辑:

nano /etc/ssh/sshd_config

修改:

PermitRootLogin no
PasswordAuthentication no

✅ 使用 SSH 密钥登录

systemctl restart sshd

3️⃣ 配置防火墙(UFW)

apt install ufw
ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

查看状态:

ufw status

4️⃣ 防暴力破解(fail2ban)

apt install fail2ban
systemctl enable fail2ban

常用保护:

  • SSH
  • Nginx 登录接口
  • WordPress / phpMyAdmin

二、Nginx 安全加固

1️⃣ 隐藏版本信息

server_tokens off;

2️⃣ 限制请求大小(防 DOS)

client_max_body_size 10m;

3️⃣ 禁止访问敏感文件

location ~ /\. {
    deny all;
}

location ~ /(wp-config\.php|\.env|\.git) {
    deny all;
}

4️⃣ 防止恶意 User-Agent

if ($http_user_agent ~* (nikto|sqlmap|scan|curl|python)) {
    return 403;
}

三、PHP 安全配置

编辑:

nano /etc/php/8.x/fpm/php.ini

推荐设置:

expose_php = Off
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
allow_url_fopen = Off
display_errors = Off

重启 PHP-FPM:

systemctl restart php8.x-fpm

四、MySQL / MariaDB 安全

1️⃣ 运行安全脚本

mysql_secure_installation

✅ 设置 root 密码
✅ 删除 test 库
✅ 禁止远程 root 登录


2️⃣ 禁止 MySQL 外网访问

bind-address = 127.0.0.1

五、LNMP 常见 Web 应用防护

✅ phpMyAdmin

  • 改路径:/pma-hidden
  • 限制 IP
allow 1.2.3.4;
deny all;

✅ WordPress

  • 禁用文件编辑
define('DISALLOW_FILE_EDIT', true);
  • 限制 xmlrpc
location = /xmlrpc.php {
    deny all;
}

六、文件权限安全(非常重要)

网站目录

chown -R www-data:www-data /var/www/html
chmod -R 755 /var/www/html

✅ 上传目录可写但不可执行:

chmod 755 uploads

七、日志与监控

查看异常访问

tail -f /var/log/nginx/access.log
tail -f /var/log/nginx/error.log

安装监控(可选)

  • netdata
  • prometheus + grafana
  • psacct(查看历史命令)

八、备份策略(防勒索)

tar -czf /backup/site-$(date +%F).tar.gz /var/www
mysqldump -u root -p --all-databases > /backup/db.sql

✅ 异地备份(rsync / 对象存储)


九、最小化原则(最重要)

✅ 不装多余软件
✅ 不用 root 运行服务
✅ 不用默认端口
✅ 不暴露调试信息


十、安全等级建议

场景 建议
个人博客 基础加固
企业官网 全项加固
金融/API WAF + 审计

如果你愿意,我可以: ✅ 给你 LNMP 一键安全脚本
✅ 针对 WordPress / Laravel / 自建 API 做专项加固
✅ 帮你 检查当前服务器安全状态

只要告诉我你的 Debian 版本 + 用途 即可。

0