不管輸入的密碼是多麼的正確,一律給錯:
很久沒有替別人安裝過 Mail Server 了,那個 Fedora Core 8 真了得‧‧‧
除了給那個 Bind 玩耍了幾天外,Poppassd 也攪了我十數個小時‧‧‧
那個 bind 竟然不許其他 ip 查詢‧‧‧
而 Poppassd 就錯漏百出‧‧‧
500 Old password is incorrect
查了半天程式、 log 、網路,不斷搜尋資料,一直找不到原因,直到看到有人提到 /etc/pam.d/poppassd 裡面
#%PAM-1.0
auth required pam_pwdb.so shadow nullok
account required pam_pwdb.so
password required pam_cracklib.so retry=3
password required pam_pwdb.so use_authtok nullok
使用的 pam_pwdb.so ,但是系統上沒有這個檔案 O_O 。仔細一查,奇了, 竟然真的找不到這個檔案。
知道原因,就好辦。仔細查了一下, 在 pam 套件裡,真的沒提供 pam_pwdb.so 。而 pam_pwdb.so 與 pam_unix.so 是相同功能的模組,於是解決方法就很簡單了:
cd /lib/security
ln -s pam_unix.so pam_pwdb.so
建立一個 soft link ,用 pam_unix.so 來提供 pam_pwdb.so 的功能,搞定!
但是,要求的 password 就很有要求了,我敢肯定用戶不大可能記到這樣子的密碼‧‧‧ >_<
相信不足三、二天就一定會有人走來跟我說忘記了密碼;還需努力,再找!
修改 /etc/pam.d/poppassd
刪除 pam_cracklib.so 這一行 (在這行的前面加 # 號)
在這行 “password required /lib/security/pam_unix.so use_authtok nullok”
刪除 pam_unix.so 後面的 “use_authtok”
終於可以睡覺了,但太陽伯伯已經出來!‧‧‧ z… z… Z…