私は、Lightsail AWSインスタンスを稼働させてMEANスタックを稼働させています。私は別のネットワーク上で実行されている既存の平均スタックを持っています。現時点では、ノードserver.jsは(同じマシン上の)mongoビットのlocalhostに接続します。私がしたいのは、localhostをAWSリモートサーバ上で動作するmongoへの接続で置き換えることだけです。sshトンネル経由でリモートawsライトailmongodbにアクセスするには
私はセキュリティ上の理由から、この接続をsshトンネリングすることをお勧めします。これは私がよく知っていると思います。
ssh -L 8181:127.0.0.1:80 -i ~/LightsailDefaultPrivateKey-eu-west-2.pem [email protected] -N
私は、その後に閲覧することができます:私が実行している(リモートDBへの)ノード・サーバーをホストしているマシン上のコンソールで
:私がこれまで行ってきた何
はこれですlocalhost:8181/rockmongoを使用しているローカルマシンからのRockMongo UI ... yay。
私はその後、実行すると、次の
mongo --username XXXXXX --password XXXXXX 31.16.56.125:8181/testdata
私が手:
ssh -L 8181:127.0.0.1:27017 -i ~/LightsailDefaultPrivateKey-eu-west-2.pem [email protected] -N
しようとすると、使用して私のリモートマシンからDBにアクセスすると
(27017はMongoのポートです)次のエラー:
~] 2017-12-28T22:11:09.791+0000 Error: couldn't connect to server 31.16.56.125:8181 (31.16.56.125), connection attempt failed at src/mongo/shell/mongo.js:148 exception: connect failed
これは間違っていますか?つまり、http接続のみのトンネルであり、mongoコマンドラインの使用ではありませんか?他の方法で接続をテストする必要がありますか?私が持っていた多くの幸運、このための場所の上にすべてのGoogleで検索していませんでした
(AWSドキュメントの多くを示唆ファイアウォールに穴パンチ! - 1は、もはや行うことができます)