天天看點

安全加密之-PAMPluggable Authentication Modules

時間:2018.1.16

作者:李強

參考:man,info,magedu講義,萬能的internet

實驗環境:VMware® Workstation 12 Pro ,Centos 6.9,Centos 7.4,SecureCRT Version 8.1.4

聲明:以下英文純屬個人翻譯,英文B級,歡迎糾正,以下内容純屬個人了解,并沒有對錯,隻是參考,盜版不糾,才能有限,希望不誤人子弟為好。

原由;

我們在系統中經常要用到各種認證,login登入需要認證,ssh,telnet ,ftp等需要認證,snmp,smtp等也需要認證,總之既然大家都需要認證,那麼找個人統一管理下好不好。PAM有個各個認證子產品,關于資源限制的,關于使用者賬号的,關于登入時間的,各個子產品,當你的服務需要認證時,你隻要把你的需求告訴PAM,它就會根據/etc/pam.d/下你指定的認證機制來去調用/etc/security下各個庫。

各種應用服務隻需要提供服務就好,驗證的事情就交給系統和PAM來處理,然後告訴你是提供還是拒絕服務。

隻要ldd 調用了libpam.so 庫檔案的都可以受其控制

認證過程:

1.使用者執行/usr/bin/passwd 程式,并輸入密碼

2.passwd開始調用PAM子產品,PAM子產品會搜尋passwd程式的PAM相關設定檔案,這個設定檔案一般是在/etc/pam.d/裡邊的與程式同名的檔案,即PAM會搜尋/etc/pam.d/passwd此設定檔案

3.經由/etc/pam.d/passwd設定檔案的資料,取用PAM所提供的相關子產品來進行驗證

4.将驗證結果回傳給passwd這個程式,而passwd這個程式會根據PAM回傳的結果決定下一個動作(重新輸入密碼或者通過驗證)

man -k pam

檢視各個pam中子產品的使用幫助

man pam.conf

/etc/pam.d/下的配置檔案格式

因為其子系統太多,是以預設不存在/etc/pam.conf配置檔案。而是放在各個子配置檔案中。各個應用的pam認證規則配置存放在/etc/pam.d中

回歸正題格式為:

type control module-path module-arguments

type

control

module-path

module-arguments

auth

require

/lib64/secure

xxx

account

x

password

-type

control(PAM庫如何處理與該服務相關的PAM子產品成功或失敗情況,兩種方式實作:簡單和複雜)

module-path(子產品路徑,一般相對路徑/lib64/security下子產品)

module-arguments (用來傳遞給該子產品的參數,配置少時用參數,多時可以考慮/etc/security下的各個子產品的配置檔案)

本文轉自 lajifeiwomoshu 51CTO部落格,原文連結:http://blog.51cto.com/lajifeiwomoshu/2061652

繼續閱讀