常見的PAM認證模組簡介(2)(zt)

tonykorn97發表於2006-12-16
常見的PAM認證模組簡介(2)

8.pam_group認證模組

所屬型別:auth

功能描述:該模組沒有提供使用者認證,而僅僅是授予該使用者指定組的組許可權。其預設的配置檔案為/etc/security/groups.conf。

9.pam_issue認證模組

所屬型別:auth

功能描述:該模組在使用者登入時,將/etc/issue檔案的內容列印出來。

可帶引數:
issue=filename:指定其他配置檔案,而不是預設的/etc/issue.
noesc:不對配置檔案中的轉移字元進行解釋。

配置檔案說明:
配置檔案中可以使用形如x的轉移字元來實現特定的功能。可以識別的轉移字元有:
d:列印當前日期
s:列印作業系統名稱
l:列印當前tty名稱
m:列印CPU型別(i686、sparc、powerpc等)
:列印主機名
o:列印域名

:列印核心版本號
:列印當前系統時間
u:列印系統當前線上使用者數
U:同u,但是在使用者數後有users字樣
v:列印系統安裝的日期

配置檔案例項:
$ more /etc/issue

Welcome to

Time: d
User online: U

10.pam_lastlog認證模組

所屬型別:auth

功能描述:該模組在使用者登入時,列印最後登入系統的資訊(在/var/log/lastlog中),通常已經有其他程式在作這個工作了,所以沒有必要使用該模組。


11.pam_limits認證模組

所屬型別:session

功能描述:該模組限制使用者會話過程中系統資源的使用率。預設的,該模組的配置檔案是/etc/security/limits.conf,可以使用conf引數指定自定義的配置檔案。

可帶引數:
issue=filename:指定其他配置檔案,而不是預設的/etc/issue.
noesc:不對配置檔案中的轉移字元進行解釋。

配置檔案說明:
debug:將除錯資訊寫入日誌
conf=filename:指定配置檔案

配置檔案說明:該配置檔案每一行(一個條目)的語法如下:

在這裡
可以是
使用者名稱
使用者組名,採用@group的語法
萬用字元*,表示任何
可以是
soft-表示軟限制,可以超過該限制
hard-表示硬限制,有root設定,核心執行,不可以超過該限制
可以是
core-core檔案大小 (KB)
data-最大資料大小(KB)
fsize-最大檔案大小(KB)
memlock-最大可用記憶體空間(KB)
nofile-最大可以開啟的檔案數量
rss-最大可駐留空間(KB)
stack-最大堆疊空間(KB)
cpu-最大CPU使用時間(MIN)
nproc-最大執行程式數
as-地址空間限制
maxlogins-某一使用者可以登入到系統的最多次數
locks-最大鎖定檔案數目
需要注意的是,如果無限制可以使用”-”號,並且針對使用者限制的優先順序要比針對組的
優先順序高。

配置檔案例項:
* soft core 0
* hard rss 10000
@student hard nproc 20
@faculty soft nproc 20
@faculty hard nproc 50

12.pam_listfile認證模組

所屬型別:auth

功能描述:該模組提供根據某種規則來對使用者進行訪問控制的功能。通常把訪問控制規則放在一個檔案中,可以用file引數指定該檔案。一般可以根據使用者名稱、登入tty名、rhost、ruser、所屬使用者組、登入shell來對使用者訪問進行控制。

可帶引數:
item=[tty|user|rhost|ruser|group|shell]:定義所採用的規則;
onerr=succeed|fail:定義當出現錯誤(比如無法開啟配置檔案)時的預設返回值;
sense=allow|deny:定義當再配置檔案中找到符合條件的專案時的返回值;如果沒有找到符合條件的專案,則返回相反的值;
file=filename:指定配置檔案
apply=user|@group:定義採用非user和group的規則時,這些規則所應用的物件。

配置例項:
比如/etc/pam.d/ftp:
$ more /etc/pam.d/ftp
#%PAM-1.0
auth required /lib/security/pam_listfile.so item=user sense=deny file=
/etc/ftpusers onerr=succeed
auth required /lib/security/pam_pwdb.so shadow nullok
# This is disabled because anonymous logins will fail otherwise,
# unless you give the 'ftp' user a valid shell, or /bin/false and add
# /bin/false to /etc/shells.
#auth required /lib/security/pam_shells.so
account required /lib/security/pam_pwdb.so
session required /lib/security/pam_pwdb.so
該配置檔案的第一句,就指定了根據使用者名稱來對訪問進行控制(item=user)。配置檔案為/etc/ftpaccess(file=/etc/ftpusers),當登入使用者的使用者名稱在配合檔案出現時拒絕訪問(sense=deny),當配置檔案中沒有符合的條目時允許其訪問(onerr=succeed)。

