質問: * 目的 AWS の Elastic Beanstalk を使用して deploy した Django のサイトを HTTP から HTTPS にしたいです。 https://docs.aws.amazon.com/ja_jp/elasticbeanstalk/latest/dg/create-deploy-python-django.html#python-django-prereq 上記のサイトを参照しながら、最後まで終了。 しかし、見れるサイトは HTTP のまま。 様々なサイトを見ましたが、具体例がないのと、私にはやり方がよく分からないので詳しく教えて頂けると幸いです。 証明書を発行し年間で使用し続けるのに 400 円から 8000 円までかかる可能性があるとのことですが、無料でやりたいので、そこなども考慮に入れて頂けると幸いです。 具体的措置に関する説明をお願いします。
回答: > > 上記のサイトを参照しながら、最後まで終了。 > > しかし、見れるサイトは HTTP のまま。 > > > はい、上の手順はHTTPでのサイト構築だけなので、HTTPSにはなりません。 Elastic BeanstalkでHTTPSをかける場合、大きく分けて3つの選択肢があります。 * AWS発行の証明書を使う...AWSのコンソールから設定して利用可能となりますので、楽なのは間違いないです。ただし、いちおう「無料」ということにはなっていますが、EC2に直接セットできないので、EC2が1台しかない場合はロードバランサーの分の料金(1000~2000円/月)がまるまる追加となります。 * Let's Encrypt...こちらは完全無料ですが、3ヶ月に1回手動で更新するか、自動更新の仕組みを作り上げる必要があります(DNS認証が自動化できない場合、Djangoアプリケーションに手を入れる必要が出てくることも考えられます)。 * 証明書を買ってくる...Let's Encryptの環境構築が手間な場合には証明書を買ってくる手段もあります。安いものであれば2年有効で2000円のものもありますので、Let's Encryptの更新の手間や自動更新の仕組み構築の手間を考えれば、そんなに悪い選択でもないです。 なお、後者2つの場合、インスタンス内での設定が必要となりますが、AWSのガイドもあります。 いずれにしても、SSLの認証を取るための**自前のドメインを確保**するのはほぼ前提となります。