AWS DocumentDB ECONNRESET错误,来自Mongo shell的SSH隧道



我已经按照AWS DocumentDB文档在VPC:外部进行了连接

  1. 我在与DocDB集群相同的安全组和VPC中创建了一个EC2实例
  2. 在安全组中,我为我的IP打开了22端口访问,还为安全内部的通信打开了27017端口,这样EC2实例就可以通过SSH隧道连接到DocDB
  3. 我运行ssh -f -i "ssh-tunneling-access.pem" -L 27017:{doc-db-cluster}:27017 {ec2-instance-user}@{ec2-instance-dns} -N打开SSH隧道
  4. 在另一个终端中,我尝试使用Mongo-shell与mongosh"mongodb://{credentials}!@localhost:27017/?tls=true&tlsAllowInvalidHostnames=true&tlsCAFile=rds-combined-ca-bundle.pem"进行连接

我得到了一个错误";MongoServerSelectionError:读取ECONNRESET";我在Windows11上运行,我的终端是Powershell Core。

有什么想法我错过了什么和/或如何解决它吗?

首先,确保您可以从EC2实例连接到DocumentDB。连接到DocumentDB集群的安全组必须允许端口27017作为EC2实例(或EC2的安全组(的源。第二,不清楚你从哪里开始隧道。是否执行了步骤3。在Windows 11机器上?你在Windows上安装了OpenSSH吗?使用一个GUI客户端,比如Robo3t,它支持SSH隧道,怎么样?有关如何连接的说明可以在此处找到。

这与安全组有关。当版本不匹配时,也会发生连接重置。如果你不想通过隧道访问mongodb,你也可以使用这样的平台:Adaptive,它允许你通过隧道访问dbs、VM和kubernetes集群,并围绕它建立可审计性。

最新更新