MongoDB Securityは、すべての間違った理由で今週ニュースになっています。すべての話は、ドイツに拠点を置く学生のグループによって公開されたことが判明した40,000ほどのデータベースに関するものでした。一部のデータベースには、本番データも含まれていました。これはいくつかのレベルでひどいものです。認証されていないデータベースに本番データがあるだけでなく、インターネットに公開されたままになっています。唯一驚くべきことは、露出するのにこれほど長い時間がかかったことです。 MongoDBサーバーをニュースにしたくない場合は、MongoDBインストールのセキュリティを向上させるための3つの簡単な手順を次に示します。
-
常に認証を有効にする
すべてのMongoDBクラスターに対して認証を有効にすることが重要です。開発インストールの場合でも、常に認証を有効にし、ワークフローが認証をサポートできるように調整されていることを確認してください。ユーザーとロールの追加の詳細については、こちらをご覧ください。
さらに一歩進んで、認証にパスワードの代わりにX509証明書を使用することもできます。これにより、「辞書」攻撃などのパスワードベースの攻撃からユーザーを保護できます。 MongoDBのエンタープライズビルドを使用している場合は、認証にKerberosを使用することもできます。
-
ファイアウォールでアクセスをロックダウン
データベースサーバーへのすべてのアクセスは「必要」に基づいている必要があり、ファイアウォールを使用してアクセスをロックダウンできます。一般的な構成では、アクセスをロックダウンして、アプリケーションサーバーとITチームのみがサーバーにアクセスできるようにします。 Amazon AWSを使用している場合は、セキュリティグループを使用してサーバーへのアクセスをロックダウンします。最後に、最も重要なポイント–データベースをインターネットに公開しないでください! データベースをインターネットに公開する理由はいくつかあります。
-
分離されたネットワークを使用する
今日のほとんどのパブリッククラウドには、パブリックインターネットからアクセスできない隔離されたネットワークスペースにサーバーを展開するオプションがあります。インターネットにアクセスすることはできますが、インターネットトラフィックを利用することはできません。たとえば、AWSは仮想プライベートクラウド(VPC)を提供し、Azureは仮想ネットワーク(VNET)を提供します。これらの分離されたネットワークは、データベースのインストールを徹底的に防御します。 AWSでは、VPCのプライベートサブネットにデータベースサーバーをデプロイできます。設定に誤りがある場合でも、データベースサーバーはインターネットに公開されません。
以下は、MongoDBのセキュリティに関するその他の関連記事です。ご不明な点がございましたら、[email protected]までお問い合わせください。
- MongoDBセキュリティの3つのA–認証、承認、監査
- MongoDBのセキュリティを向上させるための10のヒント
- AmazonAWSでの安全なMongoDBのデプロイ
- SSLでMongoクラスターを保護する