~~NOCACHE~~ ## カスタムオリジンのSSL化 ### はじめに SSL証明書を発行していないAWS外のWebサイトに、AWS(Certificate Manager)のSSL証明書を適用する 構成イメージはこんな感じ {{:Aws:CloudFront:pasted:20200604-160156.png?nolink 1000x0}} ### 構築手順 #### SSL証明書を発行していないWebサイト ここでは、以下のWebサイトに対して実施する想定で記載する。 ・http:example.co.jp #### route53にドメイン(サブドメイン可)を設定する。 ここでは、以下のドメイン対して実施する想定で記載する。 ・test.example.co.jp {{:Aws:CloudFront:pasted:20200527-203215.png?direct 400x0}} 外部で取得したドメインの場合は、DNSサービスによってレコードセットが必要になる。 [[https://qiita.com/_y_s_k_w/items/f3ec202acbac17ae2929|こういったサイト]]を参考に登録する。 #### Certificate ManagerでSSL証明書を発行する。 自身のドメインにあった設定をして登録 {{:Aws:CloudFront:pasted:20200527-204009.png?direct 400x0}} {{:Aws:CloudFront:pasted:20200527-204143.png?direct 400x0}} {{:Aws:CloudFront:pasted:20200527-204438.png?direct 400x0}} {{:Aws:CloudFront:pasted:20200527-204555.png?direct 400x0}} 検証が成功すると状況、検証状態が成功に変わります。 {{:Aws:CloudFront:pasted:20200527-211807.png?direct 400x0}} {{:Aws:CloudFront:pasted:20200527-211725.png?direct 400x0}} #### CloudfrontでWebサイトを登録する。 Create Distributionから、Cloudfrontの設定をしていきます。 今回はWebサイトになるので、WebのGet Startedを選択します。 {{:Aws:CloudFront:pasted:20200527-213635.png?direct 400x0}} {{:Aws:CloudFront:pasted:20200527-212249.png?direct 400x0}} ##### Origin Setting Origin Domain Name:オリジンのドメインを、ディレクトリの指定が必要な場合はOrigin Pathに記載します。 Origin Protocol Policy:SSL化していないサイトの登録になるので、HTTP Onlyを選択します。 Port等は環境に合わせて登録します。 {{:Aws:CloudFront:pasted:20200527-214113.png?direct 400x0}} ##### Default Cache Behavior Settings Viewer Protocol Policy:Redirect HTTP to HTTPSに(何かの拍子にHTTPとなった場合にHTTPSにリダイレクトしてくれます) Allowed HTTP Methods:GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE(サイト環境にもよるので適宜選択を) {{:Aws:CloudFront:pasted:20200527-213300.png?direct 400x0}} ##### Distribution Settings Alternate Domain Names(CNAMEs):Route53で登録したドメインを記載します。 SSL Certificate:Custom SSL Certificateを選択してプルダウンメニューからCertificate Managerで取得したSSL証明書を選択します。 Security Policy:特に指定がなければTLSv1.2_2018 (recommended) Supported HTTP Versions:特に指定がなければHTTP/2, HTTP/1.1, HTTP/1.0 設定がすべて完了したらCreate Distributionをクリックします。 {{:Aws:CloudFront:pasted:20200527-220134.png?direct 400x0}} CloudfrontのDistribution画面でStatusがDeployed、StateがEnabledとなれば登録完了です。 ※Statusは設定変更の度にInProgress⇔Deployedと遷移します。5~15分程度なので気長に待ってください。 {{:Aws:CloudFront:pasted:20200527-220603.png?direct 400x0}} {{tag>AWS CloudFront SSL証明書 実践的}}