IBM Cloud CISの動作確認(2) -証明書編-

##目的
IBMCloud InternetServicesを活用して、CISを経由したWebサーバへのロードバランスを試す。
今回は、クライアント->CIS Edge間および CIS Edge->origin間の証明書を導入する。
<font color="Red">CISは30日間無料でお試しできる</font>ので是非やってみましょう

六部に分けて記載する予定です。

* 初期導入編:[IBM Cloud CISの動作確認(1) -初期導入編-](https://qiita.com/khoshina/items/e9b397f498330faefdd9)
* 証明書設定編:本ページ
* 動作確認編:[IBM Cloud CISの動作確認(3) -動作確認編-](https://qiita.com/khoshina/items/1dc8703c9830360bc250)
* GLB編:GLB編:[IBM Cloud CISの動作確認(4) -GLB編-](https://qiita.com/khoshina/items/835d6f35183c8f654086)
* cache編：[IBM Cloud CISの動作確認(5) -cache編-](https://qiita.com/khoshina/items/68a221388c5a676058ed)
* セキュリティ編:[IBM Cloud CISの動作確認(6) -Security編-](https://qiita.com/khoshina/items/ca8b01d8a0b05734817b)

##環境
* ローカル端末：macOS Catalina 10.15.6 1台
* プラットフォーム:IBMCloud
    * CDNサービス：IBM Cloud Internet Services 1サービス(Freeプラン)
    * 接続先サーバ:CentOS 7.7.1908(Virtual Server for Classic) 1台

###概要構成図

![kou検証_日々更新-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/8922734d-a2bd-59c3-ea8e-44c3ff6ef4c2.png)


###通信経路
Client -> CIS Edge -> Orgin(kou-cent01) -> CIS Edge ->  Client

1.インターネット端末より「www.m365.work」へアクセスする。 -> https://www.m365.work
2.CIS NSサーバからアクセス先アドレスを取得する。
3.インターネット端末とCIS Edge間でTLS(SSL)接続を確立する。
4.リクエストコンテンツのキャッシュがない場合、CISEdgeとoriginサーバ間でTLS(SSL)接続を確立する。
5.originサーバがコンテンツをCISEdgeに返す。
6.CISEdgeがコンテンツをリクエスト元のインターネット端末に返す。

##証明書設定
`IBM Cloudポータルでの作業`

**セキュリティ-** -> **エンドツーエンドCA証明**になっている事を確認
今回はClient~CIS Edge~Originまでの全区間で暗号化するため、エンドツーエンドCA証明とする。
![Cloud_Internet_Services_-_IBM_Cloud-3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/dee982e9-c3eb-0231-81ba-eedae10ad7ca.png)

###Client->Edge間の証明書

**デフォルトで用意されたユニバーサル証明書をそのまま使うのでも問題ない**
予め自分が持っている証明書や、新規で発行することも可能なので追加してみる。
![Cloud_Internet_Services_-_IBM_Cloud.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/9bbeca6b-b694-441e-fa67-27247c0a0434.png)

####新規発行
**専用の注文** -> **FQDNを記入** -> **追加**を選択
![Cloud_Internet_Services_-_IBM_Cloud-2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/44befa93-4b21-5ba3-9fad-465f9fd0af61.png)

####所持している証明書をアップロード
**アップロード** -> **証明書と秘密鍵を記入** -> **追加**を選択
![Cloud_Internet_Services_-_IBM_Cloud-4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/683d77b7-c9b3-4f47-44c8-d303a36778f6.png)

アップロードした証明書は上から順に利用されるので、順番に注意すること。
![Cloud_Internet_Services_-_IBM_Cloud-5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/69e08f94-a4b5-e2d3-f94d-e1f329af7dac.png)

###Edge->origin間の証明書
こちらは証明書の登録と、オリジンサーバ側に証明書をデプロイする必要がある
**セキュリティ-** -> **起点** -> **注文**を選択する。
![Cloud_Internet_Services_-_IBM_Cloud-8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/0a3da1be-825e-a4b4-44bf-099193596cc7.png)

####新規発行
**新規に生成** -> **秘密鍵のタイプを選択** -> **証明書発行ホスト名を記入** -> **証明書の期限を選択** -> **注文**を選択
![Cloud_Internet_Services_-_IBM_Cloud-6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/abc1b79c-7936-fd86-df4d-92d3d950e688.png)

証明書が発行され、秘密鍵が表示される。
<font color=red>ここで注意したいのが、秘密鍵をここで保存しておかないとポータル上から再表示できないこと。</font>
![Cloud_Internet_Services_-_IBM_Cloud-7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/517cdd54-db7c-5c72-2616-b6491eacb0c4.png)

####所持している証明書をアップロード
**自分のものをアップロード** -> **証明書署名要求に所有している証明書の情報を記入** 
-> **証明書発行ホスト名を記入** -> **証明書の期限を選択** -> **注文**を選択
![Cloud_Internet_Services_-_IBM_Cloud-9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/4cd6c05d-4266-f983-4094-eee02436af3b.png)

![Cloud_Internet_Services_-_IBM_Cloud-10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/703043/2bd2a85d-08bb-5c8b-f833-fc92073d5f44.png)

以上で証明書設定は終了
次回から動作確認を実施していく。

##続きはこちら
[IBM Cloud CISの動作確認(3) -動作確認編-](https://qiita.com/khoshina/items/1dc8703c9830360bc250)