本文是系统安全篇的第二篇,主要介绍有关Linux操作系统用户名和密码的相关配置知识。通过这些知识点的介绍说明,达到增强操作系统安全的目的。
第一、查看是否存在空密码账户。
- 创建测试用户test,并将其用户密码设置为空。
![ceb4c67b9d7f3b900835505ac6a0e0db.png](https://i-blog.csdnimg.cn/blog_migrate/75f0c30d6a1f1c2624f5cbc779addb1b.jpeg)
- 安全起见,在/etc/passwd中用户的密码是被保护的状态,即:使用了X号来隐藏。而实际的密码内容是加密后保存在/etc/shadow文件中,确认是否存在空口令的用户就确认该文件中密码对应字段的长度是否为0。如果为0则证明该用户密码为空。
- 使用cat查看/etc/shadow文件。
![a0aad5fe1ecf3e5c151e52823680f6cf.png](https://i-blog.csdnimg.cn/blog_migrate/896bfa447e7d3418b5853810a014c0a8.jpeg)
- 通过使用命令来查找密码字段长度为0的用户。下面的命令就是以冒号分割,判断第二列密码字段是否有为0的,有为0的将第一列(即用户名)打印出来。通过打印结果可以发现添加的test用户密码为空。
![8cfd8a588d002ebc36deb19a31739c8e.png](https://i-blog.csdnimg.cn/blog_migrate/5764d21be26099f278493dfd04e24016.jpeg)
第二、修改用户的密码
- 同样,以刚才添加的test用户为例,修改此用户的密码。注:使用root用户,通过passwd命令进行修改。
![f0a1dcc11c026ae2aab354d55db20944.png](https://i-blog.csdnimg.cn/blog_migrate/c2121846ab749f4257d19f6145af945f.jpeg)
第三、是否禁止root用户远程登录。此条可参考上一篇文章《系统安全篇(一)-禁止root远程登录》。
第四、修改用户的口令长度设置。
- 查看/etc/login.defs,修改PASS_MIN_LEN为8。
![28c493dae8ebf9c53a161956b640d256.png](https://i-blog.csdnimg.cn/blog_migrate/553e39caa61d35823cf0d483743a135b.jpeg)
第五、修改密码的复杂度。
- 通过修改/etc/pam.d/system-auth。具体修改情况为:
![9d5155635d3db0eaba0865bc694bf4c6.png](https://i-blog.csdnimg.cn/blog_migrate/9209fb8aad7d8a24d59cd1e4fc53a710.jpeg)
- retry=3:密码重复尝试次数为3
- difok=3:允许的新、旧密码相同字符的个数
- lcredit=-1:最少小写字母数为1
- dcredit=-1:最少数字个数为1
- ocredit=1: 限制新密码中至少有多少个特殊字符
第六、设置口令的更换周期。
- 同样,需要修改/etc/login.defs文件。修改PASS_MAX_DAYS项。
![8f1966fcacc164a42d76fa48ba43b04f.png](https://i-blog.csdnimg.cn/blog_migrate/75577bdaf788bab2a2c6b9921da2a147.jpeg)
第七、修改密码采用的摘要算法为SHA512。
- 同样,需要修改/etc/login.defs文件。修改ENCRYPT_METHOD为SHA512。
![2df1feb2e62158adb9c60e274262ecbc.png](https://i-blog.csdnimg.cn/blog_migrate/7d64b5100e3c33fab302abe2ac2216af.jpeg)
修改成功后,可通过命令查看。
![f87a7db82ca298b4b7a84f58406ae9d5.png](https://i-blog.csdnimg.cn/blog_migrate/f6e5125ed792d14b11294b2ba7ce907d.jpeg)
好了。这篇文章暂时总结到此处。
本人具有多年的java开发经验,熟悉多种框架,熟悉网络编程,熟悉java安全编程,熟悉大数据,熟悉多种安全协议,熟悉并发编程,有兴趣的同学可以互相关注,互相学习!!!我们不是代码的奴隶,我们代码的驾驭者。将你的编程思想融入代码,让代码活起来。