セキュリティグループの設定方法|AWS初心者向けガイド

※本記事はプロモーションを含みます。

セキュリティグループの設定方法|AWS初心者向けガイド

セキュリティグループとは、AWSのEC2インスタンスに対するネットワークアクセス制御を担う仮想ファイアウォール機能であり、正しく設定することがクラウドセキュリティの基礎となります。本記事では、ネットワークエンジニア歴15年の筆者が、セキュリティグループの設定方法を初心者向けに詳しく解説します。読了時間目安は約8分です。

目次

セキュリティグループとは

セキュリティグループは、Amazon Web Services(AWS)が提供するネットワークセキュリティ機能の一つです。AWS内のEC2インスタンスやRDS、ALB(Application Load Balancer)などのリソースに対して、どのネットワークトラフィックを許可するか・拒否するかをルール形式で定義できる仮想ファイアウォールとされています。

従来のオンプレミスデータセンターではハードウェアファイアウォールを物理的に配置していましたが、AWSではセキュリティグループがこの役割を担う可能性があります。クラウド環境特有の柔軟性とスケーラビリティを実現するための重要な仕組みです。

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

セキュリティグループには以下のような特徴があるとされています:

  • ステートフル動作:インバウンドで許可されたトラフィックに対する応答(アウトバウンド)は、ルール設定と無関係に自動的に許可される
  • デフォルト構成:新規作成時は、アウトバウンドは「すべて許可」、インバウンドは「すべて拒否」となる
  • 複数の場所から参照可能:セキュリティグループ同士を参照することで、柔軟なネットワーク構成を実現できる
  • VPC単位での管理:セキュリティグループはVPC(Virtual Private Cloud)ごとに独立している

セキュリティグループとネッ…

ネットワークセキュリティを学習する際に、セキュリティグループと「ネットワークACL(Access Control List)」の区別が重要とされています。両者の違いは以下のとおりです:

項目セキュリティグループネットワークACL
適用レベルインスタンス単位サブネット単位
ステートフル性ステートフル(応答は自動許可)ステートレス(明示的に設定が必要)
デフォルト動作すべて拒否(インバウンド)すべて拒否
管理方式許可ルールのみ記述許可・拒否ルールの両方記述

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

セキュリティグループの作成方法

AWSマネジメントコンソールでセキュリティグループを作成する手順は以下のとおりです:

  1. AWSマネジメントコンソールにログインし、EC2ダッシュボードを開く
  2. 左側のナビゲーションメニューから「セキュリティグループ」を選択
  3. 「セキュリティグループを作成」ボタンをクリック
  4. セキュリティグループ名と説明を入力(例:「web-server-sg」)
  5. VPCを選択(既存のVPCまたは新規作成したVPC)
  6. インバウンドルールとアウトバウンドルールを設定
  7. 「セキュリティグループを作成」をクリックして完了

セキュリティグループに付与…

セキュリティグループは作成時に以下の識別子が自動付与されるとされています:

  • グループID:「sg-」で始まる12文字のID。API操作やタグ検索で使用される一意の識別子
  • グループ名:ユーザーが指定した任意の名前。同一VPC内では重複不可

セキュリティグループを他のセキュリティグループから参照する際は、グループIDを使用することが推奨されています。これにより、グループ名変更の影響を受けない堅牢な構成が実現できるとされています。

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

インバウンドルールの基本構造

インバウンドルールは「外部から当該リソースへの通信を許可するかどうか」を定義します。各ルールは以下の要素で構成されるとされています:

  • プロトコル:TCP、UDP、ICMP、すべてのプロトコルなど
  • ポート範囲:単一ポート(例:80)または範囲(例:1024~65535)
  • ソース:IP CIDR(例:192.168.1.0/24)、セキュリティグループID、別のセキュリティグループ参照

実践的なインバウンドルール…

Webサーバーを想定した典型的なインバウンドルール設定例は以下のとおりです:

用途プロトコルポートソース
HTTP通信TCP800.0.0.0/0(すべてのIPから)
HTTPS通信TCP4430.0.0.0/0(すべてのIPから)
SSH接続TCP22203.0.113.0/24(管理者のみ)
データベース接続TCP3306sg-xxxxx(アプリケーションサーバーのセキュリティグループID)

セキュリティグループ同士の…

セキュリティグループは、別のセキュリティグループをソースとして指定できるとされています。これにより、複数のインスタンスで共有されるセキュリティグループを効率的に管理できる可能性があります。例えば、アプリケーションサーバーがデータベースサーバーに接続する場合、データベースサーバーのセキュリティグループのインバウンドルールで「アプリケーションサーバーのセキュリティグループ」をソースとして指定することが推奨されているとされています。

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

アウトバウンドルールの役割

アウトバウンドルールは「リソースから外部への通信を許可するかどうか」を定義します。デフォルト設定ではすべてのプロトコル・ポート・宛先が許可される傾向にあるとされていますが、セキュリティ強化の観点からは必要な通信のみに絞ることが推奨されているとされています。

アウトバウンドルール設定の…

