AWS S3で独自ドメインでSSLを使う方法
公開日: 2020.5.22
AWS S3で独自ドメインでSSLを使う方法をまとめました。AWS内の機能で完結させる方法と、Cloudflareを使って完全無料で実現する方法の二つがあります。
前提条件
AWS S3で独自ドメインを使う場合は、バケット名がそのドメイン名である必要があります。
DNSにAWS CloudFrontとRoute53を使う
S3と同じAWSファミリーのCDN・Amazon CloudFrontと、DNSサービス・Route53を使えば無料でSSLを追加することができます。
S3・CloudFront・Route53で独自ドメインを使う方法は、下記のページがわかりやすいです。
CloudFront 経由で S3 のファイルにアクセスする
S3もAWSサービスなので、AWSで完結するという意味ではこの方法がベストです。ただし、CloudFrontもRoute 53も従量課金サービスなので、無料では使えないところは押さえておきましょう。
特に予算に限りがある場合は、「アクセスが増えるたびに料金が増えていく」この方法はあまりお勧めできません。というのも、S3もCloudFrontもRoute53も全て転送やファイル呼び出しに対しての従量課金なので3重課金になるからです。
DNSにCloudflareを使ってProxyする
DNSをCloudFrontにする必要がありますが、こちらのCloudflareを利用した方法は簡単かつ無料で使えるためお勧めです。
CloudflareとAWS S3の連携方法は、公式のドキュメントに記載されています。
Configuring an Amazon Web Services static site to use Cloudflare
設定方法は簡単で、DNSレコードにS3のバケットドメインを指定してProxy(クラウドマーク)をオンにするだけ。簡単ですね。上記のドキュメントのように、S3でバケットポリシーにCloudflareのIPアドレスを追加すると、セキュリティも高めることができます。
これだけで無料かつ独自ドメインでSSLが使え、さらに静的ファイルも無料で高速キャッシュしてくれます。
AWS S3で独自ドメインでSSLを使う方法をまとめました。
AWS内でまとめるのはキレイな方法ではありますが、3重課金というデメリットが気になります。一方で、Cloudflareは無料で使えるサービスなので、この機会にDNSをCloudflareにしてしまうというのも手でしょう。
価格は記載がある場合を除き、すべて税込みです。
関連キーワード
サーバレスの新着記事
- サーバレスCloudflare R2の料金体系・無料枠まとめ 2024.8.21
- サーバレスCloudflare R2をCyberduckで使う方法 2024.7.31
- サーバレスAIの学習ボット・クローラーからサイトを守るメリットとブロックする方法 2024.7.19
- サーバレスCloudFlare Pagesのビルド環境の違い 2024.5.9
- サーバレスCloudflare D1の料金体系・無料枠まとめ 2024.3.25
- サーバレスCloudflare PagesでNuxt3のビルド時に「ENOENT: no such file or directory」エラーの対象方法 2024.3.21
- サーバレスGitlab CLIでpush時に「glab auth not found」となった際の対処方法 2024.3.19
- サーバレスCloudFlare Workers AIの料金体系・無料枠まとめ 2024.2.2