AWS セキュリティグループの設定方法|ファイアウォール機能と運用のコツを解説

AWS セキュリティグループは、EC2インスタンスやその他のAWS リソースを保護する仮想ファイアウォール機能です。これらは外部からの不正アクセスを防ぎながら、必要な通信のみを許可する重要な役割を担います。適切な設定により、インバウンドルールとアウトバウンドルールを使い分けて、ポート開放設定やIPアドレス制限を効果的に行うことができます。
本記事では、AWSマネジメントコンソールでの操作手順から運用管理のコツまで、実践的な設定方法と安全な運用ポイントを詳しく解説します。

AWS セキュリティグループの基本

AWS セキュリティグループは、クラウド環境におけるネットワークセキュリティの要となる機能です。従来のオンプレミス環境でのファイアウォールに相当する役割を果たしており、EC2インスタンスやその他のAWS リソースへのアクセス制御を行います。

セキュリティグループの役割と特徴

セキュリティグループは、インスタンスレベルで動作するステートフルな仮想ファイアウォールとして機能します。ステートフルとは、一度許可された通信の戻りトラフィックが自動的に許可される特性を指します。
この機能により、関連する通信が自動的に処理されるため、管理者の設定負荷が軽減されます。また、1つのEC2インスタンスに複数のセキュリティグループを割り当てることも可能で、柔軟なアクセス制御を実現できます。

VPC設定との関連性

セキュリティグループはVPC(Virtual Private Cloud)内で作成され、基本的には特定のVPCに紐づいて動作します。
VPC設定において、サブネットレベルでの制御を行うネットワークACLと併用することで、多層防御によるセキュリティ強化が可能です。セキュリティグループはインスタンスレベル、ネットワークACLはサブネットレベルで制御を行うため、それぞれの特性を活かした設計が求められます。

従来のファイアウォールとの違い

従来のファイアウォールとは異なり、AWS セキュリティグループは拒否ルールを設定できません。基本的な考え方としては、すべてのトラフィックはデフォルトで拒否され、明示的に許可されたもののみが通過します。ただし、アウトバウンドトラフィックについては、セキュリティグループ作成時に「すべて許可」のルールが自動で付与されるため、初期状態では外向き通信は可能です。
また、設定変更が即座に反映される点も特徴的です。オンプレミス環境のファイアウォールでは設定変更に再起動が必要な場合もありますが、セキュリティグループでは変更後すぐに新しいルールが適用されます。

項目 セキュリティグループ 従来のファイアウォール
動作レベル インスタンスレベル ネットワークレベル
状態管理 ステートフル 設定により変動
拒否ルール 設定不可 設定可能
設定反映 即座に反映 再起動が必要な場合有

セキュリティグループの設定方法

AWSマネジメントコンソールを使用したセキュリティグループの設定は、段階的なアプローチで行う必要があります。新規作成から詳細設定まで、適切な手順で進めることで、安全性を確保しながら必要な通信を許可できます。

新規セキュリティグループの作成手順

まずはAWSマネジメントコンソールにログインし、「サービス」を選択して一覧を表示します。サービス一覧から「VPC」を選択し、画面左側メニューの「セキュリティグループ」をクリックします。「セキュリティグループを作成」ボタンをクリックして、新規作成プロセスを開始します。
セキュリティグループ名と説明は、後の運用管理を考慮して分かりやすく設定することが重要です。例えば「web-server-sg」や「database-sg」など、用途が明確に分かる命名規則を採用します。
VPCの選択では、対象となるリソースが存在するVPCを指定します。一度作成したセキュリティグループは、異なるVPCに移動することはできないため、慎重に選択する必要があります。

インバウンドルールの設定方法

インバウンドルールは、外部からインスタンスへの通信を制御するルールです。タイプ、プロトコル、ポート範囲、送信元を指定して設定します。
Webサーバーの場合、HTTP(ポート80)とHTTPS(ポート443)の許可設定が一般的です。送信元は「0.0.0.0/0」で全てのIPアドレスからのアクセスを許可するか、特定のIPアドレス範囲を指定(※)します。
SSHアクセス制御の場合は、ポート22への接続を管理者のIPアドレスのみに制限することが推奨されます。これにより、不正アクセスのリスクを大幅に軽減できます。
(※) 公開サービス以外では、特定のIPアドレス範囲に限定することが推奨されます。

用途 タイプ ポート 推奨送信元設定
Webサーバー HTTP 80 0.0.0.0/0
SSL Webサーバー HTTPS 443 0.0.0.0/0
SSH 接続 SSH 22 管理者IPのみ
データベース MySQL/Aurora 3306 アプリケーションサーバーのみ

アウトバウンドルールの設定方法

アウトバウンドルールは、インスタンスから外部への通信を制御します。デフォルトでは、すべての外向き通信が許可されていますが、セキュリティ強化のため必要最小限の通信のみを許可する設定が推奨されます。
アプリケーションサーバーの場合、データベースへのアクセスやインターネットへのHTTP/HTTPS通信など、業務に必要な通信のみを許可します。
セキュリティグループ参照設定を利用することで、IPアドレスではなく他のセキュリティグループを参照した通信許可が可能です。これにより、動的IP管理の負荷を軽減できます。

セキュリティグループの運用ベストプラクティス

セキュリティグループの効果的な運用には、設計段階から運用フェーズまでの一貫したアプローチが必要です。組織のセキュリティ要件に応じて、適切なルール設計と継続的な管理体制を構築することが求められます。

命名規則とタグ付けの実践

