/etc/shadow文件是/etc/passwd 的影子文件,这个文件并不由/etc/passwd 而产生的,这两个文件是应该是对应互补的;shadow内容包括用户及被加密的密码以及其它/etc/passwd 不能包括的信息,比如用户的有效期限等;这个文件只有root权限可以读取和 *** 作,权限如下:
-r-------- 1 root root 1.5K 10月 16 09:49 /etc/shadow
/etc/shadow 的权限不能随便改为其它用户可读,这样做是危险的。如果您发现这个文件的权限变成了其它用户组或用户可读了,要进行检查,以防系统安全问题的发生;
如果我们以普通用户查看这个文件时,应该什么也查看不到,提示是权限不够:
[beinan@localhost ~]$ more /etc/shadow
/etc/shadow: 权限不够
2)/etc/shadow 的内容分析;
/etc/shadow 文件的内容包括9个段位,每个段位之间用:号分割;我们以如下的例子说明;
beinan:$1$VE.Mq2Xf$2c9Qi7EQ9JP8GKF8gH7PB1:13072:0:99999:7:::
linuxsir:$1$IPDvUhXP$8R6J/VtPXvLyXxhLWPrnt/:13072:0:99999:7::13108:
第一字段: 用户名(也被称为登录名),在/etc/shadow中,用户名和/etc/passwd 是相同的,这样就把passwd 和shadow中用的用户记录联系在一起;这个字段是非空的;
第二字段: 密码(已被加密),如果是有些用户在这段是x,表示这个用户不能登录到系统;这个字段是非空的;
第三字段: 上次修改口令的时间;这个时间是从1970年01月01日算起到最近一次修改口令的时间间隔(天数),您可以通过passwd 来修改用户的密码,然后查看/etc/shadow中此字段的变化;
第四字段: 两次修改口令间隔最少的天数;如果设置为0,则禁用此功能;也就是说用户必须经过多少天才能修改其口令;此项功能用处不是太大;默认值是通过/etc/login.defs文件定义中获取,PASS_MIN_DAYS 中有定义;
第五字段: 两次修改口令间隔最多的天数;这个能增强管理员管理用户口令的时效性,应该说在增强了系统的安全性;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_MAX_DAYS 中定义;
第六字段: 提前多少天警告用户口令将过期;当用户登录系统后,系统登录程序提醒用户口令将要作废;如果是系统默认值,是在添加用户时由/etc/login.defs文件定义中获取,在PASS_WARN_AGE 中定义;
第七字段: 在口令过期之后多少天禁用此用户;此字段表示用户口令作废多少天后,系统会禁用此用户,也就是说系统会不能再让此用户登录,也不会提示用户过期,是完全禁用;
第八字段: 用户过期日期;此字段指定了用户作废的天数(从1970年的1月1日开始的天数),如果这个字段的值为空,帐号永久可用;
第九字段: 保留字段,目前为空,以备将来Linux发展之用;
1、/etc/shadow是本机用户密码文件。2、/etc/gshadow /etc/gshadow是/etc/group的加密资讯文件,比如用户组(Group)管理密码就是存放在这个文件。
/etc/gshadow和/etc/group是互补的两个文件;对于大型服务器,针对很多用户和组,定制一些关系结构比较复杂的权限模型,设置用户组密码是极有必要的。
比如我们不想让一些非用户组成员永久拥有用户组的权限和特性,这时我们可以通过密码验证的方式来让某些用户临时拥有一些用户组特性,这时就要用到用户组密码。
Linux系统使用一个专门的文件将用户的登录名匹配到对应的UID值,这个文件就是/etc/passwd文件,它包含了一些与用户有关的关键信息
root用户账户是Linux系统的管理员,固定分配给他的UID是0。Linux系统会为各种功能创建不同的账户,而这些账户并不是真的用户,叫做系统账户
/etc/passwd文件文件中的密码字段都被设置成了x,这并不是说所有用户账户都用相同的密码,而密码都被保存在另一个叫/etc/shadow的文件中,这需要特殊的程序才能访问
/etc/passwd是一个标准的文本文件,但是不建议用编辑器直接修改其内容
/etc/shadow文件对Linux系统密码提供了更多的控制,只有root用户才能访问/etc/shadow文件,这让它比/etc/passwd安全许多
他一共有九个字段
1、与/etc/passwd文件中登录名对应字段的登录名
2、加密后的密码
3、上次修改密码后过去多少天
4、多少天后才能修改密码
5、多少天后必须修改密码
6、密码过期提前多少天通知用户
7、密码过期后多少天禁用用户账户
8、用户账户被禁用的日期
9、预留字段
/etc/group文件包含了系统上用到的每个组的信息和UID一样,GID也使用相同的格式,并从500开始分配
主目录 :用户的起始工作目录,用户登录后有 *** 作权限的访问目录
注释性描述 :这个字段并没有什么实际的用途。在不同的Linux 系统中,这个字段的格式并没有统一。在许多Linux系统中,这个字段存放的是一段任意的注释性描述文字,用做finger命令的输出。
登陆shell :用户登录后,要启动一个进程,负责将用户的 *** 作传给内核,这个进程是用户登录到系统后运行的命令解释器或某个特定的程序,即Shell。
newgrp 指令类似 login 指令,当它是以相同的帐号,另一个群组名称,再次登入系统。 newgrp 命令可以从用户的附加组中选择一个群组,作为用户新的初始组。 欲使用 newgrp 指令切换群组,您必须是该群组的用户,否则将无法登入指定的群组。单一用户要同时隶属多个群组,需利用交替用户的设置。若不指定群组名称,则 newgrp 指令会登入该用户名称的预设群组。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)