Mongo身份验证

Inf*_*ss7 9 mongodb

我已经设置了两个服务器s1和s2.s1是运行Web服务器的服务器,而s2是运行我的mongodb的服务器.为了安全起见,我在mongo实例上设置了身份验证.当我尝试从s1连接到s2上的mongo实例时,我在尝试进行身份验证时遇到错误.

如果我使用:

mongo DB --host HOST --port PORT -u USER -p PASSWORD 
--authenticationDatabase DB --authenticationMechanism SCRAM-SHA-1
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Error: 2 SASL authentication support not compiled into client library.
at src/mongo/shell/db.js:228
exception: login failed
Run Code Online (Sandbox Code Playgroud)

如果我使用:

mongo DB --host HOST --port PORT -u USER -p PASSWORD 
--authenticationDatabase DB
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

Error: 18 { ok: 0.0, errmsg: "Challenge-response authentication using 
getnonce and authenticate commands is disabled.", code: 2 } at 
src/mongo/shell/db.js:228
exception: login failed
Run Code Online (Sandbox Code Playgroud)

如果我使用:

mongo DB --host HOST --port PORT
Run Code Online (Sandbox Code Playgroud)

我进去但后来我需要使用db.auth来做任何事情然后我得到这个错误:

Error: 18 { ok: 0.0, errmsg: "Challenge-response authentication using 
getnonce and authenticate commands is disabled.", code: 2 }
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我不能进去.有人可以帮忙吗?

小智 0

  • 您是否尝试过指定主机后面的端口和数据库?尝试: mongo 主机:端口/bbdd -u XXX -p

  • 您启用了 TLS/SSL 吗?

  • 也许 Mongo 配置为仅接受来自本地主机的连接?

问候