危機感を持った理系学生のプログラミング日記
AWSで作成したWebポートフォリオをSSL化🦊
awsで作成したポートフォリオをSSL化したのでその方法を備忘録として記事に残しときます。
ドメインの購入
ssl化するにはドメインを設定しなければならないのでまずはドメインを購入します。
awsでもドメインを購入できますが少し高いので今回は「お名前.COM」というサイトで購入しました。
先に誰かが使用しているドメインは取得できないので注意ですが、"-"などを入れると比較的取得しやすいです。(一部の記号は使用できない場合があります)
下記のサイトを参考にしました。
AWS側(Route53)の設定
手順は下記のサイトを参考にしました。
Route53の使用料金は
- 0.50USD ホストゾーンごと / 月、最初の 25 ホストゾーン
- 0.10USD ホストゾーンごと / 月、追加ホストゾーン
となっています。
詳しくは下記の公式サイトより。
「お名前.COM」で取得したドメインは使えるようになるまで少し時間がかかる事がありますが、
$dig xxxxxxx.com
でドメイン及びDNSの設定が上手くいっているか確認できます。
設定は上手くいっているのに繋がらないという場合は、サーバーの方の設定を見直してみましょう。私はnginxで運用していますが、ドメインをnginx及びAPサーバーのgunicornで設定していなかった為ずっとつながりませんでした。。。
で検索してみて繋がれば成功です。
Let's EncryptでSSL証明書取得
正直難しくて全ては理解できていません。
取得の方法は色々あるみたいでサーバーの環境によっても変わるみたいです。
今回私はnginxを利用しているのでnginx用の方法を書きたいと思います。
手順としては
- Let's Encryptから証明書を取得するためにサーバーの設定を変更する。
- Let's Encryptから証明書を取得してくる。
- SSL証明書を適用するためにサーバーの設定を変更する。
- Let's EncryptのSSL証明書の有効期限は90日間であるため、証明書を定期的に更新することが必要です。なのでcronにコマンドを登録して自動化します。
1の設定変更には様々な記事がありどれも同じようで違う手法を用いていたので、どれを参考にすれば良いか迷いましたが、私は下記の記事を参考にしました。
一応これで完了になります。
ただ色々と設定ファイルを書き加えてしまうので実行する場合は自己責任で。
また何かあれば記事にします。
では🦊