IP ブラックリストおよびホワイトリスト機能は、クラウドネイティブゲートウェイが提供するセキュリティ保護機能です。ブラックリストを設定して特定の IP アドレスからのアクセスを拒否したり、ホワイトリストを設定して特定の IP アドレスからのアクセスのみを許可したりできます。クラウドネイティブゲートウェイでは、グローバル、ドメイン名、またはルートレベルで IP アドレスのブラックリストまたはホワイトリストを設定できます。これにより、詳細なアクセスの制御を実装できます。このトピックでは、クラウドネイティブゲートウェイの IP アドレスブラックリストまたはホワイトリストを設定する方法について説明します。
IP ブラックリストまたはホワイトリストの設定
MSE コンソールにログインします。
左側のナビゲーションウィンドウで、Cloud-Native Gateway > ゲートウェイリスト を選択します。上部のナビゲーションバーで、リージョンを選択します。
ゲートウェイリスト ページで、対象ゲートウェイの ID をクリックします。
左側のナビゲーションウィンドウで、Security Management > Black/White List を選択します。
ページの左上隅にある Create をクリックします。Create ページでパラメーターを設定し、Save をクリックします。
設定項目
説明
Name
IP アドレスベースのアクセスの制御のカスタム名です。
Description
IP アドレスベースのアクセスの制御の説明です。
Type
必要に応じて IP アドレスベースのアクセスの制御のタイプを選択します。
Whitelist (Allow Access from Specific IP Addresses): ゲートウェイシナリオでは、信頼できるソース IP のみがゲートウェイにアクセスすることを許可されます。
Blacklist (Deny Access from Specific IP Addresses): ゲートウェイシナリオでは、悪意のあるアクセスリクエストを開始するソース IP はブロックされます。
Effective Granularity
IP アドレスベースのアクセスの制御の範囲です。
Gateway: ゲートウェイインスタンスで有効になります。
Domain Name: 特定のドメイン名で有効になります。
Routes: 特定のルートで有効になります。
説明範囲の優先度は、高いものから順に Routes > Domain Name > Gateway となります。
IP Address/CIDR Block
アクセスの制御のソース IP アドレスまたは CIDR ブロックを入力します。
設定例
ステップ 1: モックルートの作成
ステップ 2: モックルートのテスト
次のコマンドを実行してモックルートにアクセスします。
curl 47.100.xx.xx/mock次の結果が返されます。HTTP ステータスコードは、リクエストが成功したことを示します。
{
"code": 200,
"data": {
"message": "ok"
},
"HttpStatusCode": 200,
"successResponse": 200
}ステップ 3: IP アドレスブラックリストの設定
オンプレミスマシンの IP アドレスを取得します。
MSE コンソールにログインします。オンプレミスマシンの IP アドレスを追加し、お使いのマシンから MSE クラウドネイティブゲートウェイへのアクセスを拒否するルールを設定します。この例では、IP アドレスブラックリストの設定方法を示します。
詳細については、このトピックの「IP ブラックリストまたはホワイトリストの設定」をご参照ください。
次のコマンドを実行してテストを実行します。
curl -v 47.100.xx.xx/mock次の応答が返されます。
* Trying 47.100.xx.xx... * TCP_NODELAY set * Connected to 47.100.xx.128 (47.100.xx.xx) port 80 (#0) > GET /mock HTTP/1.1 > Host: 47.100.xx.xx > User-Agent: curl/7.64.1 > Accept: */* > < HTTP/1.1 403 Forbidden < content-length: 19 < content-type: text/plain < date: Thu, 25 Aug 2022 09:43:43 GMT < server: istio-envoy < * Connection #0 to host 47.100.xx.xx left intact RBAC: access denied* Closing connection 0