往期系列内容回顾:
Linux基础知识之Shell命令行及终端中的快捷键
Linux基础知识之man手册页_man 手册页-CSDN博客
Linux基础知识之Linux文件系统权限-CSDN博客
Linux基础知识之使用 Shell 扩展匹配文件名-CSDN博客

用户密码是Linux用户登录的传统凭据之一. 以前密码保存在 /etc/passwd 文件,所有用户皆可读,之后将密码保存到只有 root 可读的 /etc/shadow 文件中,文件格式如下:
[student@workstation ~]$ sudo grep student /etc/shadow student:$6$mMzsPCHs9fkLFF4E$0ZH52HA8QGcAoYspzaXOyooRxCPTj7ct90Pfgl4XkYDkrOgEWVFAPi.tDZj51DAN8NoLuBkc3Bj3MaxJWqrcV0:19860:0:99999:7::: 这段 shadow 密码的格式是 Linux 系统中存储密码的方式之一。它表示用户"student"的密码信息。这个 shadow 中包含的字段分别为:
用户登录时,使用 salt 组合用户 password,然后进行哈希加密,之后与 shadow 对应用户的散列值比对,一致则密码验证通过。
chage (change age)命令用以修改密码生命周期[MISSING IMAGE: , ]
useradd sysadmin05 chage -l sysadmin05 chage -m 0 -M 90 -W 7 -I 14 sysadmin05 chage -l sysadmin05 # -m:最小生命周期 # -M:最大生命周期 # -W:警告周期 # -l:宽限周期 cloudadmin10 用户是系统中的新用户,您要设置自定义密码期限策略。您希望账户到期时间设置即日起 30 天,可以使用以下命令:
[root@workstation ~]# useradd cloudadmin10 [root@workstation ~]# chage -l cloudadmin10 [root@workstation ~]# date +%F [root@workstation ~]# date -d "+30 days" +%F [root@workstation ~]# chage -E $(date -d "+30 days" +%F) cloudadmin10 [root@workstation ~]# chage -l cloudadmin10 | grep "Account expires"
chage -d 0 username # 要求 username 用户下次登录必须修改密码 chage -l username # 显示 username 用户密码生命周期详情 chage -E 2024-11-01 username # 定义密码过期时间
选项 | 作用 |
PASS_MAX_DAYS | 密码最大生命周期 |
PASS_MIN_DAYS | 密码最小生命周期 |
PASS_WARN_AGE | 密码警告周期 |
PASS_MIN_LEN | 密码最小长度 |
更多关于用户的配置可以查看 man 手册 login.defs(5)
man 5 login.defs
当有效的用户的账户不需要登录系统,可以将其登录 shell 设置为 nologin shell。例如系统服务账号,并不需要登录操作系统示例:
[root@workstation ~]# usermod -s /sbin/nologin newapp [root@workstation ~]# su - newapp 值得一提的是,nologin 可以防止以交互式使用系统,但不会阻止所有访问。如果用户使用用户密码进行身份验证,他们有时可以通过身份验证,并使用Web 应用、文件传输程序或邮件读取程序等应用上传或检索文件。
[root@workstation ~]# usermod -L -e 0 student [root@workstation ~]# ssh student@localhost Your account has expired; please contact your system administrator. Connection closed by ::1 port 22 [root@workstation ~]# chage -l student Last password change : May 17, 2024 Password expires : never Password inactive : neverAccount expires : Jan 01, 1970 Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7 — Linux文章推荐 —
【资料领取】200个Linux常用命令手册
《鸟哥Linux私房菜》全新完整中文版PDF
40 个简单又有效的 Linux Shell 脚本示例
linux运维必备,100道常见面试题
超强linux学习笔记,值得一看(附PDF下载)
红帽认证有什么优势?速看本文
5 种 Linux 安装包管理工具中文手册!抓紧看!
END
公众号:厦门微思网络
始于2002年,专业IT认证培训22年,面向全国招生!
微思-主要课程有:
*网络技术:华为HCIA/ HCIP/HCIE;思科CCNA/CCNP/CCIE
*Linux技术:红帽 RHCE/RHCA
*K8S&容器:CKA/CKS
*数据库:ORACLE OCP/ OCM ;MySQL ;达梦数据库
*虚拟化:VMware VCP/VCAP
*安全认证:CISP体系/CISSP/ CISA;CCSK;CISAW体系
*管理类:PMP 项目管理;软考中/高项;ITIL体系;Togaf
其他课程如:ACP;Azure...
———————————————