Lightsail のファイアウォールでインスタンストラフィックを制御する - Amazon Lightsail

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Lightsail のファイアウォールでインスタンストラフィックを制御する

Amazon Lightsail コンソールのファイアウォールは、パブリック IP アドレスを介してインスタンスに接続できるトラフィックを制御する仮想ファイアウォールとして機能します。Lightsail で作成する各インスタンスには、2 つのファイアウォールがあります。1 つはIPv4アドレス用、もう 1 つはIPv6アドレス用です。各ファイアウォールには、インスタンスに着信するトラフィックをフィルタリングする一連のルールが含まれています。両方のファイアウォールは互いに独立しています。 IPv4と に対してファイアウォールルールを個別に設定する必要がありますIPv6。インスタンスのファイアウォールは、トラフィックを許可または制限するルールを追加および削除することで、いつでも編集できます。

Lightsail ファイアウォール

各 Lightsail インスタンスには 2 つのファイアウォールがあります。1 つはIPv4アドレス用、もう 1 つはIPv6アドレス用です。Lightsail インスタンスに出入りするすべてのインターネットトラフィックは、ファイアウォールを通過します。インスタンスのファイアウォールは、インスタンスへの流入を許可されたインターネットトラフィックを制御します。ただし、送信トラフィックは制御しません。 ファイアウォールは、すべてのアウトバウンドトラフィックを許可します。インスタンスのファイアウォールは、受信ラフィックを許可または制限するルールを追加および削除することで、いつでも編集できます。両方のファイアウォールは互いに独立していることに注意してください。ファイアウォールルールは IPv4と に対して個別に設定する必要がありますIPv6。

ファイアウォールルールは常にアクセスを許可します。アクセスを拒否するルールを作成することはできません。インスタンスへの着信トラフィックを許可するルールをインスタンスのファイアウォールに追加します。インスタンスのファイアウォールにルールを追加するときは、次の例 ( の場合) に示すように、使用するプロトコル、開くポート、インスタンスへの接続が許可されている IPv4および IPv6 アドレスを指定しますIPv4。アプリケーションレイヤーのプロトコルタイプも指定できます。これは、インスタンスで使用するサービスに応じて、プロトコルとポート範囲を自動的に指定するプリセットです。

IPv4 Lightsail コンソールの ファイアウォール
重要

ファイアウォールルールが影響するのは、インスタンスのパブリック IP アドレス経由で受信されるトラフィックのみです。インスタンスのプライベート IP アドレスを介して流れるトラフィックには影響しません。このトラフィックは、同じ のアカウント内の Lightsail リソース AWS リージョン、または同じ のピアリングされた仮想プライベートクラウド (VPC) 内のリソースから発信される可能性があります AWS リージョン。

ファイアウォールルールおよび設定可能なパラメータについては、このガイドの以降のセクションで説明します。

ファイアウォールルールを作成する

ファイアウォールルールを作成して、クライアントがインスタンスまたはインスタンスで実行されているアプリケーションとの接続を確立できるようにします。例えば、すべてのウェブブラウザがインスタンス上の WordPress アプリケーションに接続できるようにするには、任意の IP アドレスからポート 80 経由で Transmission Control Protocol (TCP) を有効にするファイアウォールルールを設定します。このルールがインスタンスのファイアウォールで既に設定されている場合は、ルールを削除して、ウェブブラウザがインスタンス上の WordPress アプリケーションに接続できないようにすることができます。

重要

Lightsail コンソールを使用して、一度に最大 30 個の送信元 IP アドレスを追加できます。一度に最大 60 個の IP アドレスを追加するには、Lightsail 、 AWS Command Line Interface (AWS CLI)API、または AWS を使用しますSDK。このクォータは、IPv4ルールとIPv6ルールに対して個別に適用されます。例えば、ファイアウォールには、IPv4トラフィック用に 60 個のインバウンドルールとIPv6、トラフィック用に 60 個のインバウンドルールを設定できます。個々の IP アドレスをCIDR範囲に統合することをお勧めします。詳細については、このガイドの「送信元 IP アドレスの指定」セクションを参照してください。

また、接続を確立する必要があるコンピュータの IP アドレスからのみポート 22 TCP経由で を有効にするファイアウォールルールを設定することで、SSHクライアントがインスタンスに接続し、サーバーで管理タスクを実行できるようにすることもできます。この場合、SSHインスタンスへの接続を確立する IP アドレスを許可したくないとします。許可すると、インスタンスのセキュリティリスクにつながる可能性があるためです。