セキュリティグループの命名規則は、運用チーム全体で統一することが大切です。「環境-役割-用途」の形式(例:prod-web-sg、dev-db-sg)を採用することで、どの環境のどの役割のセキュリティグループかが一目で判別できます。
タグ付けも同様に重要で、「Environment」「Role」「Owner」「CostCenter」などの標準的なタグを設定することで、管理とコスト分析を効率化できます。特に大規模な環境では、タグベースでのリソース管理が運用の鍵となります。

最小権限の原則の適用

セキュリティグループの設定では、最小権限の原則を徹底することが重要です。必要最小限のポートとプロトコルのみを許可し、送信元も可能な限り制限します。
例えば、データベースサーバーへのアクセスは、アプリケーションサーバーからのみ許可し、管理目的のSSHアクセスは特定の管理用IPアドレスに限定します。0.0.0.0/0からの不要なアクセス許可は避けることで、攻撃面を大幅に削減できます。

定期的な設定見直しプロセス

セキュリティグループの設定は、システムの変更や要件の変化に応じて定期的に見直す必要があります。月次または四半期ごとの定期レビューにより、不要になったルールの削除や、新たなセキュリティ要件への対応を行います。
AWS Configなどのサービスを活用することで、セキュリティグループの変更履歴を追跡し、コンプライアンス要件への対応も可能です。変更管理プロセスを確立し、すべての変更を承認フローに通すことで、意図しない設定変更を防止できます。

実用的な設定例とトラブル対策

実際の運用において、セキュリティグループの設定は用途別に最適化する必要があります。Webサーバー、データベースサーバー、管理サーバーなど、それぞれの役割に応じた具体的な設定例を理解することで、効果的なセキュリティ設計を実現できます。

Webサーバー用セキュリティグループ

Webサーバー用のセキュリティグループでは、一般ユーザーからのHTTPとHTTPSアクセスを許可する必要があります。インバウンドルールでは、ポート80(HTTP)とポート443(HTTPS)を0.0.0.0/0から許可します。
管理用のSSHアクセスは、運用チームのIPアドレス範囲のみに制限することで、セキュリティを確保します。また、ロードバランサーからのヘルスチェック用アクセスも考慮した設定が必要です。
アウトバウンドルールでは、データベースへのアクセス(例:MySQLの3306番ポート)、外部APIへのHTTPS通信、ソフトウェア更新用のHTTP/HTTPS通信を許可します。不要な外向き通信は制限することで、セキュリティを強化できます。

データベースサーバー用設定

データベースサーバーは、アプリケーションサーバーからのアクセスのみを許可する設定が基本です。インバウンドルールでは、データベースポート(MySQLなら3306、PostgreSQLなら5432)への接続を、Webサーバーのセキュリティグループからのみ許可します。
セキュリティグループ参照設定を活用することで、IPアドレスの変更に柔軟に対応できます。

よくあるトラブルと解決方法

セキュリティグループ設定でよく発生するトラブルとして、接続できない問題があります。まずは、対象のポートが正しく開放されているか、送信元の設定が適切かを確認しましょう。
パフォーマンス問題が発生した場合は、セキュリティグループのルール数を確認してみましょう。1つのセキュリティグループに設定できるルール数には上限があり、過度に複雑な設定は避ける必要があります。
DMSレプリケーションインスタンス用設定では、ソースデータベースとターゲットデータベース間の通信を適切に許可する必要があります。また、リージョンやアベイラビリティゾーンをまたぐ場合の設定も考慮する必要があります。

トラブル内容 確認ポイント 対処方法
接続できない ポート・送信元設定 ルールの追加・修正
パフォーマンス低下 ルール数・複雑さ ルールの最適化・統合
管理の複雑化 命名規則・タグ設定 標準化・ドキュメント整備
セキュリティインシデント 過度な許可設定 最小権限原則の適用

まとめ

AWS セキュリティグループは、クラウド環境におけるネットワークセキュリティの基盤となる重要な機能です。仮想ファイアウォールとして、インバウンドルールとアウトバウンドルールを適切に設定することで、外部からの不正アクセスを防止しながら、必要な通信を確保できます。
効果的な運用には、最小権限の原則に基づく設計、分かりやすい命名規則の採用、定期的な設定見直しが欠かせません。また、セキュリティグループ参照設定や適切なタグ付けにより、管理負荷を軽減しながらセキュリティを強化することが可能です。
継続的な学習と改善により、組織のセキュリティ要件に応じた最適なセキュリティグループ設計を実現し、安全で効率的なAWS運用を実現しましょう。

富士ソフトでは、お客様のAWS環境の包括的なセキュリティ対策をご支援しております。
知識や社内リソースの観点で自社運用が難しいお客様には、24時間365日包括的にお客様のクラウド環境のセキュリティサービスを管理・運用するソリューションであるFujiFastenerをおすすめしております。
AWSにおける高度なクラウドセキュリティ対策をお考えの方は、ぜひご相談ください。

> FujiFastener(フジファスナー)

FujiFastenerは、お客様のAWS・Google Cloud・Azure環境を常時監視し、検知アラートの確認や初期対応、調査など負荷の高い運用業務を代行するサービスです。
AIによる自動分析と専門エンジニアの24時間対応を組み合わせ、迅速なインシデント対応を実現します。

お問い合わせContact

インフラ領域でお困りのことがあれば、いつでもお声がけください。

富士ソフト株式会社
ソリューション事業本部 営業統括部

お問い合わせはこちら

050-3000-2733
(受付時間10:00~17:00 ※土日祝を除く)

※記載されている会社名、製品名は各社の商標または登録商標です。