用户管理配置文件
0、产看用户UID、GID、等信息:id 用户名
1、Linux用户类型:
1)超级用户:root , UID=0
2)伪用户:UID 1---499之间
3)普通用户:UID 500---60000之间
2、配置文件
1)用户信息文件:/etc/passwd
2)密码文件:/etc/shadow
3)用户组文件:/etc/group
4)用户组密码文件:/etc/gshadow
5)用户配置文件:/etc/login.defs、/etc/default/useradd
6)新用户信息文件:/etc/skel
7)登陆信息:/etc/motd(登陆后显示)、/etc/issue(登录前显示)
3、/etc/passwd文件格式(七个字段)
用户名:密码位:UID:GID:注释性描述:宿主目录:命令解释器(默认bash)
4、/etc/shadow文件格式(九个字段)
用户名:密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:账号闲置时间:失效时间:标志
5、/etc/group文件格式(四个字段)
组名:组密码:GID:组内用户列表
6、手工添加用户
1)分别在/etc/passewd、/etc/group和/etc/shadow文件中添加一笔记录
2)创建用户宿主目录
3)在用户宿主目录中设置默认的配置文件
4)设置用户初始密码
7、SetUID(为什么普通用户可以更改密码?SetUID在作怪,比如普通用户执行passwd命令的时候瞬间root灵魂附体,其实passwd是以root身份执行的。)
1)所有者(SetUID=4):chmod u+s(4755) file。
2)所属组(SetUID=2):chmod g+s(2755) file。
3)粘着位(SetUID=1):chmod o+t(1777) file。如果一个权限为777的目录具有粘着位,每个用户都可以在这个目录下创建文件,但是只能删除自己是所有者的文件。
8、添加用户
1)useradd 设置选项 用户名(-D查看缺省参数)
-u:UID
-g:缺省所属用户组GID
-G:指定用户所属多个组
-d:宿主目录
-s:命令解释器shell
-c:描述信息
-e:指定用户失效时间
2)groupadd添加用户组
eg:groupadd -g 888 webadmin 创建用户组webadmin,其GID为888
*删除用户组:groupdel 组名
*修改用户组信息:groupmod -n apache webadmin 修改webadmin组名为apache
3)gpasswd 设置组密码及管理组内成员
-a 添加到用户组
-d 从用户组中删除用户
-A 设置用户组管理员
-r 删除用户组密码
-R 禁止用户切换为改组
4)usermod
#usermod -G root sandy 将sandy添加到root组中
#usermod -l sandy jack 将sandy改名为jack
另外
#gpasswd -a sandy root将sandy添加到root组中
#gpasswd -d sandy root将sandy从root中删除
#gpasswd -A sandy root 将sandy提升为root组的管理员
#newgrp root 输入密码切换到root组中
用户管理命令
1、用户管理命令
1)pwck 检测/etc/passwd文件(锁定文件)
2)vipw 编辑/etc/passwd文件(与vi编辑相同唯一的不同是:此命令编辑的时候锁定passwd文件)
3)id 查看用户id和组信息
4)finger 查看用户详细信息
5)su 切换用户(su - 用户名 :可直接切换到该用户的宿主目录)
6)passwd -S 查看用户密码状态
7)who 、 w 查看当前登陆用户信息。w更为详细
2、用户组管理命令
1)groups 查看用户隶属于哪些用户组
2)newgrp 切换用户组
3)grpck 修改文件所属组
4)vigr 编辑/etc/group文件(锁定文件)
5)chgrp 修改文件所属组(范例:chgrp www file1将文件file1的组修改为www)
用户组权限示例:授权用户jack和mary对目录/software有写权限
#groupadd softadm
#usermod -G softadm jack
#gpasswd -a mary softadm
#chgrp softadm /software
#chmod g+w /software
3、禁用和恢复用户
禁用:#usermod -L 用户名
#passwd -l 用户名
恢复:#usermod -U 用户名
#passwd -u 用户名
4、删除用户:userdel -r 用户名(-r 删除用户目录)
5、chage 设定密码 : chage -l sandy 查看sandy的密码设置
批量添加用户
1、 newusers 命令 导入用户信息文件(newusers < users.info格式参考/etc/passwd)
pwunconv 命令 取消shadow passwd功能
chpasswd 命令 导入密码文件(格式:用户名:密码)
pwconv 命令 将密码写入shadow文件
2、sudo
配置文件:/etc/sudoers,编辑配置文件命令visudo,普通用户使用命令sudo
格式:用户名(组名) 主机地址=命令(绝对路径)