linux用户管理中两个重要的“父子”配置文件

简介:
1.查看配置文件/etc/passwd具体内容
[root@chenfan-centos ~]# head /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin

‘/etc/passwd’ 由 ‘:’ 分割成7个字段

2.每个字段具体含义讲解
  • 用户名(如第一行中的root就是用户名),代表用户账号的字符串。
  • 存放的就是该账号的口令,在这里只用一个 ‘x’ 代替,早期的unix系统口令确实是存放在这里,但基于安全因素,后来就将其存放到 ‘/etc/shadow’ 中了。
  • 代表用户标识号,也叫做uid。0就是root,通常uid的取值范围是0~65535(但实际上已经可以支持到4294967294),0是超级用户(root)的标识号,1~499由系统保留,普通用户的标识号大于等于500。
  • 表示组标识号,也叫做gid。这个字段对应着/etc/group 中的一条记录,其实/etc/group和/etc/passwd基本上类似
  • 注释说明,该字段没有实际意义,通常记录该用户的一些属性,例如姓名、电话、地址等等。
  • 用户的家目录,当用户登录时就处在这个目录下。root的家目录是/root,普通用户的家目录则为/home/username,这个字段是可以自定义的。
  • shell,用户登录后要启动一个进程,作用是用来将用户下达的指令传给内核。而Redhat/CentOS的shell是bash,默认的路径为/bin/bash,如果您想建立一个账号不让他登录,那么就可以把该字段改成/sbin/nologin。
二:子文件/etc/shadow
1.查看配置文件/etc/shadow的内容
[root@chenfan-centos ~]# head -n3 /etc/shadow 
root:$6$Wo0kPkgm$OAp0Wl2AsaE4ei4YVbxo3DIU5OBSYxn1y7qxB5Jns70Yk91AvzElsR5GmoGCC8DUXkKzK7vyiV8wXNeaWNm861:15832:0:99999:7:::
bin:*:15628:0:99999:7:::
daemon:*:15628:0:99999:7:::

和/etc/passwd类似,被“:”分为了9个字符

2.每个字段具体含义讲解
  • 用户名,跟/etc/passwd对应。
  • 加密密码,加密算法升级为SHA512散列加密算法,如果密码位为“!!”或“*”代表没有密码,不能登录,其shell为/sbin/nologin。
  • 密码最后一次修改的时间,以1970年1月1日作为标准时间,每过一天时间戳加1
  • 两次密码修改的间隔时间,要过多少天才可以更改密码,默认是0,即不限制
  • 密码的有效期,密码多少天后到期,默认为99999。若设置成20,即20天后到期,必须修改密码,不然登录不了系统。
  • 密码到期前的警告期限,若设置为6,即到期前6天将通知用户。
  • 账号失效宽限期(和第5字段相对比)。若设置为2,到期过后2天后再不修改密码,用户锁定。
  • 账号的生命周期(要用时间戳表示),到了指定的期限,账号将失效。
  • 保留字段,没有特别意义
3.时间戳的换算方法
  • 把时间戳换算成日期: [root@chenfan-centos ~]#date -d "1970-01-01 16893days" Sar Apr 2 00:00:00 CST 2016
  • 把日期换算成时间戳: [root@chenfan-centos ~]#echo $(($(date--date="2016/04/02"+%s)/86400+1)) 16893

本文转自Linux就该这么学博客园博客,原文链接:http://www.cnblogs.com/linuxprobe/p/5358561.html,如需转载请自行联系原作者
相关文章
|
7月前
|
存储 运维 安全
linux用户管理
在Linux系统中,用户管理涉及创建、修改和删除用户及用户组,确保权限控制。关键命令如`useradd`用于新建用户,`usermod`调整用户属性,`userdel`删除用户,`passwd`变更密码。用户分为超级用户(root)、普通用户和系统用户。用户组管理包括`groupadd`、`groupdel`、`groupmod`和`gpasswd`。系统通过`/etc/passwd`和`/etc/group`文件存储用户和组信息,采用基于用户和组的权限模型。`su`和`sudo`用于切换用户权限,而`/etc/skel`目录提供新用户家目录的模板。这些机制保障了系统的安全和资源管理。
48 2
|
7月前
|
Linux API 数据安全/隐私保护
【Linux 用户管理】Linux用户身份信息获取与管理API 接口
【Linux 用户管理】Linux用户身份信息获取与管理API 接口
85 0
|
7月前
|
存储 Linux 数据安全/隐私保护
Linux文件权限及用户管理
Linux文件权限及用户管理
54 0
|
7月前
|
Linux Shell 数据安全/隐私保护
Linux用户管理
简单说一下 Linux的用户管理
91 1
|
7月前
|
网络协议 Ubuntu Linux
linux网络配置文件
Linux网络配置文件因发行版不同而异:Ubuntu使用`/etc/network/interfaces`,Red Hat系列采用`/etc/sysconfig/network-scripts/ifcfg-ethX`,CentOS用`/etc/sysconfig/network`设置主机名和网关,`/etc/resolv.conf`配置DNS。其他文件如`/etc/hostname`和`/etc/nsswitch.conf`也影响网络设置。编辑这些文件时,记得先备份,并可能需重启网络服务以应用更改。具体操作应参考相应Linux发行版的文档。
79 1
|
7月前
|
搜索推荐 Shell Linux
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
108 2
|
4月前
|
存储 Ubuntu Linux
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
在Linux中,如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配置文件?
|
4月前
|
存储 安全 Linux
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
在Linux中,内核调优配置文件名字有哪些?举例几个内核需要优化的参数配置?
|
4月前
|
网络协议 Ubuntu Linux
在Linux中,设置DNS需要修改哪个配置文件?
在Linux中,设置DNS需要修改哪个配置文件?
|
5月前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
110 2
下一篇
DataWorks