以下是 CentOS 权限管理的核心用法及示例,涵盖用户、文件、目录和高级权限控制,结合最佳实践整理而成:
一、用户与组管理
- 用户操作
创建用户:如图1所示
useradd username # 创建用户 br

图1
修改用户信息:如图2所示
usermod -l newname username # 重命名用户
usermod -d /home/newhome -m newname # 迁移主目录

图2
删除用户:
userdel -r username # 删除用户并移除主目录
- 组操作
创建组并添加用户:如图3所示
groupadd dev_team # 创建组
usermod -aG dev_team newname # 添加用户到组(保留原组)

图3
从组移除用户:如图4所示
gpasswd -d newname dev_team

图4
二、文件与目录权限
- 权限查看与修改
- 查看权限:如图5
ls -l /home/ # 输出示例:-rwxr-xr--

图5
符号解释:
rwx(所有者)| r-x(所属组)| r–(其他用户)
- 修改权限(符号模式):
chmod u+x all.txt # 所有者添加执行权限 如图6所示

chmod o-w file.txt # 其他用户移除写权限 如图7所示

图7
- 修改权限(数字模式):
chmod 755 directory/ # 所有者:rwx,组和其他:r-x如图8所示

图8
chmod 644 file.txt # 所有者:rw-,组和其他:r--如图9所示

图9
- 所有权管理
- 修改所有者/组:如图10所示
chown bbo:newgroup /home/file.txt # 同时修改所有者和组
chgrp dev_team /project/ # 仅修改所属组

图10
- 递归修改(目录及内容)如图11所示
chown -R bbo:newgroup /home/how # 递归修改所有者/组
chmod -R 755 /home/directory # 递归设置权限

图11
⚙️ 三、sudo 权限配置
- 添加用户到 sudoers
usermod -aG wheel bbo # CentOS 默认使用 wheel 组如图12所示

图12
- 配置 sudoers 文件
sudo visudo # 安全编辑(语法检查)
示例配置:
username ALL=(ALL) ALL # 允许执行所有命令(需密码)
username ALL=(ALL) NOPASSWD: /sbin/service httpd * # 免密执行特定命令
️ 四、SELinux 管理
- 状态控制如图13所示
sestatus # 查看状态
sudo setenforce 0 # 临时禁用(宽容模式)
sudo setenforce 1 # 临时启用

图13
- 永久配置
编辑 /etc/selinux/config:如图14所示
SELINUX=permissive # 或 enforcing/disabled

图14
注意:禁用 SELinux 可能降低安全性(仅调试时提议)。
五、ACL(访问控制列表)
- 启用与设置如图15所示
yum install acl # 安装工具
setfacl -m u:bbo:rwx /shared/ # 为用户 john 添加 rwx 权限
setfacl -m g:dev_team:rx /shared/ # 为组添加权限

图15
- 查看 ACL如图16所示
getfacl /shared/

图16
六、最佳实践与注意事项
- 最小权限原则:用户仅授予必要权限(如避免滥用 777)。
- sudo 精细化控制:限制 NOPASSWD 仅用于必要命令。
- 特殊权限慎用:
- SUID/SGID(影响执行身份):如图17所示
chmod u+s /home/how/ # SUID:继承所有者权限
chmod g+s /shared/ # SGID:继承组权限

图17
- Sticky Bit(防误删):如图18所示
chmod +t /tmp/shared/ # 仅文件所有者可删除自身文件

图18
- 审计与日志:如图19所示
tail -f /var/log/secure # 监控 sudo 和登录事件

图19
通过以上方法,可系统化实现 CentOS 权限管理。实际操作前提议备份关键配置(如 sudoers),避免误操作导致系统不可用。
© 版权声明
文章版权归作者所有,未经允许请勿转载。如内容涉嫌侵权,请在本页底部进入<联系我们>进行举报投诉!
THE END






















暂无评论内容