2017年架构师最重要的48个小时 | 8折倒计时
一、大年夜主动化需求说起
对于这个问题,秉承实在用主义的精力,我本来也不会去深究。毕竟,安装的时刻会设置暗码,安装完毕后能经由过程passwd敕令重置暗码,学会这两点后已知足一般的需求已经绰绰有余了。
如不雅明白了暗码的生成机制,那么这个主动化需求的难题也就水到渠成了。
二、暗码生成理论
然则,对于主动化而言,知道以上的两点是不敷的。Linux的主动化安装过程中,设置用户登录暗码这事,肯定不克不及有工资干涉,不然谈什么主动化。操作体系安装完毕后,也有可能会有重置用户暗码的主动化需求,此时应用passwd敕令来重置用户暗码,也不见得是最佳的选择。
有Linux基本的人必定知道,Linux的用户登录暗码信息是存放在/etc/shadow文件傍边的,并且该文件只有root用户可以或许拜访。以下会以voidint这个用户为例,看一下这个用户的暗码信息。
- $ sudo cat /etc/shadow | grep voidint
- [sudo] password for voidint:
- voidint:$6$3kheX/Vg$TGum9JEjfmGsj8Mfk3SUY/d/bWkJgnRimCxoaDTX7wcgrraYvU.fiziEUdpDglWc58uPZqWJhKNjiXayP9Q6b0:16892::::::
若何生成一个Linux用户登录暗码?可能有人会说用passwd生成。切实其实,passwd敕令可以或许赞助我们重置用户登录暗码,然则这并没有解答若何生成一个Linux用户登录暗码的疑问。
很明显,这个字符串被:符号分隔成了9段。我们这里只存眷前两段,至于每一段具体的含义,可以戳这里自行浏览。第一段,是用户名称。第二段,即为用户暗码。其实暗码这种称呼并不精确。相对精确的说法是,用户暗码明文经由某种哈希算法计算所获得的密文。然则,鉴于这个相对精确的说法实袈溱太长太拗口,不便于表达。是以,以下提到的暗码在无特别解释情况下,一律指的是暗码明文的密文。
言归正传,看到这里信赖很多多少人会和我有一样的思虑: 是不是只要知道了暗码生成的算法,并按照此算法生成一个知足Linux请求的暗码,再把暗码覆盖这个第二段的内容,那么竽暌姑户暗码就被重置了吗?
细心看这段暗码,会发明它是由$xxx$xxx$xxx的格局构成,即竽暌股$符号分隔的3端字符串构成。查阅材料后得知,这个格局可以进一步概括为$id$salt$encrypted。扼要颂峦宦$id$salt$encrypted中各个部分的含义:
- id: 加密(确切说是哈希)所用算法的代号。
- salt: 由法度榜样随机生成的字符串,即盐)。
- encrypted: 用户暗码明文字符串加盐后应用哈希算法所得的哈希值,即哈希(明文+盐)。
特别解释
资估中还提到了别的一种情势的暗码——$id$rounds=yyy$salt$encrypted。个中,盐的部分换成了rounds=yyy。yyy是一个由用户(调用方)供给的[1000, 999999999]之间的┞符数。
三、暗码生成实践
知道了膳绫擎这部分基本常识,那么接下来就是理论指导实践的环节了。具体可以借助什么对象来生成暗码呢?这里应用的grub-crypt对象。你可以在某个Linux发行版中安装这个对象,也可以应用我供给的┞封个dockerfile。
- 应用sha512算法生成暗码
- $ grub-crypt --sha-512
- Password:
- Retype password:
- $6$r1jcut3Crl8bSIMo$XfKnrl4Ykzk2KPQ59MCXcUef9OjZWoZrIp7aeWwnCzIVQY1p/G1EiJQE4DYFej783NlvR5KtKYXs4P/hQaVst.
- 将生成的暗码写入/etc/shadow文件中(该文件只有root用户才有权限读写,若root也无权限,则付与600权限即可)
- $ sudo cat /etc/shadow | grep voidint
- voidint:$6$r1jcut3Crl8bSIMo$XfKnrl4Ykzk2KPQ59MCXcUef9OjZWoZrIp7aeWwnCzIVQY1p/G1EiJQE4DYFej783NlvR5KtKYXs4P/hQaVst.:16892::::::
- 退出当前用户并应用新修改的暗码登录
四、参考
- CRYPT(3)
- CentOS / RHEL 6 : How to password protect grub (Password-Protected Booting)
- Command | kickstart之中rootpw暗码生成办法
- 鸟哥的Linux私房菜——/etc/shadow文件构造
【编辑推荐】
- 如安在一个U盘上安装多个Linux发行版
- NixOS Linux:先设备后安装的Linux
推荐阅读
2017年架构师最重要的48个小时 | 8折倒计时 2017年PC硬件主旋律就是一个关键词:涨价。CPU、显卡、内存通通涨价,而大年夜2016年领涨的SSD价格却逐渐回履┞俘常,一众SSD厂商大年夜呼如今的>>>详细阅读
本文标题:Linux用户登录密码的生成
地址:http://www.17bianji.com/lsqh/38302.html
1/2 1