Linux解析/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow文件

/etc/passwd

/etc/passwd 文件是Linux系统中用于存储用户账户信息的文件。这个文件对系统中的所有用户都是可读的,因为它不存储密码,密码信息已经移动到了 /etc/shadow 文件中。

示例

username:x:1000:1000:User Name:/home/username:/bin/bash

用户名:x:用户ID:组ID:用户姓名:/家目录/用户名:/bin/bash
  • username 是登录名。
  • x 表示密码被存储在 /etc/shadow 文件中。
  • 1000 是用户ID。
  • 1000 也是组ID。
  • User Name 是用户信息,这里用中文表示用户的真实姓名或其他描述信息。
  • /home/username 是用户的主目录。
  • /bin/bash 是用户默认的shell。

/etc/shadow 

/etc/shadow 文件,它用于存储用户密码的加密信息以及与密码相关的属性。由于安全原因,这个文件通常只能被root用户或具有相应权限的用户读取。

sudo cat /etc/shadow

示例

username:$6$rounds=45678$asdgewqrtyuioplkjhgfdsazxcvbnmqwerty$asdgewqrtyuioplkjhgfdsazxcvbnmqwerty:18000:0:99999:7:::
用户名:加密密码:上次更改密码的日期:密码最小天数:密码最大天数:密码警告期限:密码禁用期限:账户过期日期:保留字段
  • 用户名:用户登录系统的名称。
  • 加密密码:使用SHA-512算法加密的密码字符串。
  • 上次更改密码的日期:自1970年1月1日以来的天数。
  • 密码最小天数:密码更改后需要等待的天数。
  • 密码最大天数:密码必须更改之前的天数。
  • 密码警告期限:密码过期前多少天开始警告用户。
  • 密码禁用期限:密码过期后账户被禁用的天数。
  • 账户过期日期:自1970年1月1日以来的天数,账户将被禁用。这里为空,表示没有设置账户过期。
  • 保留字段:保留给将来使用,目前通常为空。

/etc/group

/etc/group文件,它用于定义用户组(groups)的详细信息。这个文件包含了系统上所有用户组的记录,每行代表一个用户组的信息。

示例

users:x:100:user1,user2,user3
组名:密码:组ID:组成员列表

  • users 是组名。
  • x 表示该组没有设置密码。
  • 100 是该组的GID。
  • user1,user2,user3 是属于 users 组的用户账户。

/etc/gshadow

/etc/gshadow 文件是一个安全文件,它用于存储用户组的加密密码和与组密码相关的其他信息。与 /etc/group 文件类似,/etc/gshadow 文件中的每一行代表一个用户组的信息,但是它包含了更详细的安全数据。

mygroup:!:root:alice,bob
  • mygroup 是组名。
  • ! 表示该组没有设置密码
  • root 是唯一被允许管理该组的用户。
  • alice,bob 是属于 mygroup 组的成员。

你可能感兴趣的:(Linux运维,linux,运维,服务器)