Email

saslauthd 身份驗證錯誤

  • May 16, 2019

我的伺服器出現了無法從郵件客戶端連接的預期問題。

我查看了伺服器日誌,唯一能確定問題的是以下事件:

11 月 23 日 18:32:43 hig3 dovecot: imap-login: Login: user=, method=PLAIN, rip=xxxxxxxx, lip=xxxxxxx, TLS Nov 23 18:32:55 hig3 postfix/smtpd

$$ 11653 $$: 從 xxxxxxx.co.uk 連接$$ xxxxxxx $$11 月 23 日 18:32:55 hig3 後綴/smtpd$$ 11653 $$:警告:SASL 身份驗證失敗:無法連接到 saslauthd 伺服器:沒有這樣的文件或目錄 Nov 23 18:32:55 hig3 postfix/smtpd$$ 11653 $$: 警告: xxxxxxx.co.uk$$ xxxxxxxx $$:SASL LOGIN 身份驗證失敗:一般故障 Nov 23 18:32:56 hig3 postfix/smtpd$$ 11653 $$: 來自 xxxxxxx.co.uk 的 AUTH 後失去連接$$ xxxxxxx $$11 月 23 日 18:32:56 hig3 後綴/smtpd$$ 11653 $$: 斷開與 xxxxxxx.co.uk 的連接$$ xxxxxxx $$

這個問題很不尋常,因為就在半小時前在我的辦公室裡,我的郵件客戶端沒有提示我輸入正確的使用者名和密碼。我沒有對伺服器進行任何更改,所以我不明白會發生什麼導致此錯誤發生。

搜尋錯誤消息會產生各種結果,其中包含我不確定的“修復”(顯然不想讓它變得更糟或修復未損壞的東西)。

當我跑

測試aslauthd -u xxxxx -p xxxxxx

我也得到以下結果:

connect() : 沒有這樣的文件或目錄

但是當我跑步時

測試aslauthd -u xxxxx -p xxxxxx -f /var/spool/postfix/var/run/saslauthd/mux -s smtp

我得到:

0:OK“成功”。

我在另一個論壇上找到了這些命令,並不完全確定它們的含義,但我希望它們能指出問題所在。

當我跑

ps -ef|grep saslauthd

這是輸出:

根 1245 1 0 Nov24 ?00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5 root 1250 1245 0 Nov24?00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5 root 1252 1245 0 Nov24?00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5 root 1254 1245 0 Nov24?00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5 root 1255 1245 0 Nov24?00:00:00 /usr/sbin/saslauthd -a pam -c -m /var/spool/postfix/var/run/saslauthd -r -n 5 root 5902 5885 0 08:51 pts/0 00:00:00 grep –color=auto saslauthd

如果有什麼不同的話,我正在執行 Ubuntu 10.04.1、Postfix 2.7.0 和 Webmin/Virtualmin。

Postfix 可以在 chroot(預設情況下/var/spool/postfix)中執行,也可以不執行。如果是,它將嘗試打開/var/spool/postfix/var/run/saslauthd/muxsasl 身份驗證。如果不是,它將嘗試打開/var/run/saslauthd/mux

似乎,出於某種原因,您的 postfix 實例在 chroot 中執行,但現在不再如此。這很奇怪,但這就是我從你問題的細節中猜到的。如果發生了這種情況,您可以更改 saslauthd 配置以/var/run/saslauthd再次在 chroot 中使用或執行 postfix。

要知道您的 Postfix 是否正在執行 chroot,您可以檢查/etc/postfix/master.cf

  1. 如果它有行smtp inet n - y - - smtpdor smtp inet n - - - - smtpd,那麼您的Postfix 正在執行 chroot
  2. 如果它有該行,smtp inet n - n - - smtpd那麼您的Postfix 沒有在 chroot 中執行

此檢查來自/etc/default/saslauthd(Ubuntu sasl 配置文件)。

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