RSCHA认证第六讲管理用户密码

多多北漂悟道之路 · · 1000 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

RH124系列课程的目标:
1、获得 Redhat 或者 centos 上执行核心系统管理任务所需的足够技能。
2、掌握 RHCSA 认证红帽企业 Linux 系统管理员所需的基本技能。

本章的目标:管理用户密码。

手动锁定帐户,或者通过定义在阴影密码文件中设置密码过期策略来锁定。

阴影密码和密码策略

在遥远的过去,加密的密码存储在全局可读的/etc/passwd 文件中。这曾被认为具有合理的安全性,直到对加密密码的字典式攻击变得常见。在那时,加密密码或“密码哈希”移到更加安全的/etc/shadow 文件中。这种新文件也允许实施密码期限和到期功能。
现代密码哈希中的存储三段信息:
$6$8k9dc5/aS415T

  • 6: 哈希算法。数字1表示MD5哈希。使用SHA-512哈希时会出现数字6
  • 8k9dc5: salt用于加密哈希。这原先是随机选取的。salt和未加密密码组合并加密,创建加密的密码哈希。使用salt 可以防止两个密码相同的用户在 /etc/shadow 文件中拥有相同的条目。
  • aS415T: 已加密哈希。
    用户尝试登录时,系统在/etc/shadow 中查询用户的条目,将用户的 salt 和键入的未加密密码组合,再使用指定的哈希算法加密。如果结果与已加密哈希匹配,则用户键入了正确的密码。如果结果与已加密密码不符,则用户键入了错误的密码,登录尝试也会失败。这种方式允许系统判断用户是否键入了正确的密码,同时又不以用于登录的密码形式来存储密码。
    红帽企业 Linux 7 默认使用 SHA-512 加密

/etc/shadow格式

/etc/shadow格式采用以下格式(九个冒号分割的字段):

name:password:lastchange:minage:maxage:warning:inactive:expire:black
  • name : 登录名称。这必须是系统中的有效帐户名。
  • password : 已加密的密码。密码字段的开头为感叹号时,表示该密码已被锁定。
  • lastchange: 最近一次更改密码的日期,以距离1970年1月1日的天数表示。
  • minage : 可以更改密码前的最小天数,如果是0则表示无最短期限要求。
  • maxage : 必须更改密码钱的最多天数。
  • warning : 密码即将到期的告警期。以天数表示,0表示“不提供警告”
  • inactive : 帐户在密码到期后保持活动的天数。在此期限内,用户依然可以登录系统并更改密码,在指定的天数过后,账号被锁定,变为不活动。
  • expire : 账号到期日期,以距离1970年1月1日的天数表示。
  • blank : 这一 blank 字段为预留字段,供未来使用。

密码过去

chage -m 0 -M 90  -W 7 -I14 username

在下次登录时,chage -d 0 username 将强制更新密码。
chage -l username 将列出用户名的当前设置。
chage -E YYYY-MM-DD username 将在指定的日期使用帐户到期。

限制访问

通过 chage 命令,可以设置帐户到期。到了该日期时,用户无法以交互方式登录系统。usermod 命令可以通过 -L 选项“锁定”帐户。
用户离开公司时,管理员可以通过一个 usermod命令锁定帐户并使其到期。必须使用距离1970年1月1日的天数来指定该日期。

sudo usermod -L -e 1 elvis

锁定帐户可防止用户使用密码向系统进行验证。这是预防已离开公司的员工访问某一帐户的推荐方式。如果以后该员工返回,其账户可通过 usermod -U USERNAME解锁。如果帐户也到期,务必也要更新到期日期。

nologin shell
有时,用户需要一个帐户并通过密码与系统进行身份验证,但不需要在系统上使用交互式shell。例如,邮件服务器可能需要帐户来存储邮件,需要密码供用户通过检索邮件所用的邮箱客户端进行身份验证,用户不需要直接登录该系统。
这种情况的常用的解决方案是将用户的登录 shell 设置为/sbin/nologin。如果用户尝试直接登录系统,nologin “shell”将直接关闭该链接。
使用nologin shell 可以防止以交互方式使用系统,但不会阻止所有访问,用户依然可以通过身份验证,并使用web应用,文件传输程序或邮件读取程序等应用上传或检索文件

关于作者,目前在拉勾网任职运维开发部的负责人,长期从事运维开发工作,有多年的运维技能培训能力,培训了多批运维同学,至今大致有300人左右;
发现一问题,好多内容好多年都在重复得讲,没有一个产物直接输出给大家。计划利用空闲时间将多年的知识(分享的内容,包括技能,心得,管理和爱好)沉淀到我的公众号: 北漂悟道之路


感兴趣的同学可以关注一下我的公众号。
技能:擅长python开发,django框架开发,Kubernetes架构、运维开发架构,Linux运维,Hadoop运维和流行监控;了解golang开发和C++开发。
爱好:美食,自驾和旅游
希望了解作者的同学可以加我微信号:XiaoJiaQingShi


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:多多北漂悟道之路

查看原文:RSCHA认证第六讲管理用户密码

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1000 次点击  
加入收藏 微博
上一篇:Sublime 之 Go
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传