感謝你的問題。我很喜歡設置我的環境來嘗試重現錯誤。你會很高興聽到我不認爲這是一個難以克服的問題。不過,如果沒有什麼與您的問題實際相關的話,我可能花費的時間超過了我希望設置MongoDB,cyrus-sasl-md5
,設置權限等等,至少乍一看是這樣。
你的問題(我90%肯定)是你的saslauthd
守護進程沒有運行,或者沒有正確配置。我們來看看以下內容:
檢查service status
。service saslauthd status
的輸出應該類似於下面粘貼的礦。請注意一些關鍵值,例如init腳本的位置,在我的情況下爲/etc/init.d/saslauthd/
;和套接字/var/run/saslauthd/mux
,您需要在testsaslauthd [...] -f /var/run/saslauthd/mux
命令中輸入相同的文件位置。
[email protected]:~# service saslauthd status
● saslauthd.service - LSB: saslauthd startup script
Loaded: loaded (/etc/init.d/saslauthd)
Active: active (running) since Tue 2016-04-26 12:04:59 BST; 1s ago
Docs: man:systemd-sysv-generator(8)
Process: 11569 ExecStop=/etc/init.d/saslauthd stop (code=exited, status=0/SUCCESS)
Process: 11586 ExecStart=/etc/init.d/saslauthd start (code=exited, status=0/SUCCESS)
Memory: 2.0M
CGroup: /system.slice/saslauthd.service
├─11606 /usr/sbin/saslauthd -a ldap -c -m /var/run/saslauthd -n 5
├─11607 /usr/sbin/saslauthd -a ldap -c -m /var/run/saslauthd -n 5
├─11608 /usr/sbin/saslauthd -a ldap -c -m /var/run/saslauthd -n 5
├─11609 /usr/sbin/saslauthd -a ldap -c -m /var/run/saslauthd -n 5
└─11610 /usr/sbin/saslauthd -a ldap -c -m /var/run/saslauthd -n 5
Apr 26 12:04:59 hectorvp-pc systemd[1]: Starting LSB: saslauthd startup script...
Apr 26 12:04:59 hectorvp-pc saslauthd[11586]: * Starting SASL Authentication Daemon saslauthd
Apr 26 12:04:59 hectorvp-pc saslauthd[11606]: detach_tty : master pid is: 11606
Apr 26 12:04:59 hectorvp-pc saslauthd[11606]: ipc_init : listening on socket: /var/run/saslauthd/mux
Apr 26 12:04:59 hectorvp-pc systemd[1]: Started LSB: saslauthd startup script.
Apr 26 12:04:59 hectorvp-pc saslauthd[11586]: ...done.
如果服務沒有運行,只是service saslauthd start
啓動它,並再次檢查狀態(service saslauthd status
)來檢查任何可能的上游錯誤。
它也可能是您的LDAP服務器未運行或missconfigured。你可以看看上面的服務狀態(service slapd status
)。
請試試這個,告訴我們結果。
EDIT(26/04/2016):從這個答案的評論談話中,我已經提取更多的步驟。請在以下答案廣泛的談話道歉,其總結如下:
調試saslauthd
服務:如圖所示here,該服務使用系統日誌。在我的情況下(Ubuntu)這些日誌在/var/log/syslog
,但他們可能在/var/log/messages
你的情況。至少默認情況下。在嘗試啓動服務時查看此日誌,並查看是否看到任何錯誤消息,這些錯誤消息可能會提供有關問題的更多信息。
出現在/var/logs/messages
錯誤是:could not bind to socket : /var/run/saslauthd/mux , bind: address already in use
。
我們使用文件命令:file /var/run/saslauthd/mux
檢查了mux
套接字,輸出結果表明它是一個目錄。它應該是socket
。然後我們刪除它並重新啓動服務。現在服務正常。
請確保您有'賽勒斯-SASL-md5'包還安裝了(這是包在亞馬遜的Linux至少的名稱)。您可以使用'pluginviewer'實用程序驗證是否已安裝此插件。 –
@BertoldKolics我正在使用RedHat Linux,有什麼想法嗎? – Gurkha
@Gurkha,對不起,如果我問一個愚蠢的問題,但正如你說,你是相當新的LDAP,請允許我問,如果你確實有一個LDAP服務器偵聽'LDAP:// com.myldap.server'和你可以通過telnet com.myldap.server 389來訪問它。 –