linux用户权限最小化核心是“按需赋权”,即只授予完成任务必需的最低权限;需创建专用低权限账户、精细配置 sudo 白名单、严格控制文件目录权限,并持续审计加固。

Linux 用户权限最小化,核心是“按需赋权”——只给完成任务所必需的最低权限,不额外开放任何能力。这能大幅降低误操作、提权攻击和横向移动的风险。
创建专用低权限账户代替 root
日常运维避免直接使用 root 或 sudo 执行所有命令。应为不同服务或任务创建独立的系统用户,限制其主目录、Shell 访问和可执行命令范围。
- 用 adduser –shell /bin/bash –home /opt/appuser appuser 创建受限账户
- 禁用密码登录:passwd -l appuser,仅允许密钥认证
- 通过 usermod -s /usr/sbin/nologin appuser 关闭交互式 Shell(如仅需运行守护进程)
精细控制 sudo 权限而非全量授权
避免 %wheel ALL=(ALL) ALL 这类宽泛配置。应在 /etc/sudoers.d/ 中为每个角色定义明确命令白名单。
- 例如:允许备份用户仅执行 rsync 和 tar 特定路径:backupuser ALL=(root) NOPASSWD: /usr/bin/rsync /var/www/* /backup/, /bin/tar -cf /backup/*.tar /var/log/nginx/
- 用 sudo -l 验证当前用户实际可用命令,防止配置遗漏或覆盖
- 启用 requiretty 和env_reset防止 环境变量 注入
文件与目录权限遵循“默认拒绝”原则
敏感 配置文件(如/etc/shadow、/root/.ssh/)必须严格限制读写权限;服务数据目录避免设置全局可写(777)。
- 检查异常权限:find /etc -type f -perm -o+w 2>/dev/NULL(找出其他用户可写的 配置文件)
- 对 Web 服务目录,用chown -R www-data:www-data /var/www/html + chmod -R 750 /var/www/html,禁止组外访问
- 启用 umask 027(在/etc/profile 或用户 shell 配置中),确保新建文件默认不向“others”开放写权限
定期审计与 自动化 加固
最小权限不是一次性配置,需持续验证。借助 工具 识别越权行为和配置漂移。