このトピックでは、ApsaraDB RDS for MySQL インスタンスの IP アドレスホワイトリストを設定する方法について説明します。RDS インスタンスの作成後、RDS インスタンスの IP アドレスホワイトリストを設定する必要があります。デバイスは、デバイスの IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加した後にのみ、RDS インスタンスにアクセスできます。
前提条件
RDS インスタンスが作成されていること。詳細については、「ApsaraDB RDS for MySQL インスタンスの作成
手順
デフォルトでは、RDS インスタンスにシステムホワイトリストが設定されています。システムホワイトリストは非表示で、システムアカウントが RDS インスタンスのデータベースで O&M 操作を実行するために使用されます。システムアカウントの詳細については、「システムアカウント」をご参照ください。
[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。
左側のナビゲーションウィンドウで、[ホワイトリストとセキュリティグループ] をクリックします。
RDS インスタンスのネットワーク分離モードを表示します。
説明RDS インスタンスで MySQL 5.5、5.6、または 5.7 を実行し、プレミアムローカル SSD を使用している場合は、RDS インスタンスのネットワーク分離モードを高セキュリティホワイトリストモードに変更できます。他のデータベースエンジンのバージョンを実行している RDS インスタンス、または他のストレージタイプを使用している RDS インスタンスの場合、ネットワーク分離モードは標準ホワイトリストモードに設定されます。
変更デフォルト の右側にある をクリックします。次のいずれかの方法を使用して、RDS インスタンスの IP アドレスホワイトリストを設定できます。
説明グループを追加する をクリックして、ホワイトリスト名を指定することもできます。
方法 1:アプリケーションがデプロイされているサーバーの IP アドレスを [IP アドレス] フィールドに追加します。サーバーの IP アドレスを取得する方法の詳細については、「付録:IP アドレスを取得する方法」をご参照ください。[ローカルのパブリック IP アドレスを読み込む(PC にネットワークプロキシがある場合は、最初にオフにしてください)] をクリックして、ローカルコンピュータのパブリック IP アドレスを追加することもできます。
説明複数の IP アドレスと CIDR ブロックを IP アドレスホワイトリストに追加する場合は、これらの IP アドレスまたは CIDR ブロックをカンマ(,)で区切る必要があります。カンマの前後にスペースを追加しないでください。
RDS インスタンスごとに合計で最大 1,000 個の IP アドレスと CIDR ブロックを追加できます。多数の IP アドレスを追加する場合は、IP アドレスを CIDR ブロック(例:10.10.10.0/24)にマージすることをお勧めします。
RDS インスタンスが 高セキュリティホワイトリストモード で実行されている場合は、RDS インスタンスの IP アドレスホワイトリストを設定する際に、次の考慮事項に注意する必要があります:
パブリック IP アドレス またはクラシックネットワークを使用する Elastic Compute Service(ECS)インスタンスのプライベート IP アドレスを、クラシックネットワークタイプ の IP アドレスホワイトリストに追加します。
VPC タイプの ECS インスタンスのプライベート IP アドレスを、VPC ネットワークタイプ の IP アドレスホワイトリストに追加します。
方法 2:[ECS インスタンスの内部 IP アドレスを追加] をクリックして、リージョン内の Alibaba Cloud アカウントで作成されたすべての ECS インスタンスの IP アドレスを読み込みます。次に、IP アドレスを選択して、IP アドレスホワイトリストに追加します。
アプリケーションがデプロイされているサーバーは、サーバーの IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加した後にのみ、RDS インスタンスにアクセスできます。
[OK] をクリックします。
次の手順
関連情報
API 操作を呼び出して RDS インスタンスの IP アドレスホワイトリストを変更する方法の詳細については、「ModifySecurityIps」をご参照ください。
API 操作を呼び出して RDS インスタンスの IP アドレスホワイトリストをクエリする方法の詳細については、「DescribeDBInstanceIPArrayList」をご参照ください。
別のデータベースエンジンを実行している RDS インスタンスの IP アドレスホワイトリストを設定する方法の詳細については、次のトピックをご参照ください。
FAQ
デバイスが RDS インスタンスにアクセスできますが、デバイスの IP アドレスが RDS インスタンスの IP アドレスホワイトリストに追加されていません。なぜですか?
次のいずれかの方法を使用して、問題のトラブルシューティングを行うことができます。
RDS インスタンスのすべての IP アドレスホワイトリストを確認します。IP アドレスホワイトリストのいずれかに 0.0.0.0/0 エントリが含まれている場合、このエントリはすべての IP アドレスからのアクセスを許可するため、RDS インスタンスは危険にさらされます。 0.0.0.0/0 エントリを削除し、信頼できる IP アドレスのみを IP アドレスホワイトリストに追加することをお勧めします。
すべてのセキュリティグループを確認します。セキュリティグループのいずれかにデバイスの IP アドレスが含まれている場合、デバイスは RDS インスタンスにアクセスできます。
パブリックエンドポイントのないオンプレミスホストを RDS インスタンスに接続したい場合はどうすればよいですか?
内部ネットワーク経由でオンプレミスホストを RDS インスタンスに接続できます。詳細については、「データセンターを VPC に接続する」をご参照ください。
デバイスの IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加したオペレーターを表示するにはどうすればよいですか?
インスタンスの詳細ページの左側のナビゲーションウィンドウで、[操作監査] をクリックします。表示されるページで、ModifySecurityIps という名前の イベント を見つけ、IP アドレスを追加したオペレーターと操作の詳細を表示します。
アプリケーションに固定 IP アドレスが割り当てられていない場合、アプリケーションの IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加するにはどうすればよいですか?
アプリケーションに固定 IP アドレスが割り当てられておらず、RDS インスタンスの IP アドレスホワイトリストに
0.0.0.0/0
を追加できない場合は、IP アドレスホワイトリストの代わりに身元認証を使用してアクセスコントロールを実装することをお勧めします。0.0.0.0/0
エントリは、すべての IP アドレスからのアクセスリクエストが許可されることを示します。データセキュリティを確保するために、このエントリを追加しないことをお勧めします。たとえば、次のいずれかの方法を使用して身元認証を完了できます。動的ドメインネームシステム(DNS)解決を使用する:動的 DNS 解決を使用して、動的 IP アドレスがマッピングされているドメイン名を取得し、ドメイン名またはドメイン名から解決された IP アドレスを RDS インスタンスの IP アドレスホワイトリストに追加できます。
リバースプロキシまたはロードバランサーを設定する:すべてのユーザーリクエストは、リバースプロキシまたはロードバランサーを使用して RDS インスタンスに転送されます。プロキシサーバーの固定 IP アドレスのみが RDS インスタンスの IP アドレスホワイトリストに追加されます。
IP アドレスホワイトリストを定期的に更新する:IP アドレスが特定の範囲内で変化する場合(たとえば、ホームブロードバンドの ISP によって割り当てられた IP アドレス)、IP アドレスを定期的に取得し、RDS インスタンスの IP アドレスホワイトリストに追加できます。
付録:アプリケーションが内部ネットワーク経由で RDS インスタンスに接続できるかどうかを確認する
アプリケーションがデプロイされている ECS インスタンスのリージョンとネットワークタイプを表示します。詳細については、「ApsaraDB RDS の使用準備をする」をご参照ください。
RDS インスタンスのリージョンとネットワークタイプを表示します。
ApsaraDB RDS コンソールにログインし、[インスタンス] ページに移動します。上部のナビゲーションバーで、RDS インスタンスが存在するリージョンを選択します。次に、RDS インスタンスを見つけて、インスタンスの ID をクリックします。表示されるページで、RDS インスタンスのリージョン、ネットワークタイプ、および VPC ID を表示できます。
ECS インスタンスと RDS インスタンスが、内部ネットワーク経由の通信の次の条件を満たしているかどうかを確認します。
ECS インスタンスと RDS インスタンスが同じリージョンに存在する。
ECS インスタンスと RDS インスタンスが同じタイプのネットワークに存在する。ECS インスタンスと RDS インスタンスの両方が VPC に存在する場合は、これらのインスタンスが同じ VPC に存在する。
説明上記の条件のいずれかが満たされていない場合、ECS インスタンスは内部ネットワーク経由で RDS インスタンスと通信できません。
付録:IP アドレスを取得する方法
表 1. IP アドレスを取得する
接続シナリオ | 取得する IP アドレス | IP アドレスを取得する方法 |
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしています。 | ECS インスタンスのプライベート IP アドレス | ECS コンソールにログインし、[インスタンス] ページに移動します。上部のナビゲーションバーで、ECS インスタンスが存在するリージョンを選択します。次に、ECS インスタンスのパブリック IP アドレスとプライベート IP アドレスを表示します。 |
ECS インスタンスから RDS インスタンスに接続します。ECS インスタンスと RDS インスタンスは、内部ネットワーク経由の通信の条件を満たしていません。 | ECS インスタンスのパブリック IP アドレス | |
オンプレミスデバイスから RDS インスタンスに接続します。 | オンプレミスデバイスのパブリック IP アドレス |
説明 この方法で取得した IP アドレスは、RDS インスタンスのアップグレード後または構成変更後に異なる場合があります。オンプレミスデバイスの IP アドレスを RDS インスタンスのホワイトリストに追加した後に RDS インスタンスにアクセスできない場合は、「ローカルサーバーからインターネット経由で ApsaraDB for MySQL インスタンスまたは ApsaraDB for MariaDB インスタンスに接続できないのはなぜですか?」をご参照ください。 |
付録:システムホワイトリスト
データ管理(DMS)、データ伝送サービス(DTS)、およびデータベース自律サービス(DAS)を使用して RDS for MySQL インスタンスにアクセスする場合、システムは RDS インスタンスに次のホワイトリストを自動的に追加して、DMS、DTS、および DAS からのアクセスを許可します。
ホワイトリスト名 | 構成 |
dms | ホワイトリストにより、DMS は RDS インスタンスにログインできます。 |
dts | ホワイトリストにより、DTS は RDS インスタンスからデータを読み取ったり、RDS インスタンスにデータを書き込んだりできます。 |
hdm_security_ips | ホワイトリストにより、DAS は RDS インスタンスのデータを取得し、データベースを最適化および保守し、インスタンスでセキュリティ関連の操作を実行できます。 重要 2020 年 12 月以降に RDS インスタンスが作成された場合、hdm_security_ips というラベルが付いた IP アドレスホワイトリストはユーザーには表示されません。これにより、IP アドレスホワイトリストが誤って変更または削除されるのを防ぎます。IP アドレスホワイトリストが変更または削除されると、関連サービスは RDS インスタンスにアクセスできません。 |