讓 Apache 透過 mod_auth_pam 模組使用 Linux PAM 進行驗證
一份介紹如何讓 Apache 透過 mod_auth_pam 模組,透過 Linux 的 PAM 系統進行驗證的文章
資料來源:http://www.arch.nctu.edu.tw/blog/post/4/175
使用 PAM 作為 http-auth 認證,這代表使用者可以用 UNIX 帳號登入 http 認證管制的區域。此後做內部網路管制就更加方便了!
除了按照指示編譯、安裝 mod_auth_pam 之外,還要確認下列更動:
/etc/httpd/conf/httpd.conf:
LoadModule auth_pam_module modules/mod_auth_pam.so
LoadModule auth_sys_group_module modules/mod_auth_sys_group.so/etc/pam.d/httpd:
#%PAM-1.0
auth required /lib/security/pam_unix.so
account required /lib/security/pam_unix.so最後為了要讓 apache 可以讀取 shadow 檔內容,又要顧及安全性,所以新增一個群組 shadow,其成員為 root,apache,接著更改 /etc/shadow 的擁有者為 root:shadow,最後把 httpd.conf 內的 Group 改為 shadow,重新啟動 apache 就好了。
% groupadd -r shadow
In /etc/group:
shadow:x:301:root,apache
% chgrp shadow /etc/shadow
In /etc/httpd/conf/httpd.conf:
Group shadow
% /etc/init.d/httpd graceful底下是 .htaccess 設定範例:
AuthPAM_Enabled on
AuthType Basic
AuthName “Geek Only”
require group users
require user gehry apple john tim