/etc/passwd文件剖析
文件格式:
root:x:0:0:root:/root:/bin/bash
用户名:密码位:UID:GID[缺省组ID]:注释性的描述信息:宿主目录:shell[7部分]
Linux用户分类:
超级用户(root,UID=0)
普通用户(UID=500~60000) #最大值是可以更改的
伪用户/特殊用户(UID=1~499)
#因此,将一个用户的用户的UID改为0之后,其就成为了超级用户
伪用户特点
1、伪用户与系统和程序服务相关
如:bin、daemon、shutdown、halt等,任何Linux系统都默认含有这些伪用户
如:mail、news、games、apache、ftp、mysql及sshd等,与Linux 系统进程相关的伪用户
像MySQL是在安装时自动添加到配置文件中的。
2、伪用户通常不需要也或无法登录系统,因此,伪用户机制确保了系统的安全
3、可以没有宿主目录
用户组
1.每个用户都至少属于一个用户组
【在管理系统时,每个用户都应该隶属与自己的组,这样,每个用户才会“各司其职”,拥有自己所特有的权限,才不至于“天下大乱”】
2.每个用户组可以包括多个用户,一个用户可以同时隶属多个组
3.同一组的用户享有该组所共有的权限
4.如果在创建用户时没有指定用户组,则系统会创建一个与用户名相同的组,并将该用户加入该组
其他说明
注释性描述 #例如存放用户全名、该名用户所隶属的部门等信息,在添加用户是,最好书写这个一个描述,以便以后区分该用户的作用
宿主目录 #用户登录系统后的缺省目录
命令解释器 #用户使用的Shell,默认为bash
/etc/shadow文件剖析
文件格式:
root:$1$0HZuNsCv$URJuS1MRpjafAVcmYO0bI1:15957:0:99999:7:::
用户名:加密密码:最后一次修改时间:最小时间间隔[0表示不限制]:最大时间间隔:警告时间:帐号闲置时间:失效时间:标志【一般不使用】
其他信息说明:
如果密码位被清空,则登录该用户不再需要密码.
最小时间间隔:两次修改密码之间的最小天数
最大时间间隔:密码保持有效的最多天数,可以强行使用户修改密码
【查看/etc/shadow文件帮助信息: man 5 shadow】
/etc/shadow文件权限
Linux密码机制
将密码回写回去:pwunconv #商用UNIX并不提供该工具
此时/etc/shadow文件不存在了
密码转换 :pwconv
此时/etc/shadow又回来了
即-每当系统创建密码时,总是自动执行密码转换动作。
【验证用户名时检验/etc/passwd文件, 验证密码时校验:/etc/shadow】
【查看root密码信息 grep root /etc/passwd /etc/shadow】
/etc/login.defs简要分析
用户登录默认信息
CREATE_HOME yes #创建用户的同时,创建宿主目录
UMASK 077 #缺省用户创建文件或目录的权限
【各种选项都会在语句上面有详细的说明】
/etc/default/useradd简要分析
添加用户时的默认配置
INACTIVE=-1 #表示用户创建时默认是不被禁用的,0-默认禁用
EXPIRE=#帐号的失效时间
SHELL=/bin/shell #用户默认shell,若为/sbin/nologin,则新用户默认无法登录
SKEL=/etc/skel #新添加用户的默认配置文件原来保存的位置
CREATE_MAIL_SPOOL=yes #添加用户时,是否创建保存用户邮件的文件
登录信息配置文件
/etc/motd 用户登录之后显示的信息,可以用于内部人员的通知信息[今日消息],只要登录,就能收到
/etc/issue 用户登录前显示的信息,但是不建议使用原来的内容,可以用来显示公共信息
实例:手工添加用户
1.编辑/etc/passwd文件,添加
xiaofang::502:502:test user:/home/xiaofang:/bin/bash
2.创建xiaofang的宿主目录:mkdir /home/xiaofang
3.改变该目录的所有者: chown tom /home/xiaofang
4.编辑/etc/shadow,添加
xiaofang::16023:0:99999:7:::
4.cp -rf /ect/skel/.* /home/xiaofang
#新用户信息文件:/etc/skel,这里面保存了新用户的一些配置文件,只要将其全部拷贝到/home/xiaofang下面,则该用户与useradd来的用户无异
5.passwd xiaofang #生成xiaofang的密码
此时
OK!
附-生成加密的密文
echo “123456” | md5sum