注記

このセクションで説明するファイアウォールルールの例は、インスタンスのファイアウォールにデフォルトで設定済みである場合があります。詳細については、このガイドの後半の「デフォルトのファイアウォールルール」を参照してください。

特定のポートに複数のルールがある場合、最も許容度の大きいルールを適用します。例えば、IP アドレス 192.0.2.1 からTCPポート 22 (SSH) へのアクセスを許可するルールを追加するとします。次に、すべてのユーザーからTCPポート 22 へのアクセスを許可する別のルールを追加します。その結果、すべてのユーザーがTCPポート 22 にアクセスできます。

プロトコルを指定する

プロトコルは 2 台のコンピューター間でデータを送信する形式です。Lightsail では、ファイアウォールルールで次のプロトコルを指定できます。

  • Transmission Control Protocol (TCP) は、主に、データ交換が完了するまで、クライアントとインスタンスで実行されているアプリケーション間の接続を確立および維持するために使用します。これは広く使用されており、ファイアウォールルールで指定することが多いプロトコルです。TCP は、送信されたデータが欠落していないこと、および送信されたすべてのデータが目的の受信者に送信されることを保証します。ウェブブラウジング、金融取引、テキストメッセージングなど、高い信頼性が要求されるが、転送時間の重要度が低いネットワークアプリケーションに最適です。これらのユースケースでは、データの一部が失われると、重大な価値の損失となります。

  • User Datagram Protocol (UDP) は、主に、クライアントとインスタンスで実行されているアプリケーション間の低レイテンシーおよび損失許容接続を確立するために使用されます。ゲーム、音声、ビデオ通信など、体感レイテンシーの重要度が高いネットワークアプリケーションに最適です。これらのユースケースでは、多少のデータ損失が生じる場合がありますが、体感品質を損なうほどではありません。

  • Internet Control Message Protocol (ICMP) は、主に、データが意図した宛先にタイムリーに到達しているかどうかを判断するなど、ネットワーク通信の問題を診断するために使用されます。このプロトコルは Ping ユーティリティに最適です。このユーティリティでは、ローカルコンピュータとインスタンス間の接続速度をテストできます。データがインスタンスに到着してローカルコンピュータに戻ってくるまでの所要時間をレポートします。

    注記

    Lightsail コンソールを使用してインスタンスのIPv6ファイアウォールにICMPルールを追加すると、ルールは を使用するように自動的に設定されますICMPv6。詳細については、Wikipedia「Internet Control Message Protocol for IPv6 」を参照してください。

  • すべてでは、インスタンスへのすべてのプロトコルトラフィックの流入を許可します。どのプロトコルを指定すればよいかわからない場合は、このプロトコルを指定します。これには、上に示したプロトコルだけでなく、すべてのインターネットプロトコルが含まれます。詳細については、「Protocol Numbers」(Internet Assigned Numbers Authority ウェブサイト) を参照してください。

ポートの指定

コンピュータがキーボードやマウスなどの周辺機器と通信するためのコンピュータの物理ポートと同様に、ネットワークポートはインスタンスのインターネット通信エンドポイントとして機能します。コンピュータは、インスタンスと接続するときに、通信を確立するためのポートを公開します。

ファイアウォールルールで指定できるポートの範囲は 0~65535 です。インスタンスへの接続をクライアントに許可するファイアウォールを作成する場合、使用するプロトコル (このガイドの前半で説明) と、接続の確立に使用できるポート番号を指定します。プロトコルとポートを使用して接続を確立できる IP アドレスを指定することもできます。これについては、このガイドの次のセクションで説明します。

よく使用されるポートと、これらのポートを使用するサービスは以下のとおりです。

  • File Transfer Protocol (FTP) を介したデータ転送では、ポート 20 が使用されます。

  • に対するコマンドコントロールはポート 21 FTPを使用します。

  • Secure Shell (SSH) はポート 22 を使用します。

  • Telnet リモートログインサービス、および暗号化されていないテキストメッセージでは、ポート 23 を使用します。

  • Simple Mail Transfer Protocol (SMTP) の E メールルーティングでは、ポート 25 を使用します。

    重要

    インスタンスSMTPで を有効にするには、インスタンスDNSのリバースも設定する必要があります。そうしないと、E メールがTCPポート 25 で制限される場合があります。詳細については、「Amazon Lightsail インスタンスの DNS E メールサーバーのリバースの設定 Amazon Lightsail」を参照してください。

  • ドメインネームシステム (DNS) サービスはポート 53 を使用します。

  • ウェブブラウザがウェブサイトに接続するために使用するハイパーテキスト転送プロトコル (HTTP) は、ポート 80 を使用します。

  • E メールクライアントがサーバーから E メールを取得するために使用する Post Office Protocol (POP3) は、ポート 110 を使用します。

  • Network News Transfer Protocol (NNTP) はポート 119 を使用します。

  • Network Time Protocol (NTP) はポート 123 を使用します。

  • デジタルメールの管理に使用されるインターネットメッセージアクセスプロトコル (IMAP) は、ポート 143 を使用します。

  • Simple Network Management Protocol (SNMP) はポート 161 を使用します。

  • HTTP ウェブサイトへの暗号化された接続を確立するためにウェブブラウザで TLS/SSL HTTPを介して (HTTPS) を保護するには、ポート 443 を使用します。

詳細については、「Service Name and Transport Protocol Port Number Registry」(Internet Assigned Numbers Authority ウェブサイト) を参照してください。

アプリケーションレイヤーのプロトコルタイプを指定する

ファイアウォールルールの作成時に、アプリケーションレイヤーのプロトコルタイプを指定できます。プロトコルタイプは、インスタンスで有効にしたサービスに応じてルールのプロトコルとポート範囲を指定するプリセットです。これにより、、、 などのサービスに使用する一般的なプロトコルSSHRDPHTTPとポートを検索する必要はありません。これらのアプリケーションレイヤーのプロトコルタイプを選択するだけで、プロトコルとポートが自動的に指定されます。独自のプロトコルとポートを指定する場合は、アプリケーションレイヤーのプロトコルタイプとして [カスタムルール] を選択できます。これにより、該当するパラメータを制御できます。

注記

アプリケーションレイヤープロトコルタイプは、Lightsail コンソールを使用してのみ指定できます。Lightsail 、 AWS Command Line Interface (AWS CLI)API、または を使用してアプリケーションレイヤープロトコルタイプを指定することはできませんSDKs。

Lightsail コンソールでは、次のアプリケーションレイヤープロトコルタイプを使用できます。

  • カスタム - 独自のプロトコルとポートを指定する場合は、このオプションを選択します。

  • すべてのプロトコル – すべてのプロトコルを指定して、独自のポートを指定する場合は、このオプションを選択します。

  • すべて TCP — TCPプロトコルを使用するにはこのオプションを選択しますが、開くポートがわかりません。これにより、すべてのポート (0~65535) TCPで が有効になります。

  • すべて UDP — UDPプロトコルを使用するにはこのオプションを選択しますが、開くポートがわかりません。これにより、すべてのポート (0~65535) UDPで が有効になります。

  • すべて ICMP — すべてのICMPタイプとコードを指定するには、このオプションを選択します。

  • カスタム ICMP – ICMPプロトコルを使用し、ICMPタイプとコードを定義するには、このオプションを選択します。ICMP タイプとコードの詳細については、Wikipedia「コントロールメッセージ」を参照してください。

  • DNS – インスタンスDNSで を有効にする場合は、このオプションを選択します。これにより、ポート 53 UDP経由で TCPと が有効になります。

  • HTTP — ウェブブラウザがインスタンスでホストされているウェブサイトに接続できるようにする場合は、このオプションを選択します。これにより、ポート 80 TCP以上が有効になります。

  • HTTPS – ウェブブラウザを有効にして、インスタンスでホストされているウェブサイトへの暗号化された接続を確立する場合は、このオプションを選択します。これにより、ポート 443 TCP経由で が有効になります。

  • My SQL/Aurora – クライアントがインスタンスでホストされている MySQL または Aurora データベースに接続できるようにするには、このオプションを選択します。これにより、ポート 3306 TCP経由で が有効になります。

  • Oracle RDS- クライアントがインスタンスでホストされている Oracle またはRDSデータベースに接続できるようにするには、このオプションを選択します。これにより、ポート 1521 TCP経由で が有効になります。

  • Ping (ICMP) – インスタンスが Ping ユーティリティを使用してリクエストに応答できるようにするには、このオプションを選択します。IPv4 ファイアウォールでは、ICMPタイプ 8 (エコー) とコード -1 (すべてのコード) を有効にします。IPv6 ファイアウォールでは、ICMPタイプ 129 (エコーリプライ) とコード 0 が有効になります。

  • RDP – RDPクライアントがインスタンスに接続できるようにするには、このオプションを選択します。これにより、ポート 3389 TCP経由で が有効になります。

  • SSH – SSHクライアントがインスタンスに接続できるようにするには、このオプションを選択します。これにより、ポート 22 TCP経由で が有効になります。

送信元 IP アドレスを指定する

ファイアウォールルールは、デフォルトですべての IP アドレスに対して、指定したプロトコルとポートを介してインスタンスに接続することを許可します。これは、 HTTPおよび 経由のウェブブラウザなどのトラフィックに最適ですHTTPS。ただし、すべての IP アドレスがそれらのアプリケーションを使用してインスタンスに接続できるようにしたくないためRDP、 SSHや などのトラフィックにはセキュリティ上のリスクがあります。そのため、ファイアウォールルールを IPv4または IPv6 アドレス、または IP アドレスの範囲に制限することを選択できます。

  • IPv4 ファイアウォールの場合 - 1 つのIPv4アドレス (203.0.113.1 など) またはIPv4アドレスの範囲を指定できます。Lightsail コンソールでは、ダッシュ (192.0.2.0~192.0.2.255 など) またはCIDRブロック表記 (192.0.2.0/24 など) を使用して範囲を指定できます。CIDR ブロック表記の詳細については、Wikipedia「Classless Inter-Domain Routing」を参照してください。

  • IPv6 ファイアウォールの場合 - 1 つのIPv6アドレス (2001:0db8:85a3:0000:0000:8a2e:0370:7334 など) またはIPv6アドレスの範囲を指定できます。Lightsail コンソールでは、IPv6範囲はCIDRブロック表記 (2001:db8::/32 など) を使用して指定できます。IPv6 CIDR ブロック表記の詳細については、Wikipedia の「 IPv6CIDRブロック」を参照してください。

デフォルトの Lightsail ファイアウォールルール

新しいインスタンスを作成すると、その IPv4および IPv6ファイアウォールには、インスタンスへの基本的なアクセスを許可する次の一連のデフォルトルールが事前設定されます。デフォルトのルールは、作成するインスタンスのタイプに応じて異なります。これらのルールは、アプリケーション、プロトコル、ポート、および送信元 IP アドレスのリスト (アプリケーション - プロトコル - ポート - 送信元 IP アドレスなど) として示してあります。

AlmaLinux、Amazon Linux 2、Amazon Linux 2023、CentOS 、Debian、Free BSD、open SUSE、Ubuntu (ベースオペレーティングシステム)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

WordPress、Ghost、Joomla! PrestaShop、Drupal (CMS アプリケーション)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

cPanel & WHM (CMS アプリケーション)

SSH - TCP - 22 - すべての IP アドレス

DNS (UDP) - UDP - 53 - すべての IP アドレス

DNS (TCP) - TCP - 53 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

カスタム TCP - - 2078 - すべての IP アドレス

カスタム - TCP - 2083 - すべての IP アドレス

カスタム TCP - - 2087 - すべての IP アドレス

カスタム TCP - - 2089 - すべての IP アドレス

LAMP、Django、Node.js、MEAN GitLab、Nginx (開発スタック)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

Magento (eCommerce アプリケーション)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

Redmine (プロジェクト管理アプリケーション)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

Plesk (ホスティングスタック)

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

HTTPS - TCP - 443 - すべての IP アドレス

カスタム - TCP - 53 - すべての IP アドレス

カスタム UDP - - 53 - すべての IP アドレス

カスタム TCP - - 8443 - すべての IP アドレス

カスタム TCP - - 8447 - すべての IP アドレス

Windows Server 2022、Windows Server 2019、および Windows Server 2016

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

RDP - TCP - 3389 - すべての IP アドレス

SQL Server Express 2022、SQLServer Express 2019、および SQL Server Express 2016

SSH - TCP - 22 - すべての IP アドレス

HTTP - TCP - 80 - すべての IP アドレス

RDP - TCP - 3389 - すべての IP アドレス