Re: [問題] apache2+mod_auth_pam-1.1.1_1

看板FreeBSD作者 (可恥興農牛球團)時間18年前 (2006/01/17 12:55), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
mod_auth_pam 在設定檔裡用了 pam_unix ... 那是因為 pam_unix 裡的 getpwnam() 沒有正確的抓到 passwd 因為 apache 執行時的 effective uid 不為 0 (root) 所以 getpwnam 不會去 access spwd.db (master.passwd) 而是去 access pwd.db (passwd) 所以就算後面有提到如何使用 shadow file ,你還是無法用來 讀取 master.passwd ,這是安全性的考量 如果你堅持要做,目前我所知有兩個作法: 1. 修改 getpwent.c (/usr/src/lib/libc/gen 下) 不檢查 euid (在 pwdbopen() 裡) 2. % cp spwd.db pwd.db ; 然後注意一下權限,但之後每次 有 user 更新 passwd 就要重改一次 比較方便的方法就是改用其他的 pam_xxxx ,不過更方便的應該是 安裝其他的 mod_auth_xxx 吧,這個 port 實在不怎麼好用 :p ※ 引述《vanix (flee~)》之銘言: : OS:FreeBSD 5.4-REALEASE : 問題簡述: : 為了要讓使用者可以用 UNIX 帳號登入 http 認證管制的區域 : 於是安裝apache2 + mod_auth_pam-1.1.1_1 : 但是輸入帳號密碼卻無法順利登入 : 出現以下錯誤訊息 : Authorization Required : This server could not verify that you are authorized to : access the document requested. Either you supplied the : wrong credentials (e.g., bad password), or your browser : doesn't understand how to supply the credentials required. : 安裝及設定部份: : # /usr/port/www/mod_auth_pam2> make install : # /etc/pam.d> vi httpd : auth required pam_unix.so no_warn try_first_pass : account required pam_unix.so no_warn try_first_pass : # /usr/local/etc/apache2> vi httpd.conf : LoadModule auth_pam_module libexec/apache2/mod_auth_pam.so : LoadModule auth_sys_group_module libexec/apache2/mod_auth_sys_group.so : <Location /mrtg> : AuthPAM_Enabled on : AuthType Basic : AuthName "Restricted Zone" : require group wheel : </Location> : 另外網路上的文件有提到『using /etc/shadow with mod_auth_pam』 : http://pam.sourceforge.net/mod_auth_pam/shadow.html : 我有更改/etc/passwd及master.passwd的權限、群組 : 但是也行不通 : ======================================================================== : 請問遺漏了什麼設定呢 : 多謝指教 :) -- 靜女其姝 俟我於城隅 愛而不見 搔首踟躕 靜女其孌 貽我彤管 彤管有煒 說懌女美 自牧歸荑 洵美且異 匪女以為美 美人之貽 靜女/邶風 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.17.209
文章代碼(AID): #13p7ZBj6 (FreeBSD)
文章代碼(AID): #13p7ZBj6 (FreeBSD)