13.pam_mail認證模組

所屬型別:auth,session

功能描述:檢查使用者的郵件目錄,檢視該使用者是否有新郵件。通常已經有其他程式在作這個工作了,所以沒有必要使用該模組。

可帶引數:
debug:將除錯資訊寫入日誌
dir=pathname:用於指定使用者的郵箱路徑,通常是/var/spool/mail,如果是以~開頭表示該郵箱位於使用者的宿主目錄下。
nopen:不向使用者提示郵件資訊。
close:總是向使用者提示郵件資訊。
noenv:不設定MAIL環境變數。
empty:如果使用者郵箱為空,也向使用者提示郵件資訊。
quiet:即使使用者有新郵件也不向使用者提示。


14.pam_mkhomedir認證模組

所屬型別: session

功能描述:在使用者登入時為使用者興建宿主目錄,該功能在採用ldap或者資料庫儲存使用者資料時特別有用。

可帶引數:
debug:將除錯資訊寫入日誌
skel=dir:指定使用者包含初始化指令碼的目錄;
umask=octal:與umask命令一樣,設定使用者建立檔案時預設的許可權掩碼。

15.pam_motd認證模組

所屬型別: session

功能描述:在使用者成功登入系統後顯示message of today(今天的資訊),預設是顯示/etc/motd檔案的內容,可以用motd引數指定不同的配置檔案。

可帶引數:
motd=filename:指定自定義的配置檔案。

16.pam_nologin認證模組

所屬型別: auth

功能描述:提供標準的UNIX nologin登入認證。如果/etc/nologin檔案存在,則只有root使用者可以登入,其他使用者登入時只會得到/etc/nologin檔案的內容。如果/etc/nologin不存在,則該模組沒有作用。

可帶引數:無

17.pam_permit認證模組

所屬型別: account; auth; password; session

功能描述:使用該模組具有很大的安全風險,該模組的唯一功能就是允許使用者登入。

可帶引數:無

18.pam_pwdb認證模組

所屬型別: account; auth; password; session

功能描述:該模組是標準UNIX認證模組pam_unix的替代模組。

在作為auth型別使用時,此時該模組可識別的引數有debug、audit、use_first_pass、try_first_pass、nullok、nodelay,主要功能是驗證使用者密碼的有效性,在預設情況下(即不帶任何引數時),該模組的主要功能是禁止密碼為空的使用者提供服務;

在作為account型別使用時,此時該模組可識別的引數有debug、audit,該模組主要執行建立使用者帳號和密碼狀態的任務,然後執行提示使用者修改密碼,使用者採用新密碼後才提供服務之類的任務;

在作為password型別使用時,此時該模組可識別的引數有debug、 audit、 nullok;、not_set_pass、use_authtok、try_first_pass、use_first_pass、md5、bigcrypt、shadow,該模組完成讓使用者更改密碼的任務;

在作為session型別使用時,此時該模組沒有可識別的引數,該模組僅僅完成記錄使用者名稱和服務名到日誌檔案的工作。

可帶引數:
debug:將除錯資訊寫入日誌
audit:記錄更為資訊的資訊
nullok:預設情況下,如果使用者輸入的密碼為空,則系統能夠不對其提供任何服務。但是如果使用引數,使用者不輸入密碼就可以獲得系統提供的服務。同時,也允許使用者密碼為空時更改使用者密碼。
nodelay:當使用者認證失敗,系統在給出錯誤資訊時會有一個延遲,這個延遲是為了防止
駭客猜測密碼,使用該引數時,系統將取消這個延遲。通常這是一個1秒鐘的延遲。
try_first_pass:在用作auth模組時,該引數將嘗試在提示使用者輸入密碼前,使用前面一個堆疊的auth模組提供的密碼認證使用者;在作為password模組使用時,該引數是為了防止使用者將密碼更新成使用以前的老密碼。
use_first_pass:在用作auth模組時,該引數將在提示使用者輸入密碼前,直接使用前面一個堆疊的auth模組提供的密碼認證使用者;在作為password模組使用時,該引數用來防止使用者將密碼設定成為前面一個堆疊的password模組所提供的密碼。
no_set_pass:使密碼對前後堆疊的password模組無效。
use_authok:強制使用前面堆疊的password模組提供的密碼,比如由pam_cracklib模組提供的新密碼。
md5:採用md5對使用者密碼進行加密。
shadow:採用影子密碼。
unix:當使用者更改密碼時,密碼被放置在/etc/passwd中。
bigcrype:採用DEC C2演算法加密使用者密碼。

配置例項:
參考/etc/pam.d/ftp

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/312079/viewspace-245561/,如需轉載,請註明出處,否則將追究法律責任。

相關文章