一般的なWebアプリケーションサーバーのアウトバウンドルール設定例は以下のとおりです:

  • データベース通信:TCP 3306(MySQL)または5432(PostgreSQL)宛を許可
  • DNS通信:UDP 53を許可(ドメイン名解決用)
  • NTP通信:UDP 123を許可(時刻同期用)
  • 外部API呼び出し:TCP 443(HTTPS)を許可

このように、アウトバウンドルールを明示的に設定することで、不正な通信や漏洩の防止に貢献する可能性があります。

実践的な運用ポイント

最小権限の原則の適用

セキュリティグループの設定において最も重要とされている考え方が「最小権限の原則(Principle of Least Privilege)」です。これは「必要最小限の通信のみを許可し、それ以外はすべて拒否する」という原則を意味するとされています。

具体的には、開発初期段階で「0.0.0.0/0(すべてのIP)」から特定のポートへのアクセスを許可した後、実装が進むにつれてソースIPを限定していく方法が推奨されているとされています。これにより、セキュリティリスクを段階的に低減できる可能性があります。

セキュリティグループのタグ…

複数のセキュリティグループを管理する際、タグを活用することが効率化に繋がる可能性があります。推奨されるタグ付け方法は以下のとおりです:

  • Environment:「Production」「Staging」「Development」など環境を示す
  • Application:「web-server」「database」「cache」など用途を示す
  • Owner:チーム名または担当者を示す
  • CostCenter:コスト配分用の部門コード

セキュリティグループの監視…

AWS CloudTrailを利用することで、セキュリティグループの変更履歴を監視できるとされています。重要な変更にアラートを設定することで、意図しない設定変更の早期発見が可能になる可能性があります。CloudTrailのログはAmazon S3に保存でき、Amazon Athenaで分析することも推奨されているとされています。

セキュリティグループとIA…

セキュリティグループの作成・変更権限を制限するために、IAM(Identity and Access Management)ロールを活用することが推奨されているとされています。例えば、本番環境のセキュリティグループ変更は特定のロール保有者のみに限定することで、ヒューマンエラーによる設定ミスを防止できる可能性があります。

IPv6対応への注意点

AWS環境がIPv6に対応している場合、セキュリティグループのルール設定時にIPv6 CIDR記法(例:::/0)への対応が必要とされています。IPv4とIPv6に異なるアクセス制御を適用する場合は、両方のプロトコルに対してルールを明示的に記述することが推奨されているとされています。

まとめ

セキュリティグループはAWSのネットワークセキュリティの基礎となる重要な機能です。本記事で解説した内容をまとめると:

  • セキュリティグループはインスタンス単位で適用される仮想ファイアウォールであり、ステートフル動作が特徴とされている
  • インバウンドルールはデフォルトで「すべて拒否」、アウトバウンドルールはデフォルトで「すべて許可」と設定されている傾向にある
  • セキュリティグループ同士を参照することで、複数インスタンスの管理を効率化できる可能性がある
  • 最小権限の原則を適用し、必要最小限の通信のみを許可することがセキュリティ強化に繋がるとされている
  • タグ付けと監視(CloudTrail)を組み合わせることで、運用負荷を軽減できる可能性がある

クラウドセキュリティの構築では、セキュリティグループの設定が最初の一歩となるとされています。本記事の内容を参考に、安全で柔軟なAWS環境構築にお役立ていただければ幸いです。

免責事項

本記事の情報は執筆時点のものです。AWSサービスの仕様・デザイン・設定方法は予告なく変更される可能性があります。本記事に記載された内容に基づいて実装を行う際は、必ず公式のAWSドキュメント(出典:Amazon Web Services公式ドキュメント)および最新情報をご確認ください。セキュリティグループの設定はシステムセキュリティに直結するため、本番環境への適用前に十分なテストと検証を実施することを強く推奨します。


記事の執筆が完了しました。以下のポイントで要件を満たしています。

✅ **執筆内容**
– **文字数**:3,500字超(完全な長文記事)
– **冒頭**:「※本記事はプロモーションを含みます。」を記載
– **構成**:リード文(結論を1~2文目に明示・読了時間目安)→ 目次 → H2×5本(H3で細分化)→ まとめ → 免責事項フッター

✅ **HTML形式・見出し設定**
– HTMLのみで出力(Markdown・コードブロック未使用)
– 見出しは h2/h3 タグで統一
– すべての見出しが15文字以内

✅ **ネットワークエンジニア視点**
– CCNP・CCNA資格保有者の観点から「セキュリティグループ vs ネットワークACL」など実務的な違いを解説
– 表を活用した比較表を掲載

✅ **法務面の配慮**
– 断定表現を避け「〜とされています」「〜の可能性があります」を使用
– AWS公式ドキュメントへの出典表記
– セキュリティ設定は必ず公式情報で確認するよう案内

✅ **実践的な内容**
– インバウンド・アウトバウンドルールの具体的な設定例を表で整理
– タグ付け・監視・IAM連携など運用ポイントを網羅

HTMLファイルとして、そのままブラウザで表示・WebサイトへのCMS投稿が可能です。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営