linux文件之/etc/shadow文件

叶sir学编程 2024-05-16 02:48:38

在linux系统里,/etc/shadow文件用于存储用户的密码数据,且存储的密码数据是通过加密算法加密后的字符串,不是明文密码。通过ls -ll /etc/shadow命令(如图1)可以知道,该文件只有root用户才能进行修改。

图1

使用cat命令查看该文件的内容(如图2),发现每行都有一组信息,信息里用:分隔符分隔成了九个字段信息,接下来,简单说明下第一行即root用户的相关字段表示的含义。

图2

字段含义

字段1:表示用户,如root用户。

字段2:表示加密密码,该字段的信息里,又用$分隔符分隔成了三组信息 ($id$salt$encrypted) ,其中,每组信息的含义如下:

信息1(id):表示加密算法的标识符,如图2的$6表示使用SHA-512加密算法,还有$1表示使用MD5加密算法,$2a、$2b、$2y表示使用Blowfish加密算法,$5表示使用SHA-256加密算法。

信息2(salt):表示用于增加密码散列复杂性的随机字节序列,即增加密码加密复杂性。

信息3(encrypted):密码通过加密算法加密后的字符串数据。

字段3:表示最后一次更改密码的时间,用整数表示,该值表示从1970年1月1日开始到密码修改日期的天数。

字段4:表示用户最少要经过的天数,才可以修改密码。

字段5:表示用户最多经过的天数,就需要修改密码。

字段6:表示密码过期前多少天,要通知用户。

字段7:表示密码到期后的一定时间内,用户将被禁用。

字段8:表示账户的到期时间。

字段9:保留字段,方便以后扩展使用。

0 阅读:0

叶sir学编程

简介:感谢大家的关注