学习Linux旅途--Day Five--
Linux用户和组的管理
当我们使用useradd增加一个用户,此时会在/etc/passwd文件增加一行,而密码则放置在/etc/shadow文件,接下来我们详细了解下这两个文件
1、/etc/passwd
由冒号:分割成七段
第一段:用户名
第二段:在早期的Linux中这个段位存放的密码,由于安全因素,只是用x标识符占位,实际密码则在/etc/shadow配置文件
第三段:uid,用户标识号0-(2^32-2)范围,root的uid为0,1-499为系统保留,普通的账户uid从500开始
第四段:gid,群组标识号,则对应的是/etc/group
第五段:用于注释说明,一般为空(finger查看用户信息,chfn设置用户注释说明)
第六段:家目录
第七段:登陆的shell,/bin/bash、/bin/flase、/bin/nologin(不允许登陆)
2、/etc/shadow
由冒号:分割成九段
第一段:用户名
第二段:存放密码($1:是MD5加密,$5:是sha-256加密,$6:是sha-512加密),*表示被锁定,!!表示无密码
第三段:上次更改密码的时间,是从1970-1-1开始计算
第四段:要过多少天才可以更改密码,0就代表不限制
第五段:密码多少天后到期,默认是99999
第六段:密码到期前的警告期限
第七段:账号失效的期限,过多少天锁定账号
第八段:账号的生命周期,表示这个账号可以使用多久
第九段:作为保留用,没什么意义
useradd:添加用户
-u:指定uid
-g:指定gid,加入某组,群组必须已经有的,否则报错
-d:指定家目录(当指定的家目录已存在时,则家目录的相关配置文件不会生成)
-s:指定shell
-M:创建用户时,不创建家目录
userdel:删除用户
默认并不会删除家目录
-r:指定删除用户的家目录
usermod:修改用户账号信息
-u:指定uid
-g:修改uid
-G:修改用户所属附加群组
-s:修改shell(不允许登陆/bin/nologin、拒绝访问/bin/flase)
-d:修改家目录
-L:锁定用户密码,使密码无效
-U:解锁用户
3、/etc/group
第一段:用户组名称
第二段:用户组密码,x占位
第三段:gid群组标识号
第四段:用户列表,每个用户之间用逗号分隔
4、/etc/gshadow
第一段:用户组名称
第二段:用户组的密码,可以为空或者!,都表示没有密码
第三段:用户组的管理者,这个字段可以为空,如果有多个用户组管理者,用逗号分隔
第四段:组成员,多个成员用逗号分隔
groupadd:新增一个用户组
-d:指定gid
groupdel:删除一个用户组,若组里由用户,则无法删除
groupmod:修改群组信息
-n:更改群组名称
-g:更改gid
5、passwd:修改用户密码
mkpasswd:可以生成不规则的密码,须安装expect包
-l:指定密码长度,默认为9
-d:指定数字个数,默认为2
-c:指定小写字符个数,默认为(密码长度-大写字符个数-小写字符个数-特殊字符个数=默认小写字符个数)
-C:指定大写字符个数,默认为2
-s:指定特殊字符个数,默认为1
6、用户身份切换
su:临时切换身份(这种方法,用户的PATH变量没有变)
su -:会切换到用户的家目录(用户的PATH变量会切换)
sudo:用其他身份来执行命令,/etc/sudoers配置文件,也可以visudo == vi /etc/sudoers
找到"root ALL=(ALL) ALL"这一行,添加下面三行:
User_Alias USER_SU = 用户 //比如user1
Cmnd_Alias SU = /bin/su
USER_SU ALL=(ALL) NOPASSWD:SU
用户别名:USER_SU是user1的别名
命令别名:SU是/bin/su的别名
更改的格式:user host=(as_user) commands //解释下,一列表示让那个用户使用sudo命令,第二列host指定主机,表示让哪个主机去临时拥有谁(as_user)的权限,第三列执行什么命令
上面这几段也可以一段结合:用户1,用户2... ALL=(ALL) NOPASSWD:/bin/su
本文出自 “小旭” 博客,请务必保留此出处http://loopholes.blog.51cto.com/9445813/1624848
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。