通过代理的AWS DocumentDB

时间:2019-03-14 19:56:06

标签: ssh-tunnel mongodb-shell aws-documentdb

我有一个AWS DocumentDB设置,可以使用以下命令通过跳转框进行连接:

mongo --ssl --host aws-host:27017 --sslCAFile rds-combined-ca-bundle.pem --username my_user --password <insertYourPassword>

我希望能够通过localhost连接到它进行一些测试。我无法直接连接,因此尝试从跳跃中打开隧道:

ssh -i ~/.ssh/my-key user@my_jump -L 27017:aws-host:27017 -N

之后,我尝试了基本的MongoDB connect命令:

mongo --ssl --host localhost:27017 --sslCAFile rds-combined-ca-bundle.pem --username my_user --password <insertYourPassword>

我了解一个错误:

  

服务器证书与主机名不匹配。主机名:localhost与SAN不匹配

我尝试使用export http_proxy来使用http://my_jump:27017并再次使用上面的命令,但是没有运气。

有关如何连接的任何建议或帮助吗?

1 个答案:

答案 0 :(得分:2)

尝试disable ssl hostname validation

mongo --ssl --sslAllowInvalidHostnames ...

注意-sslAllowInvalidHostnames 可从 版本3.0 获得。

如果这不起作用,请按照documentation的说明,尝试从连接选项中完全删除--ssl

  

mongo shell验证主机名(在--host选项中指定   或连接字符串)与SAN相匹配(或者,如果不存在SAN,   或由蒙古人出示的证明中的CN。如果SAN   存在时,mongo与CN不匹配。如果主机名   与SAN(或CN)不匹配,mongo shell将无法连接。