Linux中/etc/shadow文件详解

/etc/shadow文件,用于存储Linux系统中用户的密码信息

/etc/shadow文件只有root用户拥有读权限,其他用户没有任何权限。

注意:

如果此文件权限发生改变,注意是否遭到恶意攻击。

cat /etc/shadow

文件中每行代表一个用户,使用":"作为分隔符,每行用户信息被划分为9个字段

以odysee用户为例:

下面详细介绍一下:

1、用户名

用户名仅是为了方便用户记忆一串符合。

2、加密密码

这里保存的是真正加密的密码。

注意!!!

这串密码不能手工修改,如果手工修改,系统将无法识别密码,导致密码失效。

所有系统用户密码都是 "!!" 或 "*",代表没有密码是不能登录的。

当然,新创建的用户如果不设定密码,那么它的密码项也是 "!!",代表这个用户没有密码,不能登录。

3、最后一次修改时间

此字段表示最后一次修改密码的时间。

Linux计算日期的时间是以1970年1月1日作为1不断累加得到的时间。

例如:1971年1月1日,则为365天。

4、最小修改时间间隔

该字段规定了从第3字段起,多长时间之内不能修改密码。

如果是0,则密码可以随时修改。

如果是10,则代表密码修改后10天之内不能再次修改密码。

补充:

此字段是为了针对某些人频繁更改账户密码而设计的。

5、密码有效期

经常变更密码是个好习惯,为了强制要求用户变更密码,这个字段可以指定距离第3字段多长时间内需要再次变更密码,否则该账户密码进行过期阶段。

该字段的默认值为99999,也就是273年,可认为是永久生效。

如果改为90,则表示密码被修改90天之后必须再次修改,否则该用户即将过期。

管理服务器时,通过这个字段强制用户定期修改密码。

6、密码需要变更前的警告天数

与第5字段相比较,当账户密码有效期快到时,系统会发出警告信息给此账户。

提醒用户"再过n天你的密码就要过期了,请尽快重新设置你的密码!"。

补充:

该字段的默认值是 7,也就是说,距离密码有效期的第 7 天开始,每次登录系统都会向该账户发出 "修改密码" 的警告信息。

7、密码过期后的宽限天数

在密码过期后,用户如果还是没有修改密码,则在此字段规定的宽限天数内,用户还是可以登录系统的;如果过了宽限天数,系统将不再让此账户登陆,也不会提示账户过期,是完全禁用。

8、账号失效时间

同第3个字段一样,使用自1970年1月1日以来的总天数作为账户的失效时间。

该字段表示,账号在此字段规定的时间之外,不论你的密码是否过期,都将无法使用!

补充:

该字段通常被使用在具有收费服务的系统中。

9、保留字段

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

简单的为大家整理一下这些字段的含义。

现在对于/etc/shadow文件大家应该get it了。

感谢支持。

字段 密码有效期_你知道Linux中用户们的密码藏在哪儿吗?相关推荐

  1. linux如何查看无线密码是多少个,在 Linux 中查看连接过的 WiFi 密码

    在安装现代主流操作系统如 Windows 10.Ubuntu.macOS 时,都会要求用户提前输入 WiFi 密码.特别是 Ubuntu 系统,在配置安装向导时就可以连接 WiFi,以方便在系统安装过 ...

  2. Linux中用户的简介与管理

    女主宣言 众所周知,linux是一个多用户.多任务的操作系统.那么linux是如何区分和认证用户的,系统对每个用户的授权是如何管理的,出现问题时是如何追朔每个用户在系统内的操作记录,这些就涉及到了li ...

  3. Linux中用户与组群管理

    Linux是一个多用户操作系统,可以多个用户同时使用同一计算机,不同的用户对相同的资源拥有不同的使用权限,将同一类的用户归于一个组群,可以利用组群权限来控制组群成员用户的权限. Linux中用户分为三 ...

  4. linux中用户组和用户,linux中用户和用户组

    一.用户和组原理 一个用户可以属于多个组,一个组有多个用户 在Linux中操作系统必须依赖组和用户进行管理 二.与用户和组相关的配置文件 1.组相关配置文件 1)/etc/group :管理用户组信息 ...

  5. linux中用户的分类

    linux中用户的分类 在linux中用户分为三类: 超级用户:(root,UID=0),UID为0的用户就是超级用户 普通用户:(UID=500~60000),可以使用useradd  添加的用户 ...

  6. Java黑皮书课后题第6章:**6.18(检测密码)一些网站对于密码具有一些规则。编写一个方法检测字符串是否是一个有效密码。编写一个程序,提示用户输入一个密码,如果符合规则,则显示…否则显示…

    6.18(检测密码)一些网站对于密码具有一些规则.编写一个方法检测字符串是否是一个有效密码.编写一个程序,提示用户输入一个密码,如果符合规则,则显示-否则显示- 题目 题目描述 破题 代码 运行示例 ...

  7. linux更改root密码_如何在Linux中更改root密码

    linux更改root密码 Let's go over the simple commands to change the root password in Linux. Linux root ref ...

  8. linux中更改用户密码_如何在Linux中更改用户密码

    linux中更改用户密码 In this tutorial, we will focus on how you can change a user's password in Linux. We wi ...

  9. linux用户密码管理,Linux_详解Linux中的用户密码管理命令passwd和change,passwd 修改用户密码参数 nbsp - phpStudy...

    详解Linux中的用户密码管理命令passwd和change passwd 修改用户密码 参数 -k 保持未过期身份验证令牌 -l 关闭账号密码.效果相当于usermod -L,只有root才有权使用 ...

最新文章

  1. MyBatis 中的 set 元素用法(MyBatis 3.1.1)
  2. 2020-12-2(详细解释neg指令 以及SCAS ,STOS的运用)
  3. Asterisk使用数据库配置方法
  4. 如何在指定的内容中找出指定字符串的个数
  5. Intellij IDEA连接Spark集群
  6. SQL Server 2005 Service Pack 4 下载地址
  7. 用 .NET Core开发BT下载的Tracker服务器
  8. 大数据开发比赛echarts所有要学习的主要图表 简单化 得分点
  9. 盘点百度、阿里、腾讯、华为自动驾驶战略
  10. 《posix多线程编程》笔记(四)
  11. PIC反汇编 MPLAB HEX
  12. 全国计算机等级考试技巧,必看!全国计算机等级考试的应试技巧
  13. spring cloud 资源服务器授权配置
  14. Android中全局搜索(QuickSearchBox)详解(一)
  15. Qt、C++实现五子棋人机对战与本地双人对战
  16. 【嵌入式】嵌入式开发为什么要跑操作系统?
  17. python用PIL给图片反转颜色
  18. android recyclerview流式布局,Android FlexboxLayout流式布局
  19. Angular2 中用管道技术吧汉字转换为拼音
  20. 5分钟教你用GANs生成CryptoPunks风格图像

热门文章

  1. WPF中的动画——(三)时间线(TimeLine)
  2. 关闭窗口(window.close)
  3. Android studio中添加外部的jar包
  4. Java-Runtime
  5. 对策略模式与状态模式的一点思考
  6. Linux嵌入式系统开发之Led开发——应用篇(一)
  7. undefined reference to `dlclose‘问题解决方法
  8. 当Tomcat配置安装都成功端口号也没问题时网页输入http://localhost:8080/打不开如何解决
  9. 第二增长曲线:如何发现击穿破局点的单一要素?
  10. Normalizing Flows Tutorial(标准化流教程)第一部分