标签:linux 用户 组管理
进程安全上下文
进程对文件访问权限应用模型 进程的属主与文件的属主是否相同,如果相同则运行属主权限 进程的属主与文件的属主不相同,对比属组权限是否相同,相同则应用属组权限 进程的属主既不是文件的属主也不是同一属组,则应用其他人权限
用户,计算机的使用者,每个使用者有一个id,但是计算机更容易识别数字,所以Linux有uid一说。为了方便人进行管理使用,引用了用户名,用户名就像人类的名字,uid就像身份证号。但是Linux不允许重名,即使uid不同也不行。但是不同用户名可以uid相同。
Linux内部进行名称解析:
用户名<---->UID 根据名称解析库进行 /etc/passwd
组:用户组,用户的容器,便于实现权限分配
新建用户时,系统自动创建于用户名同名的组,且组内只有一个用户(新建用户),叫做用户的私有组,也是用户的主组。
对于用户,有基本组(主组)和附加组的概念。
useradd 添加用户
useradd -D [options] -u,--uid 指定UID -g,--gid 指定基本组ID,此组需要事先存在 -G,--groups 指明用户的附加组,多个附加组用逗号隔开 -c,--comment 指明注释信息 -s,--shell 指明用用户默认shell,可用shell在/etc/shells目录下 -d,--home 指明用户的家目录位置,通过复制/etc/skel目录并重命名,如果之前存在家目录,则不会为用户复制环境配置文件。 父目录必须存在,子目录可以不存在 -r,--system 创建系统用户,系统用户也需要密码。 -o 不检查用户UID唯一性,用户UID可以重复 -N 不建立主组,使用users作为主组。 -m 创建用户家目录,如果不存在则创建家目录 用户家目录的默认配置文件(隐藏文件)是从/etc/skel中复制过来并重命名的 系统用户的家目录、邮箱是不会自动生成的
passwd 设置密码
passwd[OPTIONS] UserName: 修改指定用户的密码,仅root用户权限 passwd: 修改自己的密码; 常用选项: -l:锁定指定用户 -u:解锁指定用户 -e:强制用户下次登录修改密码 -n mindays: 指定最短使用期限 -x maxdays:最大使用期限 -w warndays:提前多少天开始警告 -iinactivedays:非活动期限; --stdin:从标准输入接收用户密码; echo "PASSWORD" | passwd--stdinUSERNAME
userdel 删除用户
userdel[OPTION]... login -r: 删除用户家目录; 默认不删除用户的家目录和邮箱
usermod 修改用户各项信息配置
usermod [options] LOGIN -u,--uid 指定UID -g,--gid 指定基本组ID,此组需要事先存在 -G,--groups 指明用户的附加组,多个附加组用逗号隔开,覆盖修改 -a,append 只能与-d一起使用,为用户追加新的附加组。 -c,--comment 指明注释信息 -d,--home 指明用户的家目录位置,通过复制/etc/skel目录并重命名,如果之前存在家目录,则不会为用户复制环境配置文件。用户的原有家目录下的文件不会转移到新目录,要与-m一起使用 -m,--move-home 只能与-d选项一起使用。表示更改并移动家目录。 --l,--login NEW_NAME修改用户名 -s,--shell 指明用用户默认shell,可用shell在/etc/shells目录下 -L,--lock 锁定用户的密码,为用户密码前加上!号 -U,--unlock 解除锁定用户,删除密码前的!号 -e YYYY-MM-DD: 指明用户账号过期日期; -f INACTIVE: 设定非活动期限 usermod -G "" USERNAME 删除用户的附加组 修改用户id 组 附加组 家目录 登录shell 用户名
id 查看用户的uid、gid、附加组,用户名信息
id [OPTION]... [USERNAME] -u: UID -g: GID -G: Groups -n: Name
getent
getent passwd USERNAME #显示用户passwd中的信息
/etc/passwd 用户信息 uid gid 附加组 登录shell 家目录..
/etc/group 组的信息,里面包含的用户..
/etc/shells 当前主机安装的shell
/etc/skel 建立新用户时,用的家目录的默认配置文件放在此目录下,复制到用户家目录
/etc/login.defs 新建用户的模板信息安全配置..
groupadd
groupadd[OPTION]... group_name -g GID: 指明GID号;[GID_MIN, GID_MAX] -r: 创建系统组; CentOS 6: ID<500 CentOS 7: ID<1000
groupdel 删除组
groupdel GROUP
groupmod 修改编辑组
groupmod[OPTION]... group -n group_name: 新名字#给组更名 -g GID: 新的GID;#更改组gid
groups 查看用户基本组内都有那些用户
print the groups a user is in #显示出用户在那些组内 groups [OPTION]... [USERNAME]...
getent 查看用户的group信息
getent group USERNAME #显示用户group文件中的(与用户名同名的组)组信息
groupmems 管理用户基本组的成员
groupmems[options] [action] options: -g, --group groupname更改为指定组(只有root) Actions: -a, --add username 指定用户加入组 -d, --delete username 从组中删除用户 -p, --purge 从组中清除所有成员 -l, --list 显示组成员列表
/etc/group /etc/gshadow
newusers 批量创建用户
从文档读取内容批量创建用户格式如下 pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
chpasswd 批量修改用户密码
chpasswd从标准输入读取用户名和密码对。来修改已经存在的用户的密码 用户名和密码的格式 用户名:密码 cat passwdlist | chpasswd
authconfig 修改密码加密方式
chage 修改用户密码策略
chage[OPTION]... LOGIN -d LAST_DAY -E, --expiredateEXPIRE_DATE -I, --inactive INACTIVE -m, --mindaysMIN_DAYS -M, --maxdaysMAX_DAYS -W, --warndaysWARN_DAYS –l,显示密码策略 下一次登录强制重设密码 chage-d 0 tom chage-m 0 –M 42 –W 14 –I 7 tom chage-E 2016-09-10 tom
pwconv, pwunconv, grpconv, grpunconv 转换用户和组密码
The pwconv command creates shadow from passwd and an optionally existing shadow.创建shadow文件,passwd中无密码 The pwunconv command creates passwd from passwd and shadow and then removes shadow.删除shadow文件,密码存放于passwd文件中 The grpconv command creates gshadow from group and an optionally existing gshadow. #不翻译了和pwconv类似 The grpunconv command creates group from group and gshadow and then removes gshadow.#不翻译同上 These four programs all operate on the normal and shadow password and group files: /etc/passwd, /etc/group, /etc/shadow, and /etc/gshadow. #以上操作涉及到文件。files: /etc/passwd, /etc/group, /etc/shadow, and /etc/gshadow
chfn 修改用户finger信息
修改用户finger信息
finger
finger用来显示用户名、用户全名、终端设备号和登录时间等信息 options用来控制finger的显示内容,user-list用来指定finger要显示的用户列表 finger可以在被地系统和远程系统上检索信息 finger [options] [user-list] -l 列出用户的详细信息 -s 列出用户的简要信息
vipw、vigr
vipw 相当于 vi /etc/passwd 修改用户信息用户id组等用户信息 vigr 相当于 vi /etc/group 修改组相关信息 参数都一样 -g 显示或修改group文件 -p 显示或修改passwd文件 -s 显示或修改shadow/gshadow文件
pwck 用户密码文件完整性检查
检查用户配置完整性 pwck [options] [passwd [ shadow ]] 例 [root@yangyouwei ~]# pwck user ‘adm‘: directory ‘/var/adm‘ does not exist user ‘uucp‘: directory ‘/var/spool/uucp‘ does not exist user ‘gopher‘: directory ‘/var/gopher‘ does not exist
grpck 组文件完整性检查
检查组配置信息完整性 grpck [options] [group [ shadow ]]
su 切换用户
su[options...] [-] [user [args...]] 切换用户的方式: suUserName:非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录 su-UserName:登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换 root su至其他用户无须密码;非root用户切换时需要密码 换个身份执行命令: su[-] UserName -c ‘COMMAND‘ 选项:-l --login: su-l UserName相当于su-UserName 切换完成工作后一定要退回原来用户 exit
newgrp 切换用户组
newgrp 切换主组(临时切换) newgrp [-] [group] - 完全切换用户身份(环境变量)
chsh [-s shell] [-l] [-u] [-v] [username] -s, --shell shell Specify your login shell. -l, --list-shells Print the list of shells listed in /etc/shells and exit. [root@yangyouwei ~]# chsh -l /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh [root@yangyouwei ~]# cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh
标签:linux 用户 组管理
原文地址:http://yangyouwei.blog.51cto.com/114816/1833577