linux 用户与组
Linux用户
:username/UID 管理员:root,0 普通用户:1-65535 系统用户:1-499,1-999
Linux组:groupname/GID
管理员组:root,0 普通组: 系统组:1-499,1-999 普通组:500+,1000+
Linux安全上下文:
运行中的程序:进程(process)而且以进程发起者的身份运行:
ps:进程所能够访问的所有资源的权限取决于进程的发起者的身份
Linux组的类别:
- 用户的基本组(主组):
- 组名同用户名,且仅包含一个用户:私有组
- 用户的附加组(额外组):
Linux用户和组相关的配置文件:
- /etc/passwd:用户及其属性信息(名称,UID,基本组ID等)
- /etc/group:组及其属性信息
- /etc/shadow:用户密码及其相关属性
- /etc/gshadow:组密码及其相关属性
/etc/passwd: name:password:UID:GID:GECOS:directory:shell 用户名:密码:UID:GID:GECOS:主目录:默认shell /etc/group: group_name:passwd:GID:user_list 组名:组密码:GID:以当前组为附加组的用户列表(分隔符为:) /etc/shadow: 用户名:加密了的密码:最近一次更改密码的日期:密码的最短使用期限:密码的最长使用期限:密码警告时间段:密码禁用期:账号的过期日期:保留字段
用户和组管理命令
useradd:用户创建
useradd [options] LOGIN -u UID:[UID_MIN,UID_MAX],定义在/etc/login.defs -g GID:指明用户所属基本组,可为组名,也可以GID -c "COMMENT":用户的注释信息 -d /PATH/TO/HOME_DIR:以指定的路径为家目录 -s SHELL:指定默认shell,可用列表在/etc/shell中 -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指定用户所属的附加组 -r:创建系统用户 CentOS 6:ID<500 CentOS 7:ID<1000 默认值设置:/etc/default/useradd中 useradd -D [OPTIONS] -s SHELL
groupadd:组创建
groupadd [OPTION]... group_name -g GID:指明GID号[GID_MIN,GID_MAX] -r:创建系统组 CentOS 6:ID<500 CentOS 7:ID<1000
id:查看用户相关的ID信息
id [OPTION]... [USER] -u:UID -g:GID -G:groups -n:name
su:切换用户或以其他用户身份执行命令
su [OPTION]... [-] [USER [ARG]...] 切换用户的方式: su username:非登录式切换,即不会读取目标用户的配置文件 su - username:登录式切换,会读取目标用户的配置文件,完全切换 ps:root su至其他用户无需密码,非root用户切换需要密码 换身份执行命令: su [-] username -c 'COMMAND' 选项: -l:"su -l username",相当于"su - username"
usermod: 用户属性修改:usermod
usermod [options] LOGIN -u UID:新UID -g GID:新基本组 -G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:新的附加组,原来的附加组将会被覆盖,如果想保留原有,则要同时使用-a选项,表示append -s SHELL:新的默认SHELL -c 'COMMENT':新的注释信息 -d HOME:新的家目录,原有家目录中的文件不会同时移动至新的家目录,若要移动,则同时使用-m选项 -l login_name:新的登录名 -L:lock指定用户 -U:unlock指定用户 -e YYYY-MM-DD:指明用户账户过期时间 -f INACTIVE:设定非活动期限
passwd:给用户添加密码
passwd [OPTIONS] username:修改指定用户的密码,仅root用户权限 passwd:修改自己的密码 -l:锁定指定用户 -u:解锁指定用户 -n mindays:指定密码最短使用期限 -x maxdays:指定密码最大使用期限 -w warndays:提前多少天进行警告 -i inactivedays:非活动期限 --stdin:从标准输入接收用户密码 echo "PASSWORD" | passwd --stdin USERNAME ps:/dev/null,bit buckets /dev/zero
userdel:删除用户
userdel [OPTION]... login -r:删除用户家目录
groupmod:组属性修改
groupmod [OPTION] GROUP -n group_name:新名字 -g GID:新的GID
groupdel:组删除
groupdel GROUP
gpasswd: 组密码
gpasswd [OPTION] GROUP -a user:将user添加至指定组中 -d user:删除用户user的以当前组为组名的附加组 -A user1,user2...:设置有管理权限的用户列表
chage:修改用户属性
chage [options] LOGIN -d LAST_DAY -E, --expiredate -I, --inactive -m, --mindays -M, --maxdays -W, --warndays
chfn:查看用户信息
chsh:|改变shell
-s 参数改变当前的shell设置
finger:查看其它用户信息
finger [options] user[@address] -l 多行显示。 -s 单行显示