码迷,mamicode.com
首页 > 系统相关 > 详细

linuxPAM认证配置文件解析

时间:2015-08-16 23:25:35      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:linux pam

1.PAM文件

/etc/pam.conf或者/etc/pam.d/ PAM配置文件
/lib(64)/security/pam_*.so 可动态加载的PAM service module

2.配置文件格式

/etc/pam.conf:主配置文件

    service    type    control    module-path    module-arguments

/etc/pam.d/service:服务配置文件

    type    control    module-path    module-arguments

3.配置文件解析

1).service:对应服务的服务名称,所有字母必须要小写

2).type:类型有四种:auth、account、session、password

    auth主要是接受用户名和密码,进而对该用户的密码进行认证,并负责设置用户的一些秘密信息。

    account主要是检查帐户是否被允许登录系统,帐号是否已经过期,帐号的登录是否有时间段的限制等等。

    password主要是用来修改用户的密码,检测修改密码动作是否被允许以及新密码是否符合要求等。

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

3).control:用来告诉PAM库该如何处理与该服务相关的PAM模块的成功或失败情况。它有五种常用可能的值:required,requisite,sufficient,optional,include。

    required:表示本模块必须返回成功才能通过认证,但是如果该模块返回失败的话,失败结果也不会立即通知用户,而是要等到同一stack 中的所有模块全部执行完毕再将失败结果返回给应用程序。可以认为是一个必要条件。

    requisite:与required类似,该模块必须返回成功才能通过认证,但是一旦该模块返回失败,将不再执行同一stack内的任何模块,而是直 接将控制权返回给应用程序。是一个必要条件。

    sufficient:表明本模块返回成功已经足以通过身份认证的要求,不必再执行同一stack内的其它模块,但是如果本模块返回失败的话可以忽略。可以认为是一个充分条件。

    optional:表明本模块是可选的,它的成功与否一般不会对身份认证起关键作用,其返回值一般被忽略。

    include:将认证权利移交给其他文件。

4).module-path:用来指明本模块对应的程序文件的路径名,一般采用绝对路径,如果没有给出绝对路径,默认该文件在目录/lib(64)/security下面。

5).module-arguments: 是用来传递给该模块的参数。

参考资料:

http://blog.csdn.net/yueguanghaidao/article/details/7292065

linuxPAM认证配置文件解析

标签:linux pam

原文地址:http://wangyongbin.blog.51cto.com/8964308/1685050

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!