施主,放下蛋刀立地成佛!|

为了部落!!

园龄:3年5个月粉丝:1关注:0

Linux /etc/shadow(影子文件)内容解析(超详细)

/etc/shadow 文件,用于存储 Linux 系统中用户的密码信息,又称为“影子文件”。

前面介绍了 /etc/passwd 文件,由于该文件允许所有用户读取,易导致用户密码泄露,因此 Linux 系统将用户的密码信息从 /etc/passwd 文件中分离出来,并单独放到了此文件中。

/etc/shadow 文件只有 root 用户拥有读权限,其他用户没有任何权限,这样就保证了用户密码的安全性。
注意,如果这个文件的权限发生了改变,则需要注意是否是恶意攻击。

介绍此文件之前,我们先打开看看,执行如下命令:
[root@localhost ~]#vim /etc/shadow
root: $6$9w5Td6lg
$bgpsy3olsq9WwWvS5Sst2W3ZiJpuCGDY.4w4MRk3ob/i85fl38RH15wzVoom ff9isV1 PzdcXmixzhnMVhMxbvO:15775:0:99999:7:::
bin::15513:0:99999:7:::
daemon:
:15513:0:99999:7:::
…省略部分输出…

同 /etc/passwd 文件一样,文件中每行代表一个用户,同样使用 ":" 作为分隔符,不同之处在于,每行用户信息被划分为 9 个字段。每个字段的含义如下:
用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段

接下来,给大家分别介绍这 9 个字段。
用户名
同 /etc/passwd 文件的用户名有相同的含义。

加密密码
这里保存的是真正加密的密码。目前 Linux 的密码采用的是 SHA512 散列加密算法,原来采用的是 MD5 或 DES 加密算法。SHA512 散列加密算法的加密等级更高,也更加安全。
注意,这串密码产生的乱码不能手工修改,如果手工修改,系统将无法识别密码,导致密码失效。很多软件透过这个功能,在密码串前加上 "!"、"" 或 "x" 使密码暂时失效。
所有伪用户的密码都是 "!!" 或 "
",代表没有密码是不能登录的。当然,新创建的用户如果不设定密码,那么它的密码项也是 "!!",代表这个用户没有密码,不能登录。

最后一次修改时间
此字段表示最后一次修改密码的时间,可是,为什么 root 用户显示的是 15775 呢?
这是因为,Linux 计算日期的时间是以 1970 年 1 月 1 日作为 1 不断累加得到的时间,到 1971 年 1 月 1 日,则为 366 天。这里显示 15775 天,也就是说,此 root 账号在 1970 年 1 月 1 日之后的第 15775 天修改的 root 用户密码。
那么,到底 15775 代表的是哪一天呢?可以使用如下命令进行换算:
[root@localhost ~]# date -d "1970-01-01 15775 days"
2013年03月11日 星期一 00:00:00 CST
可以看到,通过以上命令,即可将其换算为我们习惯的系统日期。

最小修改时间间隔
最小修改间隔时间,也就是说,该字段规定了从第 3 字段(最后一次修改密码的日期)起,多长时间之内不能修改密码。如果是 0,则密码可以随时修改;如果是 10,则代表密码修改后 10 天之内不能再次修改密码。
此字段是为了针对某些人频繁更改账户密码而设计的。

密码有效期
经常变更密码是个好习惯,为了强制要求用户变更密码,这个字段可以指定距离第 3 字段(最后一次更改密码)多长时间内需要再次变更密码,否则该账户密码进行过期阶段。
该字段的默认值为 99999,也就是 273 年,可认为是永久生效。如果改为 90,则表示密码被修改 90 天之后必须再次修改,否则该用户即将过期。管理服务器时,通过这个字段强制用户定期修改密码。

密码需要变更前的警告天数
与第 5 字段相比较,当账户密码有效期快到时,系统会发出警告信息给此账户,提醒用户 "再过 n 天你的密码就要过期了,请尽快重新设置你的密码!"。
该字段的默认值是 7,也就是说,距离密码有效期的第 7 天开始,每次登录系统都会向该账户发出 "修改密码" 的警告信息。

