如何为rethinkdb
连接添加用户名和密码?
在我的网络中有100多台机器。其中只有2台机器在我的控制之下。 在2中,一个是虚拟机,一个是物理机。
如果我使用以下命令在虚拟机上运行rethinkdb
rethinkdb --bind all
现在我的rethinkdb http:// ip:8080
会暴露给网络中的所有计算机。如何设置用户名和密码来限制他人?
如果我在虚拟机中使用localhost:8080
,则管理HTTP连接是无用的,因为它既不能在物理机上也不能在虚拟机上访问。
我该如何解决这个问题?
由于
答案 0 :(得分:13)
RethinkDB尚未提供身份验证系统,请参阅https://github.com/rethinkdb/rethinkdb/issues/266
最好的方法可能是不要使用--bind all flags启动rethinkdb。
您仍然可以使用ssh隧道访问Web界面。 如果您使用的是Linux,则命令为
ssh -D <PORT> <LOGIN>@<MACHINE>
然后设置浏览器以使用ssh隧道。在Chrome中,它位于设置中&gt;代理设置 将socks主机设置为以及之前使用的端口。
然后,如果您在浏览器中点击机器:8080,您应该能够看到管理http界面。
答案 1 :(得分:10)
创建ssh隧道并访问其他计算机的localhost的过程:
我的虚拟机是linux 我的物理机器是Mac
步骤1:访问虚拟机并启动rethinkdb
user@mac:~# ssh user@linux
user@linux:~# rethinkdb
第2步:创建一个SSH隧道来访问locahost:8080的linux机器
user@mac:~# ssh -L 9000:localhost:8080 user@linux
user@linux:~#
第3步:打开浏览器并指向
http://localhost:9000
多数民众赞成!您无需更改任何浏览器设置!
资源:
http://www.youtube.com/watch?feature=player_embedded&v=VdkLejEN3So