2018年8月7日火曜日

ZeroSSL を使って LetsEncrypt の証明書を取得してみる

概要

ZeroSSL は自己証明書や Let's Encrypt を使って SSL 証明書を作成することができるクライアントツールです
ローカルでコマンドで使う方法もありますが今回はサイトの generator を使ってみました

環境

  • macOS 10.13.6
  • ZeroSSL (2018/08/07 時点)

事前準備

当然ですが以下は必須です

  • サーバ
  • サイトのドメイン

ない場合は適当に VPS など契約しましょう
ドメインは無料で取得することも可能です
サーバも最悪 ngrok などを使えば何とかなりますがあまりおすすめはしません

アクセス

にアクセスしましょう
Let's Encrypt を使って証明書を作成することができます

CSR を作成

まずはドメイン名から CSR を作成します
以下のような感じでドメインを入力しましょう (ドメイン名および管理者メールアドレスはダミーです)
zerossl1.png

「Include www-prefixed version too?」と聞かれた場合は SSL を張るドメインが先頭に www も含む場合は「Yes」にしましょう

「Generating CSR」でまずは CSR が作成されます
右側のテキストフィールドに CSR の情報が入力されると思います

鍵を作成する

次に CSR を元に鍵を生成します
そのまま Next を押しましょう
「Generating account key」と表示され今度は左側のテキストフィールドに鍵情報が入力されれば OK です
zerossl2.png

ちなみに生成された鍵情報をダウンロードしないと次に進めないのでダウンロードしましょう
CSR もちゃんとダウンロードしておきましょう

サイトの確認をする

次は入力したドメインのサイトが本当に自分の持ち物であるかどうかの確認を行います
次のページで表示されるテキストファイルをサイトの /.well-known/acme-challenge/ に配置しましょう
zerossl3.png

URL 的には http://your-site-name.com/.well-known/acme-challenge/rtw4i3o5v4OkyjaoRJEWYEB74vSRRD-_vOrIzZeWXfQ という感じで見えるようになれば OK です

自分はコンテナで動かしていたので以下のような感じで配置しました
とりあえず一時的に確認できればいいのでイメージにはしていません

  • docker exec container1 mkdir -p /home/public/.well-known/acme-challenge/
  • docker cp rtw4i3o5v4OkyjaoRJEWYEB74vSRRD-_vOrIzZeWXfQ container1:/home/public/.well-known/acme-challenge/

ブラウザや wget などで本当にテキストファイルが取得できるか確認しましょう
かつ ZeroSSL のサイトからもアクセスできる必要があるのでファイアウォールなどで IP の制限をしていないかなども確認しましょう

証明書の取得

問題なければ以下のようなページに取得します
一番下の方にある domain-crt.txtdomain-key.txt をダウンロードしましょう
zerossl4.png

ダウンロードしたら「DONE NEXT」を押して完了です
次のページに移動すると鍵と証明書はダウンロードできなくなるので注意してください

最後に

ZeroSSL で証明書を取得してみました
まぁそれなに簡単に取得できるたかなーと思います
が、正直コマンドラインでやったほうが簡単だったかなーと思います

今回はサイト認証を使いましたが ZeroSSL は DNS 認証もありそっちの方がテキストレコードを入れるだけなので簡単かもしれません
しかもそっちの場合はサーバが不要です

参考サイト

0 件のコメント:

コメントを投稿