Dovecot

Dovecot 2.0.7 登錄後腳本沒有得到plain_pass

  • January 14, 2015

我們目前正在設置一個登錄後腳本,以將憑據傳遞給腳本,以便將郵件同步到另一個伺服器集群以準備遷移。

我們目前設置的伺服器正在執行 Dovecot 2.0.7,並在 userdb 配置中使用 passwd 驅動程序。我們試圖將以下程式碼放入 userdb 配置中,但無濟於事:

userdb {
 driver = passwd
 #args = plain_pass=%w
 #override_fields = plain_pass=%w
}

當嘗試啟用被註釋的 2 行中的任何一個時,我們無法在 shell 腳本中使用 ${PLAIN_PASS},因為它被視為一個空字元串。

到目前為止,搜尋 dovecot 郵件列表和其他論壇均未成功找到與此相關的任何內容在我們的特定版本中不起作用,或者在與我們類似的版本中報告的任何錯誤報告。

由於我們目前很難過,因此我們將不勝感激任何幫助或指導使其正常工作。

在深入查看更改日誌後,似乎直到 Dovecot 2.1.0 才添加了 override_fields 和 default_fields 選項,因此這些選項將不可用。在另一篇文章(不再有指向它的連結)中還提到,Dovecot 2.0.X 在訪問登錄後腳本部分之前清除變數存在問題,這在 2.1.X 中也得到了糾正。這意味著 args= 語句也不起作用。

使用密碼執行登錄後腳本的唯一似乎最好的解決方案是將 Dovecot 版本 2.0.X 更新到至少 2.1.X 的較新版本,以便使用 overrride_fields 選項。

謝謝!

引用自:https://serverfault.com/questions/653248