密码过期后的宽限天数
也称为“口令失效日”,简单理解就是,在密码过期后,用户如果还是没有修改密码,则在此字段规定的宽限天数内,用户还是可以登录系统的;如果过了宽限天数,系统将不再让此账户登陆,也不会提示账户过期,是完全禁用。
比如说,此字段规定的宽限天数是 10,则代表密码过期 10 天后失效;如果是 0,则代表密码过期后立即失效;如果是 -1,则代表密码永远不会失效。

账号失效时间
同第 3 个字段一样,使用自 1970 年 1 月 1 日以来的总天数作为账户的失效时间。该字段表示,账号在此字段规定的时间之外,不论你的密码是否过期,都将无法使用!
该字段通常被使用在具有收费服务的系统中。

保留
这个字段目前没有使用,等待新功能的加入。

忘记密码怎么办
经常有读者会忘记自己的账户密码,该怎么处理呢?
对于普通账户的密码遗失,可以通过 root 账户解决,它会重新给你配置好指定账户的密码,而不需知道你原有的密码(利用 root 的身份使用 passwd 命令即可)。
如果 root 账号的密码遗失,则需要重新启动进入单用户模式,系统会提供 root 权限的 bash 接口,此时可以用 passwd 命令修改账户密码;也可以通过挂载根目录,修改 /etc/shadow,将账户的 root 密码清空的方法,此方式可使用 root 无法密码即可登陆,建议登陆后使用 passwd 命令配置 root 密码。

原文地址:http://c.biancheng.net/view/840.html

本文作者:为了部落!

本文链接:https://www.cnblogs.com/wlbl-dd/p/16635222.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   为了部落!!  阅读(648)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 玫瑰少年 伦桑
玫瑰少年 - 伦桑
00:00 / 00:00
An audio error has occurred.

作词 : 蔡依林/阿信

作曲 : 剃刀蔣/蔡依林

编曲 : papaw泡泡

原唱 : 蔡依林

谁把谁的灵魂

装进谁的身体

谁把谁的身体

变成囹圄囚禁自己

乱世总是最 不缺耳语

哪种美丽会唤来妒忌

你并没有罪

有罪是这世界

生而为人无罪

你不需要抱歉

One day I will be you baby boy,and you gon'be me

喧哗如果不停

让我陪你安静

I wish I could hug you,

till you're really really being free

哪朵玫瑰 没有荆棘

最好的 报复是 美丽

最美的 盛开是 反击

别让谁去 改变了你

你是你 或是妳都行

会有人 全心的 爱你

试着想象 you switched to his body

试着想象 you switched to his body

sexuality 当心 什么会伤你

多少次的重伤 多少次的冷语

drowning 谁会拉你

dreaming 谁会陪你

Same s**t happens every day

你离开后 世界可改变

多少无知罪愆 事过不境迁

永志不忘纪念 往事不如烟

生而为人无罪

你不需要抱歉

One day I will be you baby boy, and you gon'be me

喧哗如果不停

让我陪你安静

I wish I could hug you,

till you're really really being free

哪朵玫瑰 没有荆棘

最好的 报复是 美丽

最美的 盛开是 反击

别让谁去 改变了你

你是你 或是妳都行

会有人 全心的 爱你

玫瑰少年 在我心里

玫瑰少年 在我心里

玫瑰少年 在我心里

玫瑰少年 在我心里

绽放着 鲜艳的 传奇

我们都 从来没 忘记

你的控诉 没有声音

却倾诉 更多的 真理

却唤醒 无数的 真心

哪朵玫瑰 没有荆棘

最好的 报复是 美丽

最美的 盛开是 反击

别让谁去 改变了你

你是你 或是妳 都行

会有人 全心的 爱你

玫瑰少年 在我心里

玫瑰少年 在我心里

视频 : 戒戒

海报 : 麦浮

画师 : 稗久

后期 : 小吴太太

后期 : 小吴太太