基本安全措施
系统账号清理
-
将非登陆用户的Shell设为/sbin/nologin,表示禁止中断登陆,确保不被人为改动
在系统中,除了手动创建的各种账号之外,还包括随系统或程序安装过程而生成的其他大量账号。除了root之外,其他大量账号只是用来维护系统运作、启动或保持服务进程,一般是不允许登陆的,因此也称为非登陆用户
[root@localhost ~]# grep "/sbin/nologin$" /etc/passwd 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 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin operator:x:11:0:operator:/root:/sbin/nologin games:x:12:100:games:/usr/games:/sbin/nologin ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
-
锁定长期不使用的账户
[root@localhost ~]# id zhangsan //查看用户zhangsan uid=1001(zhangsan) gid=1001(zhangsan) 组=1001(zhangsan) [root@localhost ~]# usermod -L zhangsan //锁定账号 [root@localhost ~]# passwd -S zhangsan //查看账号状态 zhangsan LK 2019-11-14 0 99999 7 -1 (密码已被锁定。) [root@localhost ~]# usermod -U zhangsan //解锁账号 [root@localhost ~]# passwd -S zhangsan zhangsan PS 2019-11-14 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
-
删除无用的账号
[root@localhost ~]# id zhangsan uid=1001(zhangsan) gid=1001(zhangsan) 组=1001(zhangsan) [root@localhost ~]# userdel zhangsan //删除账号 [root@localhost ~]# id zhangsan id: zhangsan: no such user
-
锁定账号文件passwd、shadow
[root@localhost ~]# useradd zhangsan //目前为操作锁定,可正常创建账户 [root@localhost ~]# passwd zhangsan 更改用户 zhangsan 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新。 [root@localhost ~]# id zhangsan uid=1001(zhangsan) gid=1001(zhangsan) 组=1001(zhangsan) [root@localhost ~]# chattr +i /etc/passwd /etc/shadow //锁定文件 [root@localhost ~]# lsattr /etc/passwd /etc/shadow //查看状态 ----i----------- /etc/passwd //i 为锁定状态 ----i----------- /etc/shadow //i 为锁定状态 [root@localhost ~]# useradd lisi //尝试创建账号 useradd:无法打开 /etc/passwd //无法打开创建 [root@localhost ~]# id lisi //未创建成功 id: lisi: no such user [root@localhost ~]# userdel -r zhangsan //锁定状态无法删除账号 userdel:无法打开 /etc/passwd [root@localhost ~]# passwd zhangsan //锁定状态无法更改账号密码 更改用户 zhangsan 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd: 鉴定令牌操作错误 [root@localhost ~]# chattr -i /etc/passwd /etc/shadow //解锁文件 [root@localhost ~]# lsattr /etc/passwd /etc/shadow //查看为解锁状态 ---------------- /etc/passwd ---------------- /etc/shadow [root@localhost ~]# passwd zhangsan 更改用户 zhangsan 的密码 。 新的 密码: 无效的密码: 密码少于 8 个字符 重新输入新的 密码: passwd:所有的身份验证令牌已经成功更新。 //解锁后可以更改密码 [root@localhost ~]# userdel -r zhangsan //接所有可以删除账号 [root@localhost ~]# id zhangsan id: zhangsan: no such user
当所有的用户账号已经固定不在进行更改,可以采取锁定账号配置文件的方法。使用chattr命令,分别结合“+i” “-i”选项来锁定、解锁文件,使用lsattr命令可以查看文件锁定情况。
在账号文件被锁定情况下,其内容跟不允许变更,因此无法添加、删除账号,也不能更改用户的密码、登陆shell、宿主目录等属性信息。
密码安全控制
-
设置密码有效期
-
已创建的用户设置密码有效期
[root@localhost ~]# chage -M 30 lisi
-
未创建、准备创建的用户设置密码有效期 vim/etc/login.defs
[root@localhost ~]# vim/etc/login.defs
配置文件更改后,仅对后期创建的用户生效,不会影响到先前已创建的用户密码有效期
-
-
要求用户下次登陆时修改密码
将有效期设置为0,强制在下次登