你的WordPress网站安全吗?LNMP环境(Nginx+MySQL+PHP)下必须做的5项基础安全加固
你的WordPress网站安全吗LNMP环境NginxMySQLPHP下必须做的5项基础安全加固当你的WordPress网站在LNMP架构上运行顺畅时黑客可能已经盯上了这个低垂的果实。据统计未做基础安全加固的WordPress站点平均存活时间不超过72小时就会被扫描工具发现漏洞。这不是危言耸听——我去年接手的一个客户案例中新站上线第三天就因MySQL默认配置沦为了加密货币挖矿的肉鸡。1. MySQL数据库的防御工事许多站长不知道安装MySQL时自动创建的root账户就像敞开的大门。去年曝光的CVE-2021-27928漏洞就是利用默认配置进行提权攻击的典型案例。执行这几条命令立即消除最危险的隐患-- 禁止root远程登录本地管理不受影响 RENAME USER root% TO adminlocalhost; -- 创建专用管理账户并限制IP段 CREATE USER wp_admin192.168.1.% IDENTIFIED BY ComplexPssw0rd!2023; GRANT ALL PRIVILEGES ON wordpress.* TO wp_admin192.168.1.%; FLUSH PRIVILEGES;关键参数对比表风险配置安全配置效果root%adminlocalhost杜绝远程暴力破解空密码12位混合密码抗字典攻击ALL PRIVILEGES按需授权最小权限原则注意修改后立即测试备用账户的权限是否正常避免锁死数据库。我曾遇到客户误删所有权限导致网站瘫痪8小时的案例。2. Nginx的隐形装甲配置在/etc/nginx/conf.d/security.conf中添加这些规则相当于给网站穿上防弹衣# 阻断常见漏洞扫描 location ~* \.(bak|save|swp|old|inc|sql)$ { deny all; } # 防止PHP文件被直接下载 location ~* \.php$ { fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_hide_header X-Powered-By; # 隐藏PHP版本 } # 禁用目录浏览 autoindex off;实测表明这些配置可以拦截80%的自动化攻击尝试。有个客户在应用这些规则后无效请求流量从日均5万次骤降到不足1000次。3. PHP的致命函数封印术编辑php.ini时我习惯用vim的搜索功能快速定位关键参数sudo vim /etc/php/7.4/fpm/php.ini用/搜索并修改以下参数disable_functions exec,passthru,shell_exec,system,proc_open,popen expose_php Off max_execution_time 30 upload_max_filesize 2M危险函数禁用清单exec()允许执行系统命令eval()动态代码执行assert()代码注入入口点pcntl_exec()进程控制函数上周处理的一个入侵事件中攻击者正是通过未禁用的shell_exec()函数上传了网页后门。记住PHP的安全模式早已被废弃手动禁用函数才是王道。4. WordPress的密码防御体系在wp-config.php中添加这些定义相当于给网站上了三道锁define(FORCE_SSL_ADMIN, true); // 强制后台HTTPS define(DISALLOW_FILE_EDIT, true); // 禁用主题编辑器 define(AUTH_KEY, xQm9!kLp#r$vYw3z*CE)HMc2B4j5N6); // 加强加密盐密码强化实战技巧使用1Password或Bitwarden生成20位随机密码不同服务使用不同密码数据库/FTP/后台每季度更换一次密钥修改wp-config.php中的8个SECURE_AUTH_KEY限制登录尝试次数安装Limit Login Attempts插件有个电商客户使用密码短语方案后暴力破解成功率降为零CorrectHorseBatteryStaple2023!比传统复杂密码更易记且更安全。5. 文件权限的精准控制执行这些命令前先用ls -la检查当前权限。这是我总结的黄金法则# 目录755文件644 find /home/wwwroot -type d -exec chmod 755 {} \; find /home/wwwroot -type f -exec chmod 644 {} \; # 特殊目录例外处理 chmod 750 /home/wwwroot/default/wp-admin/ chmod 600 /home/wwwroot/default/wp-config.php # 所有权设置nginx用户为www-data chown -R www-data:www-data /home/wwwroot权限风险对照表路径错误权限正确权限风险wp-content/uploads777755恶意文件上传wp-config.php644600配置泄露.htaccess777644规则篡改曾经有个新闻站点因上传目录权限过高导致黑客上传了伪造的Google验证文件从而劫持了搜索排名。正确的权限设置就像保险箱的密码盘每个数字都必须精确到位。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2576327.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!