Postfix/Dovecot 不使用 pam_mkhomedir

Postfix/Dovecot 不使用 pam_mkhomedir

我在外部資料庫中有使用者。到目前為止 - ssh、postfix、dovecot 和其他一些 - 使用條目沒有問題。
我有郵件目錄裡面/home/[用戶]如果 homedir 存在 - 一切正常 - 發送、接收。
如果 homedir 不存在後綴/鴿舍列印錯誤,ssh - 登入後會產生全新的 homedir - 它使用pam_mkhomedir.so/etc/pam.d/[在幾個文件中]中的條目。

後綴/鴿舍- 成功使用帕姆.d與資料庫後端但忽略條目pam_mkhomedir- 我已經閱讀了很多關於哪個文件以及將其放置在什麼位置的提示。
也許這是命名檔案 /etc/pam.d/[file] 的問題?

答案1

Postfix 不負責建立主目錄。 Postfix 假定使用內建local傳送代理程式時主目錄已經存在。

如果您使用 Dovecot 作為 LDA,那麼 Dovecot 也依賴主目錄存在的事實。

使用虛擬用戶,您可以設定變數lda_mailbox_autocreate = yes,以便 Dovecot 自動建立必要的目錄。


由於 Dovecot(和 Postfix)不會「登入」使用者來發送郵件,因此pam_mkhomedir永遠不會觸發。在這種情況下,PAM 僅用於身份驗證。

答案2

只是為了其他像我一樣透過谷歌搜尋 Dovecot 問題偶然發現這一點的人的利益:pam_mkhomedir如果你這樣設置,Dovecot 就可以使用。該文件位於http://wiki2.dovecot.org/PasswordDatabase/PAM#PAM_sessions

在典型的 Debian/Ubuntu 系統上,您可以放入/etc/pam.d/dovecot

#%PAM-1.0

@include common-auth
@include common-account
@include common-session

mkhomedir內部調用該模組common-session

然後/etc/dovecot/conf.d/auth-system.conf.ext在該部分中編輯:

passdb {
  driver = pam
  # [session=yes] ...
  #args = dovecot
}

讓那些人args說:

  args = session=yes dovecot

相關內容