本文主要是介绍linux pam鉴定令牌错误,linux pam安全认证模块su命令的安全隐患,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
PAM安全认证
1、su命令的安全隐患
默认情况下,任何用户都允许使用su命令,从而有机会反复尝试其他用户(如root)的登录密码,带来安全风险。为了增强sum命令的使用控制,可以借助PAM认证模块,只允许极个别用户使用su命令进行切换。
2、可插拔认证模块PAM(pluggable Authentication Modules)
(1)PAM简介
PAM是一种高效而且灵活便利的用户级别的认证方式,它也是当前Linux服务器普遍使用的认证方式。
PAM提供了对所有服务进行认证的中央机制,适用于login,远程登录(telent,rlogin,fsh,ftp),su等应用程序。系统管理员通过PAM配置文件来制定不同应用程序的不同认证策略。
(2)PAM认证管理
pam认证一般遵循的顺序:Service(服务)——PAM——prm_*.so
PAM认证首先要确定那一项服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(32位系统位于/lib/security下,64位系统位于/lib64/security下)进行安全认证。
用户访问服务器的时候,服务器的某一个服务进程把用户的请求发送到PAM模块进行认证。不同的应用程序所对应的PAM模块也是不同。
如果想查某个程序是否支持PAM认证,可以用ls命令进行查看,如查看su是否支持PAM模块认证:ls /etc/pam.d|grep su
常见的四种认证类型
认证类型意义作用
auth认证管理接受用户和密码,进而对该用户的密码进行认证
account账户管理检查账户是否被允许登录系统,账号是否已过期,账号的登录是否有时间段的限制等权限
password密码管理主要是用来修改用户的密码
session会话管理主要是提供对会话的管理和记账
使用PAM认证模块,限制某个命令或是服务的使用权限
vi编辑该命令在/etc/pam.d/下对应的配置文件,启用pam_wheel模块
添加授权用户到wheel组
示例:
设置允许用户amder和user1使用su命令进行切换
[root@localhost ]# vi /etc/pam.d/su
#%PAM-1.0
auth sufficient pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel" group.
#auth sufficient pam_wheel.so trust use_uid
# Uncomment the following line to require a user to be in the "wheel" group.
#auth required pam_wheel.so use_uid #把最前面井号取消
auth substack system-auth
auth include postlogin
account sufficient pam_succeed_if.so uid = 0 use_uid quiet
account include system-auth
password include system-auth
session include system-auth
session include postlogin
session optional pam_xauth.so
把两个用户添加到组里
[root@localhost ~]# gpasswd -M amder,user1 wheel
把组添加到配置文件里
[root@localhost ~]# grep wheel /etc/group
wheel:x:10:amder,user1
是一个组的有权su切换用户,没有权限拒绝su切换
[amder@localhost ~]$ su user1
密码:
[user1@localhost amder]$
[xiao1@localhost amder]$ su amder #xiao1无法使用su命令
密码:
su: 密码不正确
本文由 帝一博客 原创发布。用户在本站发布的原创内容(包括但不仅限于回答、文章和评论),著作权均归用户本人所有。独家文章转载,请联系邮箱:17762131@qq.com。获得授权后,须注明本文地址:
https://www.d1blog.com/article/1259.html
这篇关于linux pam鉴定令牌错误,linux pam安全认证模块su命令的安全隐患的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!