Ubuntu

在 SASL2 上使用 SMTP-AUTH 和 SASLDB 設置 Postfix,以便使用者發送電子郵件

  • October 20, 2015

你好,

最近幾天,我嘗試使用 SASLDB 設置 Postfix,以便在 Ubuntu Server 15.04 上通過 SMTP 從我的應用程序發送電子郵件。我搜尋、閱讀和測試了很多關於它的內容,但我無法讓它工作。Postfix 和郵件伺服器對我來說是新的,所以我希望有人能幫助我。

我嘗試的最後一件事是:

  1. 全新安裝了 Ubuntu Server 15.04 x64。
  2. 執行此腳本來安裝和配置 Postfix、SASL AUTH: https ://gist.github.com/richarddong/2634350
  3. 通過以下(第 3 和第 4 段)修復 SASLAUTHD 以使用 chrooted Postfix: https ://github.com/webmin/webmin/issues/58#issuecomment-22985720

修復connect() :****testaslauthd命令沒有這樣的文件或目錄錯誤。 4. 我創建了一個使用者saslpasswd2 -c -u example.com username

用 驗證成功sasldblistusers2,然後用:

  • testsaslauthd -u username@example.com -p password
  • testsaslauthd -u username -p password -r example.com
  • testsaslauthd -u username@example.com -p password -s smtp
  • testsaslauthd -u username -p password -r example.com -s smtp
  • testsaslauthd -u username -p password但所有這些都返回:0: NO “authentication failed”

它只接受root使用者和密碼,例如testsaslauthd -u root -p password. 5. 我檢查了配置,發現它沒有使用 SASLDB,所以我遵循了這個: https ://serverfault.com/a/547851/317421

SASL、Postfix 配置後的結果和我上面寫的一樣。

我嘗試了 root 使用者telnet localhost 25,連接,然後AUTH PLAIN base64string,其中 base64string 生成:

perl -MMIME::Base64 -e 'print encode_base64("\000root\000password");'

但與535 5.7.8 Error: authentication failed: generic failure.

這就是我現在的位置。

當然,我在這些步驟之間重新啟動了 Postfix 和 SASLAUTHD。

我也嘗試重新啟動系統,但沒有任何改變。

如果有人這麼好心並幫助我設置這個或者得到一個腳本,那就太好了!

如果有人遇到同樣的錯誤,這可能會節省您數小時的搜尋時間。

為了使用 sasldb,您需要將文件中的MECHANISMS="pam"行更改為,這就是我錯過的。MECHANISMS="sasldb"``/etc/default/saslauthd

然後重新啟動 saslauthd 和 postfix,它與上面的配置一起工作。

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