在 Debian + LNMP(Linux + Nginx + MySQL/MariaDB + PHP)环境下,“防黑客”是一个系统性的安全工作,不能只靠某一项。下面给你一套实战可落地的防护清单,从系统层到应用层都覆盖。
apt update && apt upgrade -y
定期更新内核和安全补丁。
vim /etc/ssh/sshd_config
修改:
PermitRootLogin no
PasswordAuthentication no
使用 SSH 密钥登录
重启:
systemctl restart ssh
apt install ufw
ufw default deny incoming
ufw allow 22
ufw allow 80
ufw allow 443
ufw enable
apt install fail2ban
默认已保护 SSH,可自行加 Nginx 规则。
server_tokens off;
location ~ /\. {
deny all;
}
location ~* /(wp-admin|admin|config) {
allow 你的IP;
deny all;
}
if ($request_method !~ ^(GET|POST|HEAD)$ ) {
return 444;
}
location / {
proxy_set_header X-Forwarded-For $remote_addr;
}
配合 WAF(见下文)。
vim /etc/php/*/fpm/php.ini
关键项:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
expose_php = Off
allow_url_include = Off
display_errors = Off
mysql_secure_installation
bind-address = 127.0.0.1
GRANT SELECT,INSERT ON db.* TO 'user'@'localhost';
推荐:
location /uploads {
location ~ \.php$ {
deny all;
}
}
/var/log/nginx/access.log
/var/log/auth.log
apt install tripwire
✅ 弱密码
✅ 旧版本漏洞(WordPress / PHP / Nginx)
✅ 上传 webshell
✅ Redis / MySQL 暴露公网
✅ 未授权 API
Debian LNMP 防黑客 = 系统加固 + 防火墙 + Nginx限制 + PHP禁函数 + WAF + 备份
如果你愿意,可以告诉我:
我可以给你一套更精准的配置方案。