2020-05-30 08:56:18
在Linux系统中,创建和管理用户账户需围绕用户生命周期管理和权限控制体系展开,核心操作通过useradd、usermod、userdel等命令实现,结合UGO-rwx权限模型和特殊权限位(SUID/SGID/Sticky Bit)构建安全策略。以下是具体操作指南:
一、用户账户创建与基础配置创建用户使用useradd命令分配UID,并在/etc/passwd、/etc/shadow、/etc/group中写入记录。
基础命令:sudo useradd newuser
常用参数:
-m:自动创建家目录(如/home/newuser)。
-s /bin/bash:指定默认Shell。
-g primary_group:设置主组(如users)。
-G secondary_group1,secondary_group2:添加附加组(如sudo,developers)。
-c "User's Full Name":添加注释信息。
完整示例:sudo useradd -m -s /bin/bash -g users -G sudo,developers -c "John Doe" john.doe
设置密码使用passwd命令为用户分配密码,需输入两次以确认:
sudo passwd john.doe安全建议:避免使用弱密码(如123456),推荐复杂组合。
通过usermod命令调整用户属性:
添加用户:sudo gpasswd -a john.doe developers
移除用户:sudo gpasswd -d jane.doe developers
Linux权限基于UGO-rwx模型(用户/组/其他,读/写/执行),通过ls -l查看文件权限(如drwxr-xr--):
d:目录(-为文件)。
rwx:所有者用户权限。
r-x:所有者组权限。
r--:其他用户权限。
SUID:执行时获得文件所有者权限(如passwd命令修改/etc/shadow)。
SGID:执行时获得文件所有者组权限,或目录下新文件继承父目录组。
Sticky Bit:目录下文件仅所有者或root可删除(如/tmp)。
chmod:修改权限(如chmod 755 file)。
chown:修改所有者(如chown user:group file)。
chgrp:修改所有者组。
添加用户:sudo gpasswd -a username groupname
移除用户:sudo gpasswd -d username groupname
忘记root密码:
进入单用户模式,修改内核参数(如init=/bin/bash),挂载根文件系统为可写:mount -o remount,rw /
重置密码:passwd root
更新SELinux上下文(如启用):touch /.autorelabel
重启系统。
用户账户被锁定:
检查锁定状态:sudo passwd -S username
解锁账户:sudo passwd -u username
使用pam_faillock模块管理登录失败次数:sudo faillock --user username --reset
预防措施:
部署强密码策略。
定期备份关键配置(如/etc/passwd、/etc/group)。
使用集中式身份验证(如LDAP)。
建立权限审计策略。
平衡原则:避免过度宽松(安全漏洞)或过度严格(影响效率),需综合业务需求和风险判断。
通过以上操作,可实现Linux用户账户的高效创建、权限精细控制及安全应急处理。