目录
3.2PAM(Pluggable Authentication Modules)可插拔式认证模块
前言
作为一种开放源代码的操作系统,Linux服务器以其安全、高效和稳定的显著优势而得以广泛应用。
本文主要从账号安全控制、系统引导和登录控制的角度,讲诉Linux系统安全优化的点点滴滴;还将学习基于 Linux环境的弱口令检测、网络扫描等安全工具的构建和使用,帮助管理员查找安全隐患,及时采取有针对性的防护措施。
一.账号安全控制
1.1系统账号清理
●将非登录用户的Shell设为/sbin/nologin
●锁定长期不使用的账号
●删除无用的账号
●锁定账号文件passwd、shadow
1.2密码安全控制
●设置密码有效期
●要求用户下次登录时修改密码
1.3命令历史限制
●减少记录的命令条数
●注销时自动清空命令历史
1.4终端自动注销
●闲置600秒后自动注销
二.限制su命令用户
2.1su命令用途及用法
●用途:Substitute User,切换用户
●格式:su - 目标用户
2.2密码验证
●root→任意用户,不验证密码
●普通用户→其他用户,验证目标用户的密码
2.3限制使用su命令用户
默认情况下,任何用户都允许使用 su 命令,从而有机会反复尝试其他用户(如 root) 的登录密码,这样带来了安全风险。为了加强 su 命令的使用控制,可以借助于 pam_wheel 认证模块,只允许极个别用户使用 su 命令进行切换。实现过程如下:将授权使用 su 命令 的用户添加到 wheel 组,修改/etc/pam.d/su 认证配置以启用 pam_wheel 认证。
在/etc/pam.d/su文件里设置禁止用户使用su命令
vim /etc/pam.d/su
2 # auth sufficient pam_ rootok.so
6 #auth required pam_ wheel.so use_ _uid
1).以上两行是默认状态(即开启第一行,注释第二行),这种状态下是允许所有用户间使用su命令进行切换的。
2).两行都注释也是运行所有用户都能使用su命令,但root'下使用su切换到其他普通用户需要输入密码;如果第一行不注释,则root使用su切换普通用户就不需要输入密码(pam rootok. so模块的主要作用是使uid为0的用户,即root用户能够直接通过认证而不用输入密码。)
3).如果开启第二行,表示只有root用户和wheel组内的用户才可以使用su命令
4).如果注释第一行,开启第二行,表示只有whee1组内的用户才能使用su命令,root用户也被禁用su命令。
root@localhost ~]# gpasswd -a zhangsan wheel #添加授权用户 zhangsan
正在将用户“zhangsan”加入到“wheel”组中
[root@localhost ~]# grep wheel /etc/group #确认 wheel 组成员
wheel:x:10:zhangsan
[root@localhost ~]# vi /etc/pam.d/su
#%PAM-1.0
auth sufficient pam_rootok.so
auth required pam_wheel.so use_uid #去掉此行开头的 # 号
启用 pam_wheel 认证以后,未加入到 wheel 组内的其他用户将无法使用 su 命令,尝 试进行切换时将提示“拒绝权限”,从而将切换用户的权限控制在最小范围内。
普通用户切换登录测试验证
使用 su 命令切换用户的操作将会记录到安全日志/var/log/secure 文件中,可以根据需要 进行查看。
三.Linux中的PAM安全认证
3.1su命令的安全隐患
●默认情况下,任何用户都允许使用su命令,有机会反复尝试其他用户(如root)的登录密码,带来安全风险。
●为了加强su命令的使用控制,可