免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 978 | 回复: 0
打印 上一主题 下一主题

个人在Redhat linux下对PAM的一点了解 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-13 19:33 |只看该作者 |倒序浏览
PAM:基于Pluggable Authentication Modules(可插入验证模块,简称PAM)的验证机制.
主要用于应用程序的统一身份验证方式.
/etc/pam.d/目录包括所有支持PAM应用程序的PAM配置文件。每个支持PAM的应用程序或服务都在/etc/pam.d/目录中有一个相应的文件。而这个目录中的每个文件的名称与他们所控制访问的服务名称相同。这个文件名放置的就是它们自己的PAM配置文件,在验证请求时,应用程序通过 libpam函数库来提供服务。具体使用哪些PAM函数库进行验证,则由/etc/pam.d/目录下对应的配置文件决定。libpam 提供函数共享服务,而且可以动态载入。例如查看应用程序su是否支持pam,可用ldd /bin/su来查看它是支持libpam函数.(抱歉:有些程序不支持libpam函数但也会被PAM所验证,目前还没完全搞清楚)
PAM配置文件的格式
1、service type:
auth:用来验证用户身份,提示输入用户名和密码。
account:用来验证帐号状态:用户的密码是否过期,用户是否有权限访问某些资源。
password:禁止用户反复尝试登录,在变更密码时进行密码复杂性控制
session:用来配置并管理用户会话、进行日志记录或限制用户登陆的次数。
注:一个单独的模块可以包括一个或多个模块接口,例如,pam_unix.so包括了所有四个模块接口
2、control flag
required:要使验证过程继续,这个模块的结果必须是成功。如果失败,用户要等所有模块都完成后才会被通知。
requisite:跟required不同的是,如果失败,用户会马上被通知。
sufficient:如果模块验证失败,则忽略此结果.如果一个此模块成功,且前面没有任何标识为required的模块验证失败,那么无需其它任何结果,则这个服务就可被使用.
optional:模块结果不被理会。被标识为optional的模块只在这个界面中没有引用其它模块时才成为验证成功所必须的.
include:包含给出服务类型的指定参数。
注:required模块被调用的顺序并不重要。只有标识为sufficient和requisite的模块的调用顺序才重要。
3、module name
调用的模块名。其绝对PATH如下:
32位OS:/lib/security/
64位OS:/lib64/security/
4、module arguments
无效的参数通常会被忽略,它不会影响到PAM验证的结果。但在一些模块中,无效的参数可能会导致验证失败。一般把error写入/var/log/secure文件
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/66/showart_1080199.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP