Amazon EC2インスタンスのセキュリティグループでインバウンド・アウトバウンドルールを設定する方法
AWS EC2インスタンスにおけるインバウンド(受信)およびアウトバウンド(送信)ルールの設定は、セキュリティ確保の観点からも、個人やビジネスの用途に応じた運用を行う上でも非常に重要です。例えば、Amazon EC2インスタンス上でWebアプリケーションを公開する場合、外部からアクセスできるようにHTTPSのインバウンド通信を許可する必要があります。
また、EC2インスタンスがインターネット上のメールサーバーとやり取りする必要がある場合は、IMAP、POP3、SMTPのアウトバウンド通信を許可しなければなりません。
パート1: HTTPSを有効化してインバウンドルールを設定する
まずは、HTTPSプロトコルを有効化してインバウンドルールを設定する方法をご紹介します。HTTPS(Hypertext Transfer Protocol Secure)は、WebブラウザとWebサイト(Webサーバー)間の安全な通信に使用されるプロトコルです。
- AWSマネジメントコンソールにログインします。
- 実行中のインスタンス(Running instances)をクリックします。
- 対象のインスタンスを選択します。
- 説明(Description)タブを開き、ウィンドウ右側にあるセキュリティグループ(Security groups)の項目へ移動します。下のスクリーンショットを参照してください。

セキュリティグループ欄には、主に以下の3つの情報が表示されます。
- launch-wizard-3: セキュリティグループの名前です。EC2インスタンスのインバウンド/アウトバウンドルールを設定するために使用されます。この例では「launch-wizard-3」という名前になっています。
- インバウンドルール(inbound rules): EC2インスタンスへの着信通信を定義するためのルールです。「表示」をクリックすると、既存のインバウンドルールを確認できます。
- アウトバウンドルール(outbound rules): EC2インスタンスからの発信通信を定義するためのルールです。「表示」をクリックすると、既存のアウトバウンドルールを確認できます。
- launch-wizard-3をクリックして、セキュリティルールの設定画面を開きます。
- セキュリティグループ(Security Group)の項目で、対象インスタンスに関連付けられたセキュリティグループID(この例では sg-002fe10b00db3a1e0)をクリックします。

- インバウンドルール(Inbound rules)タブを開き、インバウンドルールを編集(Edit inbound rules)をクリックします。
- インバウンドルールセクションでルールを追加(Add rule)をクリックします。
- 以下のようにルールを設定します。
- タイプ(Type): 一覧から「HTTPS」を選択します。SSH(Linuxインスタンス向け)、RDP(Windowsインスタンス向け)など、よく使われるプロトコルを選ぶこともできますし、カスタムポートやポート範囲を手動で入力することも可能です。設定できるプロトコルは30種類以上あり、DNS、IMAP、SMTPなどを有効化したい場合も、HTTPSと同じ手順で設定できます。

- プロトコル(Protocol): デフォルトではTCPが使用されます。TCPやUDPなどのプロトコルタイプを選択でき、ICMPも選択肢に含まれます。
- ポート範囲(Port range): ルールのタイプとしてHTTPSを選択すると、デフォルトポートとして自動的に443が割り当てられます。カスタムルールの場合は、ポート番号またはポート範囲を手動で入力できます。
- ソース(Source): EC2インスタンスへのアクセスを許可する単一のIPアドレス、またはCIDR表記によるIPアドレス範囲(例: 203.0.113.5/32)を指定します。この例では「Anywhere(任意の場所)」を選択します。これにより、IPv4の0.0.0.0/0とIPv6の::/0が自動的に追加され、あらゆるネットワーク上のホストからEC2インスタンスにアクセスできるようになります。ファイアウォール経由で接続する場合は、クライアントコンピュータが使用するIPアドレス範囲が必要です。また、同じリージョン内の別のセキュリティグループを名前またはIDで指定することもできます。別のAWSアカウントのセキュリティグループを指定する場合(EC2-Classicのみ)は、「111122223333/OtherSecurityGroup」のように、アカウントIDとスラッシュを先頭に付けて指定します。
- 説明(Description)・任意: セキュリティグループルールに関する説明文を入力できます。

- ルールを保存(Save rules)をクリックします。これでインバウンドルールの作成は完了です。EC2インスタンス上でホストしているWebアプリケーションに、外部から正常にアクセスできるようになります。

パート2: IMAP、POP3、SMTPを有効化してアウトバウンドトラフィックを設定する
次に、IMAP、POP3、SMTPプロトコルを有効化してアウトバウンドルールを設定する方法をご紹介します。IMAP(Internet Message Access Protocol)とPOP3(Post Office Protocol 3)はメールを受信するためのプロトコルで、SMTP(Simple Mail Transfer Protocol)はメールを送信するためのプロトコルです。
- セキュリティグループのページを開きます。
- アウトバウンドルール(Outbound rules)タブをクリックします。下のスクリーンショットの通り、EC2インスタンスにはデフォルトで1つのアウトバウンドルールが作成されています。このルールは「All traffic(すべてのトラフィック)」という名前で、EC2インスタンスから外部へのあらゆる送信通信を許可するものです。

- アウトバウンドルールを編集(Edit outbound rules)をクリックし、「All traffic」ルールの削除(Delete)ボタンを押して削除します。

- ルールを追加(Add rule)をクリックして、新しいルールを作成します。
- 以下のようにルールを設定します。
- タイプ(Type): 一覧から「IMAPS」を選択します。
- プロトコル(Protocol): デフォルトではTCPが使用されます。TCPやUDPなどのプロトコルタイプを選択でき、ICMPも選択肢に含まれます。
- ポート範囲(Port range): ルールのタイプとしてIMAPSを選択すると、デフォルトポートとして自動的に993が割り当てられます。
- ソース(Source): アクセスを許可する単一のIPアドレス、またはCIDR表記によるIPアドレス範囲(例: 203.0.113.5/32)を指定します。この例では、特定のパブリックIPアドレスのみアクセスを許可しています。
- 説明(Description)・任意: セキュリティグループルールに関する説明文を入力できます。
続けてルールを追加(Add rule)をクリックし、POP3SとSMTPSについても同様の手順でルールを作成します。

ルールを保存(Save rules)をクリックします。これで3つのアウトバウンドルールの作成は完了です。

最後に、EC2インスタンスにログインし、設定したルールが正しく適用されているかどうかを確認しましょう。
-
Amazon EC2インスタンスから起動テンプレートを作成・活用する方法
起動テンプレート(Launch Template)を作成すると、インスタンスの設定を保存しておき、後から再利用・共有・起動することができます。テンプレートは複数のバージョンを持たせることも可能です。本記事では、既存のAmazon EC2インスタンスからテンプレートを作成する方法を解説します。記事は2部構成となっており、前半ではインスタンスから新しいテンプレートを作成する手順を、後半ではそのテンプレートから新しいインスタンスを起動する手順を紹介します。 パート1: インスタンスからテンプレートを作成する AWSマネジメントコンソールにログインします。 メインメニューの「サービス」をクリックし、
-
Amazon EC2インスタンスにElastic IPアドレスを割り当てる方法
Amazon EC2インスタンスに割り当てられる3種類のIPアドレスAmazon EC2インスタンスには、プライベートIP、パブリックIP、Elastic IPの3種類のIPアドレスを割り当てることができます。それぞれの特徴を理解しておくことが、安定したサーバー運用の第一歩です。プライベートIPアドレスプライベートIPアドレスは、同じVPC内にあるインスタンス同士の内部通信に使用されるアドレスです。AmazonのDHCPによって自動的に割り当てられ、静的なIPアドレスとして機能します。パブリックIPアドレスパブリックIPアドレスは、インターネット経由でアクセス可能な動的なIPアドレスで、Ama