リモート データベース サーバーに接続する際に問題が発生しています。
私はWindows 10を使用していますクライアントUbuntu 16に正常に接続できましたサーバキーペアを含む SSH 経由の Putty を使用します。
現在、クライアントから接続したいサーバー上で MongoDB サーバーを実行していますが、サーバーを必要以上にインターネットに公開したくない (いずれにしても、公開用ではない) ため、SSH トンネルを使用して、正しいポートを転送したいと考えています。サーバー内からデータベース サーバーをローカルで使用することに問題はありません。
しかし、クライアントからデータベースに接続しようとすると、接続が拒否されます。
サーバー上で/var/log/auth.log
接続しようとすると、次のメッセージが表示されます:
sshd[30753]: エラー: connect_to <public-ip-redacted> ポート27017: 失敗しました。
サーバーのsshd_configには
ゲートウェイポート はい
AllowAgentForwarding はい
AllowTcpForwarding はい
そこで、リモートへのローカル ポート転送を使用してクライアントに Putty を設定しました。
tcptrack のあるサーバー上いくつかの接続がポップアップしているのがわかりますが、ループバックインターフェースでリセットされていますクライアントから接続しようとすると、1〜2 秒後に消えます。
何が足りないのでしょうか?
答え1
mongoDB サーバーは、-file に従って 127.0.0.1 のみをリッスンしていました/etc/mongod.conf
。putty トンネルのポート転送は、< public-remote-ip>:< port> ではなく 127.0.0.1:< port> に設定する必要があります。これは、putty がこれをリモートのローカルホストに暗黙的に変換するためです。