トラフィックフィルターでElastic Cloudのネットワークセキュリティを向上させる
Elasticは本日、Elastic Cloudのトラフィックを管理する新機能を発表いたしました。この新機能を使って、Amazon Web Services(AWS)、Google Cloud、およびMicrosoft AzureのElastic Cloudデプロイに、IPフィルタリングを設定することができます。また、AWS PrivateLinkの統合も新登場しました。これらの機能群を活用することで、Elastic Cloudのワークロードにおけるネットワークセキュリティのレイヤーをさらに高度に制御できます。
デプロイへのネットワークアクセスを制御する
IPフィルタリングは、特異なIPアドレスに基づき、またはIPアドレスをブロックしたり、範囲を限定したりすることで、Elastic Cloudデプロイへのネットワークアクセスを指定します。またAWS PrivateLinkは、仮想プライベートクラウド(VPC)とAWSリソース、およびオンプレミスのアプリケーション間にプライベート接続を確立します。この統合で、ユーザーはアプリとElastic Cloudのデプロイとの間のネットワーク接続を安全に保つことが可能になりました。
賢明なセキュリティポリシーには、特権を最小限にする原則と、複数のレイヤーでセキュリティを適用するスキームが含まれます。セキュリティポリシーは強固なセキュリティ態勢を構築する1要素にすぎませんが、その発想は、アプリ、データ、およびシステムからの、ユーザーとシステムへのアクセスを正当な業務上の必要に制限するというものです。またElasticは、どのようなセキュリティツールも、脅威から保護する完全なソリューションとはなりえないことを理解しています。つまり、セキュリティ制御にあたっては、複数のレイヤーを重ねる仕組みが必要です。IPフィルタリングは、この2つのコンセプトを真剣に検討して開発されました。
インストールやデプロイにセキュリティのレイヤーをもう1つ重ねることにより、外部からくるトラフィックを、信頼できるソースのIPアドレスのものに限定できます。たとえば、通常のデプロイへのアクセスは、運用中のバージョンをデプロイしたVPCに関連する範囲のIPに厳密に制限したいが、開発中のバージョンのデプロイについては、より広範囲の開発者にアクセスを許可したい、というケースに対応することができます。
PrivateLinkを使って、デプロイへのアクセスを安全に保つ
公開中の自社アプリに対し、データセットやデータストアがプライベートIPアドレスのみ明かす設定は、一般的なセキュリティアーキテクチャーで使用されています。これは、個人を特定できる情報(personally identifiable information、PII)や、機密情報をデータストアに格納する場合に望ましいアプローチです。
PrivateLinkは、安全な接続を提供する望ましい手法として急速に普及しており、アプリ(サービス利用側)をデプロイしたVPCと、Elasticsearchのデプロイ(サービス提供側)があるVPCを接続することができます。
プライベートIPを使用した安全な通信や、よりシンプルなネットワーク管理の実現など、PrivateLink経由でサービスにアクセスするメリットは数多くあります。PVCピアリングやインターネットゲートウェイベースのソリューションと異なり、PrivateLinkは一方向性です。つまり、利用側のVPCからエンドポイントに向かうトラフィックしかサポートしません。
さらに、ユーザーはどのVPCやサブネットからPrivateLinkエンドポイントへのアクセスを許可するかを選び、指定することができます。この仕組みにより、サービスのエンドポイントを直接プライベートネットワークでホストされているように動作させながら、一方向のトラフィック(VPCからElastic Cloud)のみ許可することが可能になります。
Elastic Cloudでトラフィック管理機能を使う
トラフィックフィルターを作成する
ユーザーは、PrivateLink接続を作成してVPCからElastic Cloudにピアリングする手法と、IPフィルタリングのルールセットを作成してデプロイへのアクセスを許可する一連のIPを制限する手法から選ぶことができます。
PrivateLinkエンドポイントを作成する
AWSでVPCエンドポイントを設定する
- AWSアカウントにログインして、VPCエンドポイントを作成します。トラフィックフィルタリングに関するドキュメントを参照して、インターフェースのエンドポイントを作成するリージョンのサービス名を設定します。たとえばus-east-1リージョンの場合、サービス名は
com.amazonaws.vpce.us-east-1.vpce-svc-0e42e1e06ed010238
のようになります。エンドポイントへのアクセス権限を持つセキュリティグループを割り当てます。設定完了後、インターフェースVPC Endpoint IDが表示されます。このIDは後述の手順で使用するため、保存しておきます。 - 作成したエンドポイントインターフェースのドメイン名を指すDNS CNAMEエイリアスを設定します。
トラフィックフィルターを設定する ‐ Elastic CloudのPrivateLinkエンドポイント
- Elastic Cloudコンソールで、[Account](アカウント) > [Traffic filters](トラフィックフィルター)に進み、[Create filter](フィルターを作成)をクリックして、
- [PrivateLink]を選択します。わかりやすいフィルター名を付け、説明を入力することができます。フィルター名にVPCのリージョン名を含めることも検討してみてください。Endpoint IDは、前出の手順で保存したインターフェースVPC Endpoint IDです。
IPフィルタリングのルールセットを作成する
- Elastic Cloudコンソールで、[Account](アカウント) > [Traffic filters](トラフィックフィルター)に進み、[Create filter](フィルターを作成)をクリックして、[IP filtering rule set](IPフィルタリングルールセット)を選択します。
- わかりやすいトラフィックフィルター名を付け、説明を入力することができます。1つ以上のルールを追加することにより、複数のCIDR範囲、または個別のIPアドレスに対応させることもできます。
作成完了後、トラフィックフィルターを1つ以上のデプロイに紐付けることにより、フィルターを有効化できます。
トラフィックフィルターをデプロイに紐付ける
作成が完了したフィルターは、デプロイの作成中にデプロイに紐付けするか、または既存のデプロイを編集して紐付けることができます。トラフィックフィルターは、複数のデプロイに紐付けることができます。また、1つのデプロイに複数のトラフィックフィルターを紐付けることも可能です。ご利用のアカウントのダッシュボードで、デプロイと、紐付けされたトラフィックルールの概要を確認することができます。
フィルターの動作確認を行う
フィルタリングルールの設定に応じて、PrivateLinkエンドポイントを経由することでのみデプロイにアクセスできる、ないし、明示的に設定されたリストのIP経由でのみデプロイにアクセスできる、といった制約が適用されます。VPCにデプロイしたアプリからの接続をテストするには、アクセス許可の設定がない目的地アドレスからアプリへの接続を試みるというやり方があります。
使いはじめる
ご紹介したIPフィルタリングとAWS PrivateLink統合は、Elastic Cloudにログインして、または14日間の無料トライアルに登録して、すぐにお使いいただくことができます。いずれの機能もスタンダード、ゴールド、プラチナ、エンタープライズにわたるすべてのElastic Cloudサブスクリプションでご利用いただくことができ、通常のクラウドプロバイダー料金に加算される費用はありません。詳しくは、プロダクトドキュメントでご確認いただくことができます。