- 首页 >
- 问答 >
-
智能运维 >
- Debian Extract怎样管理用户权限与组
Debian Extract怎样管理用户权限与组
小樊
31
2025-12-14 04:17:22
Debian 用户与组管理实操指南
术语澄清与总体思路
- “Extract”并非 Linux 命令或系统功能,常见的是 tar 的 extract(解压)操作。在 Debian 中,用户与组的管理通过系统命令完成,与解压无关。
- 管理思路可归纳为:账户与组的增删改查 → 文件与目录的权限与属主 → 通过 sudo 授权 → 需要更细粒度时使用 ACL → 按需启用 AppArmor/SELinux 等安全模块。
用户与组管理常用命令
- 账户管理
- 新增用户:sudo adduser username(交互式,自动建家目录)
- 删除用户:sudo deluser username;连同家目录删除:sudo deluser --remove-home username
- 修改属性:sudo usermod -l 新名 旧名;改主目录:sudo usermod -d /新/家目录 -m username;改登录 Shell:sudo usermod -s /bin/bash username
- 锁定/解锁:sudo passwd -l username / sudo passwd -u username
- 改密码:sudo passwd username
- 组管理
- 新增组:sudo groupadd groupname
- 删除组:sudo groupdel groupname
- 用户加入/移除组:sudo usermod -aG 组名 用户名;sudo gpasswd -d 用户名 组名
- 查询信息
- 查看用户与组:id username、groups username
- 列出所有用户/组:cat /etc/passwd、getent group 或 cat /etc/group
- 实用提示
- 使用 -a(append)避免覆盖用户原有附加组;修改前用 id 确认当前所属组。
文件与目录权限设置
- 基本权限
- 查看:ls -l
- 数字法:chmod 755 文件(所有者 rwx,组和其他 r-x);chmod 700 目录(仅所有者可访问)
- 符号法:chmod u+x 文件(给所有者加执行);chmod g-w 文件(移除组写)
- 属主与属组
- 修改属主/属组:sudo chown 用户名:组名 文件或目录;仅改属组:sudo chgrp 组名 文件或目录
- 默认权限掩码
- 设置新建文件默认权限:umask 022(常见),或更严格如 027
- 特殊权限
- SUID:chmod u+s 文件(执行时临时拥有所有者权限)
- SGID:chmod g+s 目录(目录下新建文件继承目录组)
- Sticky Bit:chmod +t 目录(仅文件所有者可删除自己的文件)
- ACL 细粒度授权
- 安装工具:sudo apt install acl
- 授权:sudo setfacl -m u:用户名:rwx 文件;sudo setfacl -m g:组名:r-x 目录
- 查看:getfacl 文件。
sudo 与远程访问安全
- 授予 sudo
- 推荐方式:将用户加入 sudo 组(Debian 常见做法)— sudo usermod -aG sudo 用户名;验证:groups 用户名 应包含 sudo
- 直接编辑 sudoers(请用 visudo):用户名 ALL=(ALL:ALL) ALL;如需免密(不推荐):用户名 ALL=(ALL) NOPASSWD: ALL
- SSH 访问控制
- 仅允许指定用户登录:AllowUsers user1 user2(编辑 /etc/ssh/sshd_config)
- SFTP 限制到用户家目录(Chroot):
- Match User username
- ChrootDirectory /home/username
- ForceCommand internal-sftp
- 使配置生效:sudo systemctl restart sshd
- 安全原则
- 优先通过组授权,遵循最小权限原则;谨慎使用 NOPASSWD。
进阶与系统安全模块
- 账户生命周期与合规
- 查看登录历史:last 用户名
- 密码策略:sudo chage -M 90 用户名(90 天过期);强制下次改密:sudo chage -d 0 用户名
- 磁盘配额(可选)
- 安装:sudo apt install quota
- 在 /etc/fstab 目标分区挂载选项添加 usrquota,grpquota,然后 sudo mount -o remount /;初始化与启用:sudo quotacheck -avug、sudo quotaon -av;编辑配额:sudo edquota 用户名
- AppArmor 与 SELinux
- Debian 默认启用 AppArmor:查看状态 sudo aa-status;加载配置 sudo aa-enforce /etc/apparmor.d/usr.sbin.httpd
- SELinux 默认不启用:如需使用,安装策略包并配置 /etc/selinux/config(SELINUX=enforcing/permissive/disabled),用 sestatus 查看状态。