首页主机资讯CentOS Stream 8用户权限管理指南

CentOS Stream 8用户权限管理指南

时间2026-01-21 02:26:04发布访客分类主机资讯浏览1197
导读:一 基础概念与最小权限原则 理解 Linux 三类基础权限:读 r、写 w、执行 x;对目录而言,执行权限 x 代表可进入与访问目录项。权限作用于三类主体:所有者 u、所属组 g、其他 o。 采用最小权限原则:只授予完成工作所必需的最小权...

一 基础概念与最小权限原则

  • 理解 Linux 三类基础权限:读 r、写 w、执行 x;对目录而言,执行权限 x 代表可进入与访问目录项。权限作用于三类主体:所有者 u、所属组 g、其他 o
  • 采用最小权限原则:只授予完成工作所必需的最小权限;优先通过用户组集中管理同类权限,避免直接赋予广泛的 root 能力。
  • 合理使用 sudo:以普通用户身份执行管理命令,保留操作可追溯性;避免共享 root 密码。
  • 启用并正确配置 SELinux,在 DAC(传统权限)之外提供强制访问控制,降低被提权与横向移动风险。
  • 定期审计与复核:清理不再使用的账号与组、收敛权限、检查异常登录与关键文件变更。

二 用户与用户组管理

  • 常用命令速览
目标 命令示例 说明
创建用户并建家目录 sudo useradd -m alice 同时创建同名主组与 /home/alice
创建系统账号 sudo useradd -r appsvc 用于服务,通常不建家目录
设置/修改密码 sudo passwd alice 交互设置口令
修改用户属性 sudo usermod -aG devops alice 将用户追加到 devops 附加组
修改登录 Shell sudo usermod -s /sbin/nologin bob 禁止交互登录(常用于服务账号)
创建组 sudo groupadd devops 新建用户组
删除用户 sudo userdel -r alice 同时删除家目录与邮件假脱机文件
删除组 sudo groupdel devops 删除不再使用的组
  • 查询与诊断
    • 查看当前用户与组:idgroups
    • 查看账户口令状态:passwd -S alice
    • 锁定/解锁账户:sudo passwd -l alicesudo passwd -u alice
    • 查看系统账号与 UID 范围:cat /etc/passwd | awk -F: '$3 == 0 { print $1,$3} '(排查多余 UID 0 账户)

三 文件与目录权限与所有权

  • 基本操作
    • 更改权限:chmod 755 /opt/app(目录常用 755;文件常用 644
    • 更改属主/属组:sudo chown alice:devops /opt/app;递归:sudo chown -R alice:devops /opt/app
    • 仅改属组:sudo chgrp devops /opt/app
  • 默认权限与 umask
    • 查看/设置:umask(如 umask 022 表示新建文件默认不含组与其他写权限)
  • 特殊权限(谨慎使用)
    • SUID/SGIDchmod u+s /usr/bin/sudochmod g+s /var/www
    • Sticky Bit(目录防误删):chmod +t /tmp
  • 权限位速查
    • 目录:读(列出)、写(创建/删除)、执行(进入)
    • 文件:读(查看)、写(修改)、执行(运行程序/脚本)

四 提升权限与 sudo 精细化控制

  • 将用户加入 wheel 组以获得 sudo 能力(推荐方式)
    • sudo usermod -aG wheel alice
    • 验证:groups alicesudo -l
  • 使用 visudo 编辑 /etc/sudoers(避免直接编辑)
    • 允许某用户执行全部命令:alice ALL=(ALL) ALL
    • 免密执行特定命令:alice ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart nginx, /usr/bin/backup.sh
    • 仅允许以某用户身份执行:alice ALL=(appuser) /usr/bin/systemctl status myapp
  • 日志与审计
    • sudo 命令会写入日志(通常位于 /var/log/secure),便于追溯。

五 密码策略 账户安全与审计

  • 密码策略与口令文件
    • 复杂度:口令应包含大小写字母、数字、特殊字符,长度≥10
    • 策略参数:在 /etc/login.defs 设置 PASS_MIN_LEN 10
    • 检查空口令:sudo awk -F: '($2 == "" || $2 == "!") { print $1} ' /etc/shadow
    • 保护关键文件:sudo chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow(变更前务必评估维护影响)
  • 账户生命周期管理
    • 交互式修改:sudo passwd alice
    • 精细化策略:sudo chage -m 2 -M 30 -W 7 alice(最小间隔 2 天、最大 30 天、过期前 7 天提醒)
  • 审计与系统加固
    • 安装并启用审计:sudo dnf install -y audit & & sudo systemctl enable --now auditd
    • 文件访问审计示例:sudo auditctl -w /var/www -p wa -k web_data_access(持久化需写入规则文件)
    • 定期更新:sudo dnf update;可配置 dnf-automatic 自动安装安全更新
    • 安全提示:不建议直接关闭 SELinux停用防火墙来“解决权限问题”,应通过正确的 SELinux 策略与最小权限配置来达成目标

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: CentOS Stream 8用户权限管理指南
本文地址: https://pptw.com/jishu/787976.html
如何在centos备份phpstorm配置 CentOS Stream 8系统优化实战案例

游客 回复需填写必要信息