做外贸独立站或者中文站点,最怕的不是没流量,而是早上一睁眼,发现Google搜索结果里你的主推产品页全变成了菠菜广告,收录直接腰斩。很多新人站长图省事,遇到插件报错、图片传不上去,张手就是一个 chmod -R 777 /var/www/html,殊不知这等于给黑客敞开大门送肉。做好 Linux网站根目录文件权限防提权加固,不是大厂运维的专利,而是每个自建站站长保住SEO收录和询盘的第一道底线。
今天不扯虚头巴脑的理论,结合我这6年运维几百个外贸站踩过的坑,聊聊权限加固怎么落地,顺便教大家怎么把枯燥的技术点,写成高权重的干货文案。
写站长博客或者技术软文,最忌讳词典式说教。把安全策略和站长熟悉的词语、成语绑在一起,不管是写技术汇报还是做SEO内容输出,读者才能一眼看懂。
www-data、nginx)只能在被允许的格子里活动,绝不能给多余的写权限和执行权限。deploy 或 root),Web 进程只有读取权,攻击者想篡改只能干瞪眼。下面这套方案,是我给所有高并发外贸站上线的标准初始化脚本逻辑,直接套用即可。
绝大多数站长挂马,都是因为把 PHP 文件的写权限直接放给了 Web 进程。正确的做法是:动静分离,写执互斥。能写的目录绝不给执行权,能执行的目录绝不给写权。
| 目录/文件类型 | 推荐所有者:组 | 推荐权限 | 安全目的 |
|---|---|---|---|
| 网站根目录及核心代码 | root:www-data | 目录 755 / 文件 644 | Web 进程只能读,无法写入篡改 |
上传目录 (uploads) | www-data:www-data | 目录 755 / 文件 644 | 允许传图,但通过 Web 服务器禁脚本 |
敏感配置文件 (wp-config.php) | root:www-data | 440 或 400 | 阻断跨站读取数据库密码 |
连接你的 Linux 服务器,执行以下几行命令,完成网站根目录文件权限防提权加固:
# 1. 进入你的网站根目录 cd /var/www/html/your-site.com # 2. 将所有文件所有者设为 root(或部署用户),用户组设为 Web 服务组(如 www-data) chown -R root:www-data . # 3. 递归修复目录为 755,普通文件为 644 find . -type d -exec chmod 755 {} \; find . -type f -exec chmod 644 {} \; # 4. 单独放行上传缓存目录(按实际框架路径调整) chown -R www-data:www-data wp-content/uploads/ find wp-content/uploads/ -type d -exec chmod 755 {} \; find wp-content/uploads/ -type f -exec chmod 644 {} \; # 5. 锁定核心配置文件,只允许属主和属组成员读 chmod 440 wp-config.php
老站长踩坑警示: 别偷懒直接用一个
chmod -R 644,一旦你把目录也改成 644,Nginx 就会直接报403 Forbidden(因为目录需要执行权限x才能被cd进入和检索)。务必用find分开处理文件和文件夹!
光改文件权限还不够,黑客可能绕过前台上传一个 .php 到图片目录。在 Nginx 虚拟主机配置中加上这一段,彻底掐死执行权限:
# 禁止 uploads 等上传目录执行 PHP 脚本 location ~* ^/(uploads|images|wp-content/uploads)/.*\.php$ { deny all; return 404; }
很多做 SEO 的技术站长,写出来的技术文章像说明书,根本没人看,跳出率高达 80%。做技术向文案,要抓住站长的恐慌感和实操欲。
运维文章最忌讳空谈。介绍每一个 chmod 命令时,顺手带一句这玩意儿对 SEO 的影响:
“如果你的上传目录被挂了木马,搜索引擎爬虫抓到大量违禁词,轻则降权半年,重则域名直接进 Google Safe Browsing 黑名单,跳出红标拦截页。这也是为什么我们一定要做权限硬隔离。”
这种文字对于网站站长和运营人员来说,代入感极强,完读率自然就上去了。
安全不是一劳永逸的事情,但在日常运维中把这套规范做扎实,90% 以上靠脚本小子扫描自动化漏洞的黑客都会在你这里碰壁。建站从来都是“三分建、七分养”,认真搞好 Linux网站根目录文件权限防提权加固,把基础权限收拢,别贪图省事直接给 777,你的网站排名和心血才不会在一夜之间付诸东流。下期我们接着聊聊怎么用纯脚本实时监控网站核心文件的 MD5 变动,有问题的兄弟直接在评论区甩报错日志。