目標
Application Load Balancerのリスナー設定(固定レスポンス、リダイレクト先指定)を理解する。
Application Load Balancerのリスナーとは?
閲覧者毎にページの表示非表示、リダイレクト等を設定できます。
1.閲覧者Aには、ページA、B共に表示する。
2.閲覧者Bには、ページAは表示させない、ページBのみ表示する。
3.閲覧者Cには、ページAは表示させない、ページBを表示させた際はページCにリダイレクトさせる。
リスナーとは、設定したプロトコルとポートを使用して接続リクエストをチェックするプロセスです。リスナーに対して定義したルールにより、ロードバランサーが登録済みターゲットにリクエストをルーティングする方法が決まります。
1.事前準備
1.EC2を作成します。
$ sudo su -
# yum install httpd
# mkdir /var/www/html/admin
# vi /var/www/html/admin/index.html
Admin page
# vi /var/www/html/index.html
All can see
2.ALBを作成します。
3.ALBにEC2を紐付けます。
2.固定レスポンスを返す
許可したIPアドレスでアクセスした際は、admin配下含む全ページを閲覧可能に設定します。
指定していないIPアドレスでアクセスした際は、admin配下のページは閲覧不可能(403エラー)に設定します。
1.[EC2] で、 [ロードバランサー] を選択します。
2.[リスナー] タブで、 [ルールの表示/編集] を選択します。
3. 上部の [+] を選択します。
4. [デフォルトアクション] の上にある、 [ルールの挿入] を選択します。
5. 下記表を参照し、 [IF(すべてに一致)] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
条件の追加 | パス... |
= | /admin/* |
6.下記表を参照し、 [IF(すべてに一致)] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
条件の追加 | 送信元 IP... |
= | PCのIPアドレス/32 |
PCのIPアドレスが分からない方は、「私のIPアドレスは何ですか?」を参照してください。
7.下記表を参照し、 [THEN] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
アクションの追加 | 転送先... |
ターゲットグループ |
本手順1-2 で作成したターゲットグループ |
重み (0~999) | 100 |
8.右上の [保存] を選択します。
9.下記画像の様に設定できていればおkです。
許可したIPアドレスでアクセスした際は、admin配下含む全ページ閲覧可能な設定を追加しました。
10.上部の [+] を選択します。
11.先程作成したルールとデフォルトルールの間にある、 [ルールの挿入] を選択します。
12.下記表を参照し、 [IF(すべてに一致)] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
条件の追加 | パス... |
= | /admin/* |
13.下記表を参照し、 [THEN] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
アクションの追加 | 固定レスポンスを返す... |
レスポンスコード | 403 |
レスポンス本文 | 403 ForbiddenTest |
14.右上の [保存] を選択します。
15.下記画像の様に設定できていれば成功です。
許可していないIPアドレスでアクセスした際は、admin配下のページは閲覧不可能(403エラー)に設定しました。
3.サイト確認
1.下記ページが閲覧可能である事を確認します。
http://ALBのDNS名
http://ALBのDNS名/admin/index.html
2.上部の [鉛筆マーク] を選択します。
3.本手順2-6で設定したIPアドレスを、別のIPアドレスに編集後保存します。
4.下記ページが閲覧可能である事を確認します。
http://ALBのDNS名
5.下記ページが閲覧不可能である事を確認します。
http://ALBのDNS名/admin/index.html
4.リダイレクト先指定
指定したIPアドレス以外は/admin/*にアクセスした際、別サイトにリダイレクトされる様に設定します。
1.上部の [鉛筆マーク] を選択します。
2.上から2番目のルールの [鉛筆マーク] を選択します。
3.[THEN] に設定作成したアクションを [ゴミ箱マーク] で削除します。
4.下記表を参照し、 [THEN] 入力後に [✓] を選択します。
項目 | 値 |
---|---|
アクションの追加 | リダイレクト先... |
HTTPS | 443 |
ホスト | www.google.com |
パス | / |
5.本記事「3.サイト確認」を参照し、リダイレクト先が指定出来ているか確認します。
本手順3-5
で閲覧不可能だったページを開くとgoogle.comにリダイレクトされたら成功です。
参考記事