用户权限管理实战:从基础到高级的权限控制策略

BigNet +0/-0 0 0 正常 2025-12-24T07:01:19 系统安全 · 用户管理 · 权限控制

在Linux系统中,用户权限管理是安全防护的基础。本文将通过具体案例,展示从基础到高级的权限控制策略。

基础权限控制

首先,使用useradd创建受限用户:

sudo useradd -m -s /bin/false restricted_user

然后通过/etc/sudoers文件限制其权限:

restricted_user ALL=(ALL) NOPASSWD: /usr/bin/systemctl, /usr/bin/ls

这允许用户执行特定命令而无需密码。

高级权限管理

使用sudoersDefaults选项控制会话超时:

Defaults timestamp_timeout=5
Defaults pwfeedback

设置5分钟超时,增强安全性。

文件权限控制

通过setgid位实现组权限继承:

mkdir /opt/project
chmod 2775 /opt/project
chgrp -R developers /opt/project

确保新创建的文件自动继承目录组权限。

审计配置

启用auditd服务记录权限变更:

sudo systemctl enable auditd
sudo auditctl -w /etc/passwd -p wa -k passwd_change

通过审计规则监控关键文件的修改行为。

这些策略在生产环境中需结合具体业务场景进行调整,建议先在测试环境验证后再上线。

推广
广告位招租

讨论

0/2000
Gerald249
Gerald249 · 2026-01-08T10:24:58
实战中遇到过用户权限滥用导致系统被入侵,建议定期审查sudoers配置,禁用不必要的命令别名,比如把ALL改成具体的路径白名单。
StrongWill
StrongWill · 2026-01-08T10:24:58
setgid在团队协作项目中特别有用,但要注意目录权限递归设置后,新文件的umask也要统一,否则容易出现权限混乱问题。
SickCat
SickCat · 2026-01-08T10:24:58
审计日志一定要结合实际业务场景来定规则,比如passwd_change这种规则可以加到脚本部署流程里自动触发,避免遗漏关键变更。
Ethan806
Ethan806 · 2026-01-08T10:24:58
生产环境做权限控制前必须先在测试机验证,尤其是sudoers里的NOPASSWD配置,一个不小心就可能被攻击者利用提权