从 0 到上线 网站建设实训课
总览/ 课程地图/ S5 后台 · 数据 · 权限 · 密钥 · 打通

M22权限体系

所属路径 B / C 第 22 / 31 讲 S5 后台 · 数据 · 权限 · 密钥 · 打通
谁能改什么
学完能写出一张权限矩阵,并实际阻止一次越权

01为什么重要

权限不是「能不能用」,是「出了事能不能查清是谁做的」。全员 root,日志里全是 root,等于没有审计。

02要讲清的 4 件事核心要点

  • Linux 用户 / 组 / 文件权限位
  • nginx 运行用户不可写代码目录
  • sudo 白名单;GitHub 角色与分支保护;Deploy Key 只读
  • 多站资源上限:磁盘、带宽、进程,一站被打爆不拖垮全机

03照着做:4 步操作顺序

  1. 排权限矩阵:谁能读、谁能写、谁不能碰
  2. 设目录属主与权限位(755 / 644)
  3. 给运维用户配 sudo 白名单
  4. 用低权账号试一次越权,确认失败
sudo -l -U deploy            # 看这个用户能做什么
ls -ld /var/www/site         # 看属主与权限位
namei -l /var/www/site/index.html   # 逐级检查路径权限

04产出物与验收做完怎么算过

产出物

一张权限矩阵表

验收判据

可验用低权账号尝试改别人的 web 根目录,必须失败

05练习15 分钟内可做完

建一个只能读代码目录的用户,验证它能读不能写。

06最容易踩的坑

全目录 777 图省事
后果:目录 777,任何人都能改网站内容——包括被入侵之后的攻击者。

07自检表进度存在本机浏览器

0 / 6

08本讲术语全部 28 条

  • 白名单部署:只上传清单里列出的文件,不是整目录覆盖。清单通常要维护两处,容易不同步。
  • Deploy Key:只对单个仓库有效的部署密钥,通常设为只读。