资讯

展开

关于linux中PAM配置文件的功能理解

作者:快盘下载 人气:

在配置vsFTP的时候遇到了pam认证的问题,由于写错了相关路径,造成登录失败。因为比较确定的是vsftp已经配置的没有问题了。映射的虚拟用户也添加了。一直找不到原因。vsftp的日志也很模糊,只是在/var/log/secure文件中看到了错误提示。PAM模块大多数模块都会向/var/log/secure文件报告错误。


Name (127.0.0.1:root): kkpan
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> exit
221 Goodbye.


关于linux中PAM配置文件的功能理解


结合上述错误判断问题出在了pam路径上了。因为我写的是绝对路径。也不是我的错啊。


关于linux中PAM配置文件的功能理解

查阅了一下文档


https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/managing_smart_cards/pam_configuration_files


关于linux中PAM配置文件的功能理解


有兴趣的朋友可以自己看看。我只是Google翻译转载。


什么是PAM


/etc/pam.d/目录包含每个支持PAM的应用程序的PAM配置文件。每个PAM配置文件都包含一组指令,这些指令定义模块以及与之相关的任何控件或参数。

PAM的语法非常简单:






PAM模块接口

有四种类型的PAM模块接口可供选择。



PAM控制标志




PAM模块名称


PAM 在某些模块的身份验证期间使用参数将信息传递给可插入模块。

一般都是xxx.so文件

以 vsftpd为例:pam_userdb.so就是模块


auth required pam_userdb.so db=/etc/vsftpd/ftpusr


PAM模块参数


PAM 在某些模块的身份验证期间使用参数将信息传递给可插入模块。


还拿上边的为例,db=/etc/vsftpd/ftpusr参数。就是读取db文件,该pam_userdb.so模块使用存储在Berkeley DB文件中的信息来验证用户。Berkeley DB是一个嵌入在许多应用程序中的开源数据库系统。该模块接受一个db参数,以便Berkeley DB知道哪个数据库用于所请求的服务。



加载全部内容

相关教程
猜你喜欢
用户评论
快盘暂不提供评论功能!