簡體   English   中英

mongodb副本集身份驗證不起作用

[英]mongodb replicaset auth not working

我的副本集有問題

將keyFile路徑添加到mongodb.conf之后,我可以連接了,這是我的mongo.conf:

logpath=/path/to/log

logappend=true

replSet = rsname

fork = true

keyFile = /path/to/key

這就是命令行中顯示的內容:

XXXX@XXXX:/etc$ sudo service mongodb restart
stop: Unknown instance:
mongodb start/running, process 10540
XXXX@XXXX:/etc$ mongo
MongoDB shell version: 2.4.6
connecting to: test
Mon Sep 30 18:44:20.984 Error: couldn't connect to server 127.0.0.1:27017 at src/mongo/shell/mongo.js:145
exception: connect failed
XXXX@XXXX:/etc$

如果我在mongo.conf中評論keyFile行,則可以正常工作。

我解決了問題。

這與密鑰文件的權限有關,我修復了Permissionas和所有權,並像charm一樣工作:

作為root用戶,我這樣做:

$ chmod 700 keyfile
$ chown monogdb:mongodb keyfile

如果驗證是問題所在,您應該收到另一條消息(並且應該能夠在不通過驗證會話的情況下啟動外殼程序,只是阻止您運行大多數命令)。

這更像是套接字異常,即您可能連接的地方沒有服務監聽。 您可以使用netstat來檢查進程是否正在監聽消息中的ip:port。 我認為mongod進程尚未啟動,可能由於多種原因,請檢查當前日志。 一件事可能是密鑰文件在指定路徑上不存在,或者沒有設置適當的特權。

添加密鑰文件也會自動打開auth選項。 這意味着您必須使用用戶進行身份驗證,但是可以使用localhost異常繞過此身份驗證:。 閱讀文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM