Oracle Cloud: DNS + WAF + CDN CloudFrontでコンテンツを配信してみた


Oracle Cloud Object StorageをOriginとして、Amazon CloudFrontを使用してコンテンツ配信してみてみます。
ということで、コンテンツ配置したObject StorageをORIGINとしてAmazon CloudFrontをCDNとしてコンテンツをキャッシュします。
そして、SSLサーバ証明書を取得し WAFを配置してHTTPSアクセスできるようにしてみてみます。




#■ 構成
![NW構成.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0f7b182e-28ff-d0ef-3117-c6d1336383b7.png)



##● 利用コンポーネント一覧
|種類　|	利用サービス	|
|---|---|
|CDN		|	Amazon CloudFront	|
|Storage	|	OCI Object Storage	|
|DNS		|	Oracle DNS	|
|WAF		|	OCI Web Application Firewall (WAF)	|
|SSL認証局 (certificate authority; CA)	| ZeloSSL	|
|ドメイン・プロバイダ	|	Freenom	|








#■ Object Storage作成とコンテンツ配置

##● Buket作成

1) OCIコンソール画面
[Object Storage]をクリック
![00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7ad6d8e2-878d-afd3-9b99-169da810d760.png)





2) Object Storage画面
[Create Bucket]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/662ad9b3-303a-eabc-fcba-99643f1ebcc7.png)



3) Create Bucket画面
以下内容を設定し[Create]をクリック

	・Bucket Name: 任意の名前
	・Default Storage Tier: Standard

![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/12a5e5d8-eb59-01aa-a8ca-41f07a1d9980.png)



##● コンテンツUpload
作成したBuketへコンテンツUpload

1) Backet画面
コンテンツUploadするBuketをクリック
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e97b155d-b718-d5c9-140f-956dad48e236.png)


２) 作成したBacket画面
[Upload]をクリック
![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/88b46c7d-7c3c-8e2d-51fd-a657de0ad385.png)


3) Upload Objects画面
JPGなどのコンテンツを選択してUpload
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/89be5535-adcf-9d58-3558-946201f9a0be.png)


##● コンテンツURI確認
1) Object画面
UploadしたObjectの右端にあるボタンを選択し、[View Object Detail]をクリック
https://objectstorage.ap-tokyo-1.oraclecloud.com/n/b/CDN/o/index.html
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6a100328-eb09-2651-9cbc-b9e82af59618.png)


2) Object Details画面
URL Path (URI)を確認
ここでは、以下となります
![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7b2e5db2-6925-ab84-8887-b7fb971baa34.png)


##● コンテンツ公開
1) Backet画面
[Edit Visibility]をクリック
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/2803b201-d2d3-d4dc-e3e4-7f6b45ac8bf2.png)


2) Edit Visibility画面
Visibilityを Public へ設定し[Save Changes]をクリック
![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4ad586a8-6885-ef7b-5325-a042e3ede95a.png)

3) Publicステータス確認
Bucket Information にある Visibilityが PublicになればOK
![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e67f34ae-d03f-a757-c2fb-183021417968.png)





#■ Amazon CloudFront作成
##● Amazon CloudFront作成
1) AWSコンソール画面
Networking & Content Deliveryにある[Amazon CloudFront]を選択
![00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/f133b04f-bb40-deb1-45db-7eccbea2d75a.png)


2) Amazon CloudFront画面
[Create Distribution]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/df99a4c4-1bde-8dc8-bd7a-b1a66f98c058.png)



3) Select a delivery method for your content.画面
[Get Started]をクリック
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/cbdb7291-0b06-eaab-12ce-0363aea5f3af.png)


4) Create Distribution画面
以下設定し、[Create Distribution]をクリック


	・Origin Domain Name: 任意の名前
	・Origin Path: コンテンツBacketのURI,ここではobjectstorage.ap-tokyo-1.oraclecloud.com/n/b/CDN/o
	・Origin ID: 任意の名前
	・Default Root Object: index.html

![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/204bb747-ca7b-93b7-f951-ab1c46f21e32.png)
![03_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/adbd4aea-c30b-1d70-cf33-42f4f402153e.png)



5) 作成中
Statusが In Progress からDeployedになれば作成完了
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6b549e08-029a-798f-ff33-b1637ce1b4cd.png)



6) 設定確認
CloudFront経由のURIになるDomain Nameを確認
ここでは、d12elghs3m7xr.cloudfront.net になります。
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/a4bf6938-7e8c-39b9-5402-9cad73bdf7b8.png)




##● 動作確認
1) index.html作成
以下参考に、img src項目へ、Object StorageのコンテンツURIを設定し、index.htmlファイル作成

 ・参考: [ディストリビューションのテスト](https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/distribution-web-testing.html)


```shell
[opc@inst01 ~]$ cat index.html
	<html>
	<head>My CloudFront Test</head>
	<body>
	<p>My text content goes here.</p>
	<p><img src="https://objectstorage.ap-tokyo-1.oraclecloud.com/n/b/CDN/o/test01.jpg" alt="my test image" width="200" height="200"
	</body>
	</html>
```


2) Object StorageへUpload
index.htmlを作成したBacketへUpload
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/583779c8-5b42-7ffc-f851-e482e00bd04f.png)


3) CloudFront動作確認
CloudFrontで作成された、Domain NameのURIをブラウザでアクセスしてindex.htmlが表示されることを確認

URI: https://d12elghs3m7xr.cloudfront.net
![11_test.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c90040bb-1108-c790-7d0f-473bca980108.png)







#■ ドメイン取得
CloudFrontで作成された、Domain NameのURIを、自分のドメインで表示できるように、ドメインを取得します
ここでは、[Freenom](https://www.freenom.com/en/index.html)で取得します
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/945ed6fa-b831-8457-2fc0-e87354ec70ad.png)




#■ DNS設定
取得したドメインでWebアクセスできるようにDNSへCNAME登録します

1) OCIコンソール画面
[Networking] > [DNS Management]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7713f2e2-93f0-6bd4-df09-d7fd6b8ded2a.png)


2) DNS Management
[Zones]をクリック
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/d7c104af-8297-fb2b-d1a9-6d566777588c.png)


3) Zones画面
Public Zonesを選択し、[Create Zones]をクリック
![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/da82fab1-b16b-158c-72fe-03c87f55ac1d.png)



4) Create Public Zones画面
以下設定し、[Create Distribution]をクリック

	・ZONE NAME: 取得した個人ドメイン 

![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6eed65ca-e99b-e027-46c7-aa142f6d9d73.png)


5) 作成完了
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/5341b2a5-1d35-3ac8-478e-c8512795fa8f.png)





##● Record追加
CloudFrontで生成されたURI (d12elghs3m7xr.cloudfront.net) を 取得した個人ドメイン(cloud.shirok.com)でWebアクセスできるようにCNAME登録します

1) Zones画面
左REsourcesにある[Records]を選択し、[Add Record]をクリック
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/1cc90e43-de73-8af2-8395-a0b57bfef096.png)


2) Add Record画面
以下設定し、[Submit]をクリック

	・RECORD TYPE: CNAMEを選択
	・NAME: URIになる任意の名前を設定 
	・TTL: 任意のTTL(Time to live)を設定
	・RDATA MODE: Basicを選択
	・TARGET: CloudFrontで生成されたURIを設定

![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/10f5b704-0b5d-acc9-9521-a44818f5272e.png)

3) Records画面
設定反映するためRecordsにある[Publish Changes]をクリック
![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4f9e4cd0-9151-273a-f1d5-7f8611b6a326.png)


4) Confirm画面
設定内容を確認し、[Publish Changes]をクリック
![12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/01e34947-868a-e7eb-59e5-5719808030d6.png)


5) 設定完了
![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/e2ea81da-84cf-c34a-b7db-6bff38d13473.png)


##● ドメインプロバイダへDNSのNameservers情報登録
ドメインプロバイダ[Freenom](https://www.freenom.com/en/index.html)へDNSのNameservers情報を登録


##● 設定確認

1) nslookup確認

```shell
[opc@inst01 ~]$ nslookup cloudfront.shirok.ga
	Server:		2404:1a8:7f01:b::3
	Address:	2404:1a8:7f01:b::3#53

	Non-authoritative answer:
	cloudfront.shirok.ga	canonical name = d12elghs3m7xr.cloudfront.net.
	Name:	d12elghs3m7xr.cloudfront.net
	Address: 13.225.177.118
	Name:	d12elghs3m7xr.cloudfront.net
	Address: 13.225.177.23
	Name:	d12elghs3m7xr.cloudfront.net
	Address: 13.225.177.84
	Name:	d12elghs3m7xr.cloudfront.net
	Address: 13.225.177.21
```

2) コンテンツURI確認
https接続は、ssl証明書が登録されていないため次のようなエラー画面になります

https://cloudfront.shirok.ga
![30_504Error.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/5d9c1972-7d03-72e2-dd75-cc770e431e54.png)

```txt:ERROR
504 ERROR
The request could not be satisfied.
CloudFront attempted to establish a connection with the origin, but either the attempt failed or the origin closed the connection. We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner.
If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation.

Generated by cloudfront (CloudFront)
```

ということで、次は、ssl証明書を取得し、エラー出ないようにします


#■ SSL証明書 取得
ここでは、[ZeroSSL](https://zerossl.com/)からSSL証明書を取得します
SSLの取得設定には、DNS、AWSの設定が間に必要になり以下のような手順になります


##● ZeroSSL①
1) [ZeroSSL](https://zerossl.com/)アクセス
https://zerossl.com/ し、[Create Free SSL Certificate]へ DNSへ登録したCNAMEのドメインを設定し、[Next Step]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/f5ca8609-5e06-946c-71f5-b44b6ff4abd9.png)



2) New Certificate: Domains画面
以下内容を設定し、[Next Step]をクリック

	・Enter Domains: SSLするドメインを設定

![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7b09544b-cc45-1e65-ecb6-50fa09625a47.png)



3) Validity画面
Certificateする期間を設定し、[Next Step]をクリック
![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/1bc7c2fc-2f25-ed5c-3d32-52e8281f0925.png)


4) CSR & Contact画面
証明書の連絡先情報とCSRを自動生成するので、[Auto-Generate CSR]をチェックし、[Next Step]をクリック
![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/ba317616-efc3-7915-b77e-b7942286384b.png)

5) Finalize Your Order画面
必要なSSL Certificateを選択し、[Next Step]をクリック
![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/78acc41d-8607-54a8-e44a-37ef44d7e4e2.png)


6) Verification Method for Domain画面
[DNS (CNAME)]を選択し、以下内容をメモしDNSへCNAME登録します

	・Name: DNSへ登録するCNAME
	・Point To : DNSへ登録するCNAMEのTARGET
	・TTL : 3600 (or lower)

![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/500ca260-c188-8329-f3ee-4d2fdbc4ba6c.png)


##● DNS設定追加
7) DNS Zone画面
DNSのRecordsへZeroSSLで出力された以下値内容を設定し、[Submit]をクリック

	・RECORD TYPE: CNAMEを選択
	・NAME: ZeroSSLで出力された Nameの値を設定
	・TTL: 3600以下の任意のTTL(Time to live)を設定
	・RDATA MODE: Basicを選択
	・TARGET: ZeroSSLで出力された Point Toの値を設定

![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/d4759e88-ae7f-6f74-c359-16a9f17e0eb8.png)

8) 設定反映
設定反映するためRecordsにある[Publish Changes]をクリック
![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6385471f-ba08-684b-31fd-4fe3c60a3c39.png)


##● ZeroSSL続き②
9) Verification Method for Domain画面
[Next Step]をクリック
![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/500ca260-c188-8329-f3ee-4d2fdbc4ba6c.png)



10) Verification Method for Domain画面
[Verify Domain]をクリック
![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/1b2e8b21-b1a0-f3e0-8995-3850c38516dd.png)


11) Download Certificate画面
Sever Type[AWS]を選択し、[Download Certificate(zip)]をクリック
![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c8ea1bfa-edbe-df51-494a-12cf461bbd79.png)




12) ダウンロード画面
ファイルを任意の場所へ保存
![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/45a5cc73-4bfa-db8e-f042-3b941248e55c.png)

13) ファイル確認

```shell
[opc@inst01 ~]$ ls -l cloudfront.shirok.ga
	total 24
	-rw-rw-r--@ 1 opc  staff  2431  1 30 14:06 ca_bundle.crt
	-rw-rw-r--@ 1 opc  staff  2301  1 30 14:06 certificate.crt
	-rw-rw-r--@ 1 opc  staff  1706  1 30 14:06 private.key
```


##● AWS Certificate ManagerへSSL証明書登録
1) AWSコンソール
Security, Identity, & Compliance にある[Certificate Manager]をクリック
![30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/d9737134-f652-309d-ca4d-ee01f3ca3ee5.png)



2) Certificate画面
[Import Certificate]をクリック
![31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0bfa72b0-d35f-1e77-86da-18cc4a9f0aa5.png)


3) Select certificate画面
以下項目にダウンロードしたSSL証明書ファイルのテキストをコピーして、[Next]をクリック

	・Certificate body* : certificate.crtファイルの内容を設定
	・Certificate private key* : private.keyprivate.keyファイルの内容を設定
	・Certificate chain : ca_bundle.crtprivate.keyファイルの内容を設定

![32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4655c24c-ba67-5b30-b335-9dd35e3e938d.png)

4) Add Tags画面
[Review and Import]をクリック
![33.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7caaebad-eb24-c0ff-ff4e-a27615773dae.png)



5) Review and Import画面
[Import]をクリック
![34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/859fc68f-af5b-c58f-5d91-763fd5f98d09.png)



6) Certificate画面
Statusが "Issued"でグリーンならOK
![41.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/26ca7fe5-efbb-ce7c-d5d6-bbc4ec3a30f6.png)



##● AWS CloudFrontへCNAME登録
1) 作成したCloudFront ID画面
[Edit]をクリック
![50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/fd77cf5d-283b-a84b-444b-06d97438b7a0.png)


2) Edit Distribution画面
以下内容を設定し、[Yes Edit]をクリック

	・Alternate Domain Names (CNAMEs): SSL証明取得した個人ドメインを設定
	・SSL Certificate: [Custom SSL Certificate (example.com):]

![51.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/42ee6bef-b228-c109-1441-a927a30c541a.png)

3) 設定確認
![52.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/2c7d4b2c-7d7b-4a20-b3a2-915a00934a2f.png)



##● ZeroSSL続き③
1) Download Certificate画面
[Check Installation]をクリック
![61.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/45c9b8dc-690e-e486-3c1f-e53b467e23fd.png)

2) 設定完了
![62.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/aaaf1310-f870-0762-66ac-a1fe83b1060b.png)



#■ WAF
1) OCIコンソール画面
[Security] > [Web Application Firewall]をクリック
![01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6c322d54-47cc-c452-f43a-6e7d90e5bbe6.png)


2) WAF画面
[Create WAF Policy]をクリック
![02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/7aee8127-b500-061f-ea54-88f3fa3d8d63.png)


3) Create WAF Policy画面
以下内容を設定し、[Create WAF Policy]をクリック

	・Name: 任意の名前を設定
	・Primary domain: 個人ドメインを設定
	・Origin name: 任意の名前を設定
	・URI: CloudFrontで生成されたURIを設定

![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0a88ad4d-42cb-33cd-433c-13045f1594fa.png)

4) Setting画面
作成したWAFの [Settings]を選択し、[Edit]をクリック
![05修正.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/90e276b9-3706-f204-edfe-91e18b8042a1.png)

5) Edit Settings画面
以下内容を設定し、[Save Changes]をクリック

	・Enable HTTPS support: チェック
	・Certificate source: [pload or paste certificate and private key]をクリック
	・Upload certificates source: certificate.crtファイルを設定
	・Upload private key sourceprivate.keyprivate.keyファイルを設定
	・HTTP to HTTPS redirect: 必要に応じてチェック
	・Enable SNI: チェック

![08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/99a686fd-8a2f-8f5a-8a05-687769482d55.png)


6) UPDATING
数分まちます
![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/4ca3cf0e-7199-aab6-1a35-aae3b2ba267e.png)



7)UPDATING 完了
表示された"CNAME Target"項目の値をコピーして、DNSのCNAMEへ登録します

CNAME Target: cloudfront-shirok-ga.o.waas.oci.oraclecloud.net

![24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/c3b0c296-d789-66d3-cdbe-e648b15c371b.png)

##● DNS CNAME登録 
DNSへ、個人ドメインとWANで生成されたドメインをCNAMEします
以前登録したCloudfrontで生成されたドメインと入れ替えます。

1) Add Record画面
以下内容を設定し、Submitをクリックし、[Publis Changes]をクリック

	・RECORD TYPE: CNAMEを選択
	・NAME: 個人ドメインを設定 
	・TTL: 任意のTTL(Time to live)を設定
	・RDATA MODE: Basicを選択
	・TARGET: WAFで生成されたドメインを設定

![51_DNSーCNAME登録01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/70f4eb3c-f584-d64e-cdeb-c9e2fa4eb4c6.png)

2) Confirm画面
内容を確認し、[Publis Changes]をクリック
![51_DNSーCNAME登録02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/8463c4a8-e12f-d0bb-1a8b-7962c7eff759.png)

3) 更新確認
CNAMEが更新されたことを確認
![51_DNSーCNAME登録03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/40557234-2db9-f605-fe78-bfd4830af32d.png)

##● nslookup確認
DNS CNAMEの宛先がOCI WAFで発行された"CNAME Target"の値になっていることを確認

```shell
	[opc@inst01 ~]$  nslookup cloudfront.shirok.ga
		Server:		2606:b400:300:d:feed::1
		Address:	2606:b400:300:d:feed::1#53

		Non-authoritative answer:
		cloudfront.shirok.ga	canonical name = cloudfront-shirok-ga.o.waas.oci.oraclecloud.net.
		cloudfront-shirok-ga.o.waas.oci.oraclecloud.net	canonical name = tm.inregion.waas.oci.oraclecloud.net.
		tm.inregion.waas.oci.oraclecloud.net	canonical name = apac-tokyo.inregion.waas.oci.oraclecloud.net.
		Name:	apac-tokyo.inregion.waas.oci.oraclecloud.net
		Address: 192.29.33.95
		Name:	apac-tokyo.inregion.waas.oci.oraclecloud.net
		Address: 192.29.33.251
		Name:	apac-tokyo.inregion.waas.oci.oraclecloud.net
		Address: 192.29.32.155
```


##● WAF Bot Management追加
OCI WAFのCAPTCHAチャレンジ機能を追加して、保護されたWebアプリケーション機能にボットからアクセスできないようにします。

1) WAF画面
WAFのWAF Policyから[Bot Management]をクリックし、[CAPTCHA Challenge]タブをクリック
![60_WAF_Bot_設定画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/6904eee3-1674-9655-ee90-906b0a6f97b1.png)


2) Add CAPTCHA Challenge画面
[Add CAPTCHA Challenge]をクリックし、以下内容を設定し、[Add]をクリック
![61_WAF_Bot_CAPTCHA.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/0167d10a-c6b5-c2df-1580-392f1640a8fd.png)


3) 設定完了
![63_WAF_Bot_設定完了画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/acc29d05-2346-9514-9529-a4050024c091.png)



#■ 接続テスト
1) URI接続
URI接続(ここではhttps://cloudfront.shirok.ga) して
WAFの Bot機能CAPTCHA Challengeを設定したので、以下チャレンジ・レスポンス認証画面が出力されることを確認し、正しい文字を入力してクリック
![64_WAF_Bot_設定確認画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/b9f98ae9-a772-bb2f-661c-84a33b691b7c.png)


2) URI接続完了
コンテンツへアクセスできればOK
![30_HTTPS接続テスト.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/109087/eae6ef97-c429-5fa7-977b-7f42c44f4fb9.png)



　
#■ 参考 
　・SSL証明:[ZeroSSL](https://zerossl.com/)
　・Domain Provider:[Freenom](https://www.freenom.com/en/index.html?lang=en)
　・AWSマニュアル: [Amazon CloudFront ドキュメント](https://docs.aws.amazon.com/ja_jp/cloudfront/index.html)
　・Oracle マニュアル
	　　　　- [WAF ボット管理](https://docs.oracle.com/ja-jp/iaas/Content/WAF/Tasks/botmanagement.htm)
	　　　　- [Web Application Firewall](https://docs.oracle.com/ja-jp/iaas/Content/WAF/Concepts/overview.htm#Overview_of_the_Web_Application_Firewall_Service)
	　　　　- [DNSおよびトラフィック管理](https://docs.oracle.com/ja-jp/iaas/Content/EdgeServices/overview.htm#DNS_and_Traffic_Management)
	　　　　- [Object Storage](https://docs.oracle.com/ja-jp/iaas/Content/Object/Concepts/objectstorageoverview.htm#Overview_of_Object_Storage)
	　　　　- [SSL証明書の作業](https://docs.oracle.com/ja-jp/iaas/Content/WAF/Tasks/wafsettings.htm)