如何为远程连接启用密码身份验证,并为MongoDB的本地连接禁用密码身份验证?
如何为远程连接启用user:password身份验证,并对来自localhost的所有内容禁用它?我在本地运行prod,我真的不想启用任何用户或密码身份验证,但我希望能够远程连接到我的数据库以管理prod上的数据。您有两件事要做 1-通过设置防火墙规则,允许远程连接到您的服务器。 例如,如果您使用的是Linux,这可以通过如何为远程连接启用密码身份验证,并为MongoDB的本地连接禁用密码身份验证?,mongodb,Mongodb,如何为远程连接启用user:password身份验证,并对来自localhost的所有内容禁用它?我在本地运行prod,我真的不想启用任何用户或密码身份验证,但我希望能够远程连接到我的数据库以管理prod上的数据。您有两件事要做 1-通过设置防火墙规则,允许远程连接到您的服务器。 例如,如果您使用的是Linux,这可以通过 sudo ufw allow from REMOTE_MACHINE_IP_HERE to any port 27017 之后别忘了重新加载防火墙 2-编辑mongod.c
sudo ufw allow from REMOTE_MACHINE_IP_HERE to any port 27017
之后别忘了重新加载防火墙
2-编辑mongod.conf以设置要允许连接的接口的IP。
这意味着您不应在此配置上允许localhot或127.0.0.1
在mongo.conf中,执行以下操作
# network interfaces
net:
port: 27017
bindIp: mongodb_server_ip_here
重新启动mongodb服务器,就可以开始了
mongo --port 27018
使用管理员
db.createUser(
{
用户:“受限”,
密码“,
角色:[{role:“readWrite”,db:“reporting”}],
身份验证限制:[{
客户资料来源:[“40.0.0.0”、“12.0.0.0”],
服务器地址:[“120.0.0.0”]
} ]
}
)
ssh -L27018:CLIENT1:27017 SERVER1
并从客户端本地访问mongodb服务器,如下所示:
mongo --port 27018
如何为远程连接启用user:password身份验证,并对来自localhost的所有内容禁用它
MongoDB不支持这种安排
如果在部署中启用身份验证,则所有连接都必须进行身份验证