AWSマネージドサービスのセキュリティグループはインバウンドを開けなくて良いって本当?!
結論から言ってしまうと、 AWS(Amazon Web Services)のマネージドサービスを利用する際、セキュリティグループのインバウンドを開けなくて良いです!
マネージドサービスというと、例えばClientVPNやDirectoryServiceなどと言ったサービスが該当します。
ClientVPNを例に取ると、ローカルにClientVPNアプリケーションをインストールして、ClientVPNエンドポイントに対して接続することになると思います。
ローカルからエンドポイントに対してアクセスしているため、「インバウンドを何かしら開けないといけないだろう」と勘違いしている人が多いように感じますが、実はインバウンドは何も開けなくて良いのです。
本記事では、その理屈について説明していきます。
目次
セキュリティグループの基本理解
セキュリティグループはAWSにおける仮想ファイアウォールであり、EC2インスタンスやその他のAWSリソースへのトラフィックを制御するものです。
この記事に興味を持ってくれたような方は既にここまでは理解できているのではないでしょうか。
では早速本題です!
一般的な認識として、外部からのアクセスを許可するためにはインバウンドルールで特定のポートやIPレンジを開放する必要があると考えられがちです。
EC2のように自分で管理するリソースに関して言えば、これは正しいです。
しかし、冒頭で挙げたClientVPNやその他のマネージドサービスではこれは誤りです。
マネージドサービスではインバウンドを必要とせずにクライアント接続が可能です。
その理由を以下で詳しく見ていきます。
マネージドサービスがインバウンドを開けなくても接続可能な理由
AWSのマネージドサービスがセキュリティグループのインバウンドルールを開けずにクライアントと接続できる主な理由は、AWS側で管理しているサーバーとElastic Network Interface(ENI)が直接接続を行っているからです。
もう少し詳しく説明します。
AWSのマネージドサービスでは、ユーザーが個別にサーバーを管理する必要がない代わりに、AWSがインフラストラクチャ全体を管理し、サービス提供のために必要なネットワーク設定やセキュリティ管理を自動的に行います。
例えば、ClientVPNであれば、裏側でエンドポイントとなるサーバーが起動しています。
あるいはDirectory Serviceであればドメインサーバーが裏側で起動しています。
これらのサーバーはAWS側で管理されており、コンソール上からはリソースとして確認できませんが、裏側でAWSが起動しているのです。
この、裏側で起動しているサーバーとENIとの間は直接接続が行われているため、セキュリティグループのインバウンドを開けなくても接続が可能なのです。
セキュリティグループはどこにアタッチされているのか
もう一歩理解を深めるためにセキュリティグループがどこにアタッチされるのかについて話します。
ClientVPNのエンドポイント作成時に設定するセキュリティグループは、実際にはENIに対してアタッチされます。
ClientVPNのエンドポイント作成時にENIを確認すると、ClientVPNのENIが作成され、指定したセキュリティグループがアタッチされているはずです。
前述したように、AWS管理の裏側で立ち上がっているサーバーとENIの間は直接接続されています。
そのため、セキュリティグループのインバウンドを開けなくても接続が可能です。
細かい話をすれば、ENIに直接アクセスするようなケースがない限り、セキュリティグループのインバウンドを開ける必要はありません。
つまり、AWSで用意されたアプリケーションをローカルにインストールしてそこからアクセスするようなケースだけであればインバウンドを開ける必要はないのです。
よくある勘違いから生まれるセキュリティリスク
ここまで説明した通り、マネージドサービスではアタッチするセキュリティグループのインバウンドを開ける必要がないケースがあります。
しかし、「ユーザーからアクセスしているのだから何かしら開ける必要がある」と勘違いしている方が多くいらっしゃいます。
不要なインバウンドを開けてしまうことで、外部からの攻撃を受けやすくなり、セキュリティリスクが増大する可能性があります。
AWSのネットワークの仕組みを正しく理解し、必要最低限のポートやIPレンジのみを開けることが重要です。
まとめ
AWSのマネージドサービスを利用する際、セキュリティグループのインバウンドルールを無理に開放する必要はありません。
マネージドサービスはAWSがインフラストラクチャを管理し、必要なネットワーク接続を確保しているため、ユーザー側でのインバウンド設定は不要です。
誤ったインバウンド設定はセキュリティリスクを高める可能性があるため、サービスごとの正しいネットワーク設定を理解し、最小限のセキュリティグループ設定を適用することが重要です。
これにより、安全かつ効率的にAWSのマネージドサービスを活用することができます。