InfraLinux
PAM认证介绍
PAM(Pluggable Authentication Modules), 可插拔式认证模块, 它是一种高效且灵活便利的用户级别的认证方式, 也是当前Linux服务器普遍使用的认证方式. 在不同版本的Linux系统中部署PAM认证是有所不同的.
PAM提供了对所有服务进行认证的中央机制, 适用于login, 远程登录, su等应用程序中. 系统管理员通过PAM配置文件来制定不同应用程序的不同认证策略; 应用程序开发者通过在服务程序中使用PAM API(pam_xxxx())来实现对认证方法的调用; 而PAM服务模块的开发者则利用PAM SPI来编写模块 (主要是引出一些函数pam_sm_xxxx()供PAM接口库调用) , 将不同的认证机制加入到系统中; PAM接口库 (libpam) 则读取配置文件, 将应用程序和相应的PAM服务模块联系起来.
PAM框架结构如图所示
