一、基本安全措施

1、系统账号清理

(1)将非登录用户的shell设为/sbin/nologin

a、usermod -s

b、chsh(交互式修改)

c、chsh -s

除了以上这三种方法,也可以直接vi编辑/etc/passwd文件进行修改

(2)锁定长期不是用的账号

a、锁定:passwd -l+用户名(将在密文前增加两个“!”)解锁:passwd -u+用户名

b、锁定:usermod -L+用户名(将在密文前增加一个“!”)解锁:usermod -U+用户名

查看:passwd -S

除了以上这两种种方法,也可以直接vi编辑/etc/shadow文件进行修改

(3)删除无用的账号

userdel [-r] +用户名

(4)锁定账号文件(/etc/passwd、/etc/shadow)

锁定:chattr +i

解锁:chattr -i

查看:lsattr  

2、密码安全控制

(1)设置密码有效期

给已存在的用户的密码设置有效期:chage -M+天数+用户名

                                                          passwd -x+天数+用户名

给以后添加的用户的默认密码设置有效期:通过vi编辑/etc/login.defs文件,修改“PASS_MAX_DAY”后面的数值

(2)要求用户下次登录时修改密码

chage -d 0+用户名

3、命令历史限制

history:查看历史命令

echo $HISTSIZE:查看历史命令条数

(1)减少历史的命令条数

通过vi编辑文件/etc/profile文件,修改“HISTSIZE=”后面的数值,修改完后:source /etc/profile(. /etc/profile)

export HISTSIZE=跟自己设置的数值,修改完后:source /etc/profile(. /etc/profile)

(2)注销时自动清空历史命令

vi编辑宿主目录下的“.bash_logout”文件,添加history -c,(虽然删除了历史命令但是.bash_logout这个文件里还有所以)保存退出之后:>.bash_history(清空这个文件里的历史命令)

4、终端自动注销

a、通过vi编辑/etc/profile文件添加“TMOUT=自己设定的数值(以秒为单位)”,source /etc/profile(. /etc/profile)

b、export TMOUT=自己设定的数值source /etc/profile(. /etc/profile)

若想取消这个变量:unset TMOUT

二、切换用户

su:切换用户

格式:su [-] 目标用户(“-”等同于“--login”或“-l”,表示切换用户后进入目标用户登录的shell环境)

查看su操作记录(安全日志文件:/var/log/secure):tac /var/log/secure

三、PAM安全认证(可插拔认证模块PAM)

1、PAM认证原理(PAM认证一般遵循的顺序):Service--->PAM--->pam_*.so

2、常见的四种认证类型:auth           认证管理   接受用户名和密码,进而对该用户的密码进行认证

                                         account      账户管理   检查账户是否被允许登录系统,账号是否过期,账号的登录是否有时间段的限制等权限

                                         password   密码管理   主要是用来修改用户的密码

                                         session      会话管理   只要是提供对会话的管理和记账

3、常见的五种控制类型:required    验证失败仍然继续,但返回fail

                                          requisite   验证失败则立即结束整个验证过程,返回fail

                                          sufficient   验证成功则立即返回,不再继续,否则忽略结果并继续

                                          optional    不用于验证,只是显示信息(通常用于session类型)

                                          include      不进行认证,转到后面PAM模块进行认证

 四、sudo命令:提升用户的执行权限

1、sudo:以其他的用户身份执行授权的命令

2、格式:sudo+授权的命令

3、配置sudo授权

a、添加单个用户的sudo授权

visudo或者vi /etc/sudoers,添加配置内容:Defaults logfile=/var/log/sudo

配置的内容的格式为:用户+主机名列表=命令程序列表(命令前加“!”表示“除了”此命令)

 b、批量授权:将希望提权的用户加入wheel组

Host Aliases:主机别名

User Aliases:用户别名

Command Aliases:命令别名

设置别名后添加格式:用户别名+主机别名=命令别名(大写)

4、查询授权操作:sudo -l