前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux shadow文件

linux shadow文件

作者头像
星哥玩云
发布2022-09-15 15:04:24
2.2K0
发布2022-09-15 15:04:24
举报
文章被收录于专栏:开源部署

说到用户管理,就不得不提到shadow这个文件,shadow有三个功能:

  • 隐藏密码
  • 扩充密码的功能
  • 提供账号管理工具

隐藏密码: 因为/etc/passwd和/etc/group文件的权限必须是0644,这意味着所有的用户都能读取到内容,所以为了安全起见,我们通过shaodw把用户和组的密码分别隐藏在/etc/shadow,/etc/gshadow文件中,且这两个文件只有管理员,也就是root能调用

提供账号管理工具 :我们之前所介绍的用户和组管理的相关命令,都是shadow所提供的工具

扩充密码功能: 这个扩充密码功能就是除了密码之外的额外功能,如,密码的有效期限,设置群组管理员(组长)等,这些都是记录在/etc/shadow,/etc/gshadow文件中

/etc/shadow: 存储用户密码及密码额外功能的文件

代码语言:javascript
复制
文件内容:
root:$6$T52Xvk7zu84.tDXp$nfXcm6LTfUx.ZviEo7Eq1bPjDO...::0:99999:7:::
bin:*:18027:0:99999:7:::

/etc/shadow文件的格式与/etc/passwd类似,也是每一行代表一个账号的数据,使用:进行分隔.

内容详解

代码语言:javascript
复制
USERNAME:PASSWORD:LAST_CHANGED:MIN_DAYS:MAX_DAYS:WARNNING:EXPIRES:INVALID:RESERVED

1、USERNAME:用户账号名称。

2、PASSWORD:加密后的密码。

3、LAST_CHANGED:密码最后一次修改的日期。

4、MIN_DAYS:密码修改的最小间隔天数。

5、MAX_DAYS:密码修改的最大天数。

6、WARNNING:密码过期前警告的天数。

7、EXPIRES:密码过期的日期

8、INVALID:	账号失效日期

9、RESERVED:保留位,未定义功能

这里面我们所提到的日期都是从1970年1月1日起经过的天数,所以我们看到的不是日期的格式,而是一组数字,我们接下来看下另一个文件

/etc/gshadow: 存储组密码及密码额外功能的文件

代码语言:javascript
复制
文件内容:
root:::
bin:::
daemon:::

内容详解

代码语言:javascript
复制
​GROUPNAME:PASSWORD:ADMINISTRATORS:MEMBERS   

GROUPNAME:	组名

PASSWORD:	组密码

ADMINISTRATORS: 组长

MEMBERS:	组成员

除此之外用户管理还有一个简单的方法,那就是以root用户身份登录图形界面

1571302990425.png
1571302990425.png
1571303014802.png
1571303014802.png

cockpit

代码语言:javascript
复制
# systemctl start cockpit
http://localhost:9090
image20200331143440902.png
image20200331143440902.png
image20200331143459395.png
image20200331143459395.png

管理密码的有效期限

Shadow除了会把密码数据隐藏到其他文件、提供许多账号管理工具外,还允许你为账号或密码设置有效期限,以提高Linux 的安全性。目前的 Shadow 可以设置下列两种期限:

密码过期

一旦超过密码过期日期,用户成功的登录Linux 时,会强迫用户设置一个新的密码。设置完毕后,才会开启用户的 Shell 程序。设置密码过期的目的,在于提高 Linux 的安全性。

账号过期

若超过账号过期日期,Linux 会禁止用户登录系统,即使输入正确的密码,也无法登录。当账号过期时,Linux 会提示用户联系管理员修改账号过期日期。

代码语言:javascript
复制
Your account has expired; please contact your system administrator 	

我们可以使用chage命令来查看或调整这些相关的期限

  • chage命令
代码语言:javascript
复制
[root@zutuanxue ~]# chage -l hello
最近一次密码修改时间					:从不
密码过期时间					:从不
密码失效时间					:从不
帐户过期时间						:从不
两次改变密码之间相距的最小天数		:0
两次改变密码之间相距的最大天数		:99999
在密码过期之前警告的天数	:7

chage
  -m	设置密码修改的最小天数
  -M	设置密码修改的最大天数
  -d	设置密码最后修改日期
  -I	设置密码过期后,锁定账号的天数
  -E	设置账号过期日期,0=立即过期,-1=永不过期
  -W	设置密码过期前的警告天数
  -l	查看指定用户的相关信息
  -h	帮助
image20200331164400723.png
image20200331164400723.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档