一、基本安全措施
1、系统账号清理
常见的非登录用户账号包括bin、daemon、 adm、lp、mail等。为了确保系统安全,这些用户账号的登录Shell通常是/ sbin/nologin,表示禁止终端登录,应确保不被人为改动。
//将非登陆用户的Shell设为/sbin/nologin或者/bin/falsh
[root@checker ~]# usermod -s /sbin/nologin [用户名]
//删除无用的账号
[root@checker ~]# userdel -r games
对于Linux服务器中长期不用的用户账号,若无法确定是否应该删除.可以暂时将其锁定。例如.若要锁定.解锁名为zhangsan的用户账号.可以执行以下操作(passwd、usermod命令都可用来锁定,解锁账号)。
[root@checker ~]# usermod -L zhangsan //锁定账号
[root@checker ~]# passwd -S zhangsan //查看账号状态
zhangsan LK 2024-01-05 0 99999 7 -1 (密码已被锁定。)
[root@checker ~]# usermod -U zhangsan //解锁账号
[root@checker ~]# passwd -S zhangsan
zhangsan PS 2024-01-05 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
如果服务器中的用户账号已经固定,不再进行更改,还可以采取锁定账号配置文件的方法。使用chattr命令,分别结合“+i”“-i”选项来锁定.解锁文件.使用lsattr命令可以查看文件锁定情况。
[root@checker ~]# chattr +i /etc/passwd /etc/shadow //锁定文件
[root@checker ~]# lsattr /etc/passwd /etc/shadow //查看锁定文件的状态
----i----------- /etc/passwd
----i----------- /etc/shadow
[root@checker ~]# chattr -i /etc/passwd /etc/shadow //解锁文件
[root@checker ~]# lsattr /etc/passwd /etc/shadow
---------------- /etc/passwd
---------------- /etc/shadow
2、密码安装控制
执行以下操作可将密码的有效期设为30天(chage命令用于设置密码时限)。
[root@checker ~]# vim /etc/login.defs (适用与新建用户)
对已有用户设置
[root@checker ~]# chage -M 30 zhangsan
要求用户下次登录时修改密码
[root@checker ~]# chage -d 0 zhangsan
[root@checker ~]# su zhangsan
更改用户 zhangsan 的密码 。
为 zhangsan 更改 STRESS 密码。
(当前)UNIX 密码:
新的 密码:
无效的密码: 这个密码和原来的相同
新的 密码:
无效的密码: 密码与原来的太相似
新的 密码:
3、命令历史,自动注销
Bash 终端环境中.历史命令的记录条数由变量HISTSIZE 控制,默认为1000条,通过修改/atc/profile文件中的HSTSIZE变量值.可以影响系统中的所有用户。例如,可以设置最多只记录100条历史命令。
[root@checker ~]# history //记录在命令行输入过的命令
1 systemctl stop firewalld.service
2 systemctl status firewalld.service
............[root@checker ~]# history -c //临时清除输入过的命令
[root@checker ~]# vim /etc/profile
Bash 终端环境中,还可以设置一个闲置超时时间,当超过指定的时间没有任何输入时即自动注销终端,这样可以有效避免当管理员不在时其他人员对服务器的误操作风险,闲置超时由变量TMOUT来控制,默认单位为秒(s).
[root@checker ~]# export TMOUT=600 //设置全局变量
[root@checker ~]# echo $TMOUT
600
二、用户切换与提权
1、su命令——切换用户
使用su命令,可以切换为指定的另一个用户,从而具有该用尸的所闫秋限。当然,功换时需安对目标用户的密码进行验证(从root用户切换为其他用户时除外)。
[root@checker ~]# su - zhangsan
上一次登录:五 1月 5 17:26:18 CST 2024从 192.168.223.1pts/1 上
[zhangsan@checker ~]$
这样带来了安全风险。为了加强su命令的使用控制,可以借助于pam_wheel认证模块.只允许极个别用户使用su命令进行切换。实现过程如下:将授权使用su命令的用户添加到wheel 组,修改/etc/pam,d/su认证配置以启用pam_wheel认证。
[root@checker ~]# gpasswd -a zhangsan wheel
正在将用户“zhangsan”加入到“wheel”组中
[root@checker ~]# grep wheel /etc/group
wheel:x:10:zhangsan
[root@checker ~]# vim /etc/pam.d/su
启用pam_wheel认证以后,未加入到wheel组内的其他用户将无法使用su命令.尝试进行切换时将提示“拒绝权限”,从而将切换用户的权限控制在最小范围内。