2017-01-12 22 views
8

mongodumpmongorestoreはセキュリティ面で非常に面倒です。mongodumpとmongorestore with SSL

私はmongod v3.4.1とrequireSSL192.168.99.100で実行されています。私のWindows上で動作しているVirtualBoxドッカーマシンのIPアドレスです。それは単に原因をテストするためです。

インスタンスは、同じCAで署名されたサーバーとクライアントの両方でTLS/SSLを使用するように既に構成されています。私はmongod Common NameのIPアドレスを使用して、ホスト名の検証を許可します。認証はすでにクライアント証明書を受け入れることができます。

すべてが機能しています。私はこのようにそれに接続することができます。

mongo --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem 

が、今私は両方mongodumpmongorestore作業を取得することはできません。

mongodump --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d olddb 
mongorestore --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d newdb --dir=dump/olddb 

どちらもこのエラーを返す:

2017-01-13T04:28:03.881+0800 Failed: error connecting to db server: no reachable servers, openssl error: Host validation error 

私がされていますクライアント証明書を無効にしようとすると、ユーザー名とパスワードを使用しても動作しませんでした。私はそれを動作させるためにSSLを削除する必要があります。

つまり、私は生産中でpreferSSLしか使用できません。 requireSSLを付けておくと、localhostでSSLをバイパスする方法がありません。

誰でも同じエラーが表示されますか?それは既知の問題ですか?

答えて

0

ファーストはまた、SSL証明書のデフォルトのパスがある

/var/log/mongodb/mongod.logパスであなたのログを確認してください。また、UNIXベースのシステムでは、/etc/ssl/mongodb.pemにあるSSL証明書を受け取ります。

この問題についての私の理解によれば、証明書パスを確認する必要があります。 SSL証明書はWindows環境にありません。証明書のフルパスを追加してみてください。 https://docs.mongodb.com/manual/tutorial/configure-ssl-clients/

ハッピーコーディング