1.1系统账号清理
将非登录用户的Shell设为/sbin/nologin 锁定长期不使用的账号 删除无用的账号 ●锁定账号文件passwd、shadow,用以控制用户(包括root)无法创建删除修改账户
案例:
1.2锁定账户跟解锁账户
1.3.密码安全控制
设置密码有效期
要求用户下次登录时修改密码
案列:
:wq ##保存退出
1.4历史命令,自动注销
减少记录的命令条数
1.5注销是自动清空命令历史
修改用户宿主目录中的~/.bash_logout文件,添加清空历史命令的操作语句。即:当用户注销(退出已登录的bash环境)时,所记录的历史命令将自动清空
1.6终端自动注销
bash终端环境中,可以设置一个闲置超时时间,当超过指定时间没有任何输入时即自动注销终端,这样可以有效避免当管理员不在时其他人员对服务器的误操作风险。闲置时间有变量TMOUT来控制,默认单位为秒
2.2密码验证
2.3限制使用su命令的用户
将允许使用su命令的用户加入wheel组,在wheel组内的用户才可以使用su切换用户命令
默认情况下,任何用户都允许使用su命令,从而有机会反复尝试其他用户(如root) 的登录密码,这样带来了安全风险。为了加强su命令的使用控制,可以借助于pam wheel 认证模块,只允许极个别用户使用 su命令进行切换。实现过程如下:将授权使用su命令 的用户添加到wheel 组,修改/etc/pam.d/su 认证配置以启用pam_ wheel 认证.
2.启用pam _wheel认证模块
3.1:su命令的安全隐患
默认情况下,任何用户都允许使用su命令,从而有机会反复尝试其他用户的登录密码,带来风险
借助pam_wheel认证模块,可以实现指定允许的用户使用su命令
PAM(Pluggable Authentication Modules)可插拔式认证模块,它是一种高效而且灵活便利的用户级别的认证方式,它也是当前Linux服务器普遍使用的认证方式 PAM认证一般遵循的顺序:Service(服务)→PAM(配置文件)→pam_*.so(.so 后缀代表模块文件) PAM认证首先要确定哪一项服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(位于/lib/security下)进行安全认证 用户访问服务器的时候,服务器的某一个服务程序把用户的不同请求发送到PAM模块进行认证 不同的应用程序所对应的PAM模块也是不同的
3.3:PAM认证的构成
查看某个程序是否支持PAM认证,可以用ls命令进行查看,例如查看su是否支持PAM模块认证
查看su的PAM配置文件:cat /etc/pam.d/su
每一行都是一个独立的认证过程
每一行可以区分为三个字段(认证类型,控制类型,PAM模块及其参数)
3.4PAM安全认证流程
控制类型也可以乘坐Control Flags,用于PAM验证类型的返回结果 1.required验证失败时仍然继续,但返回Fail 2.requisite验证失败则立即结束整个验证过程,返回fail(最重要的一步) 3.sufficient验证成功则立即返回,不再继续,否则忽略结果并继续 4.optional不用于验证,只显示信息(通常用session类型) 如图所示:
4.1su命令命令缺点
默认情况下,任何用户都允许使用su命令,从而恶意用户有机会反复尝试其他用户(如root)的登录密码,带来安全风险
4.2sudo命令的用途方法
用途:已其他用户身份(如root)执行授权的命令
用法 sudo 授权命令
4.3配置sudo授权
visudo命令 或者 vim /etc/sudoers
记录格式: 用户 主机名列表 = 命令程序列表
授权配置主要包括用户、主机、命令三个部分,即授权哪些人在哪些主机上执行哪些命令。 各部分的具体含义如下。 ➢用户 (user):直接授权指定的用户名,或采用“%组名”的形式(授权一个组的所有 用户)。 ➢主机 (MACHINE): 使用此配置 文件的主机名称。此部分主要是方便在多个主机 间共用同一-份sudoers 文件,一 般设为localhost 或者实际的主机名即可。
➢命令(COMMANDS):允许授权的用户通过sudo方式执行的特权命令,需填写 命令程序的完整路径,多个命令之间以逗号“,”进行分隔。 典型的sudo配置记录中,每行对应-一个用户或组的sudo 授权配置。例如,若要授权. 用户jerry能够执行ifconfig命令来修改IP地址,而wheel组的用户无需验证密码即可执行 任何命令
案列:
4.4查看sudo操作记录
需要启用Defaults logfile配置
默认日志文件:/var/log/sudo
5.1调整BIOS引导设置
将第- - -弓|导设备设为当前系统所在硬盘 禁止从其他设备(光盘、U盘、网络)引导系统 将安全级别设为setup,并设置管理员密码
5.2GRUB限制
使用grub2-mkpasswd-pbkdf2生成密钥 修改/etc/grub.d/0O_ header文件中,添加密码记录 生成新的grub.cfg配置文件
案列:
使用方向键来改变选择。按“e”来编辑选择的项目,或“c”作为命令提示符。所选条目将在4s中自动启动
6.1限制root只在安全终端登录
安全终端配置:/etc/securetty
6.2静止普通用户登录
- 建立/etc/nologin文件 (用于维护时创建使用,设置这个文件可以方便有效防止变量出现)
- 删除nologin文件或重启后即恢复正常
7.1:Joth the Ripper,简称为 JR
- 一款密码分析工具,支持字典式的暴力破解
- 通过对shadow文件的口令分析,可以检测密码强度
暴力密码破解工具-John the Ripper开源密码破解器下载
下载john-1.8.0.tar.gz