以前、「Let’s Encryptが正式版になったので試してみました」という記事で、サーバーへのLet’s Encryptの導入とSSL証明書の発行を試してみました。
今回はSSL証明書の設置・持込はできるけど、Let’s Encryptを導入できない環境にLet’s Encryptで発行したSSL証明書を導入してみようという話です。
証明書の取得
※事前に「Let’s Encryptが正式版になったので試してみました」にある事前準備の項を行い、VPSなどでLet’s Encryptが動作するようにしておきます。
今回はSSL証明書だけの発行となります。(導入予定のドメインが別サーバー)
そのため、manualで発行コマンドを実行します。(wwwありとなしの両方を対象にします)
※「-d」でドメインを指定しない場合には、後ほど入力が求められます。
[root@server certbot]# ./certbot-auto certonly --manual -d example.com -d www.example.com
上記コマンドを実行すると、メールアドレスの入力を求められます。
入力したメールアドレスは、証明書の有効期限通知や鍵の紛失時の復旧などに利用されるそうです。
メールアドレスを入力した後は、以下のように利用規約への同意を求められます。
利用規約に同意すると、以下のような認証に関する説明分が表示されます。
Make sure your web server displays the following content at
http://example.com/.well-known/acme-challenge/(認証ファイル名) before continuing:
(認証ファイル内に記載する認証コード)
If you don't have HTTP server configured, you can run the following
command on the target server (as root):
...
...
Press ENTER to continue
説明文どおりにディレクトリを設置して、認証コードを記載した認証ファイルを設置します。
アクセスできることが確認できましたら、ENTERキーを押します。
※指定したドメイン毎に認証が行われますので、wwwありなしの場合には、2回認証作業が必要となります。
※wwwありなしなどのリダイレクトを行っていたり、アクセス制限があったりすると認証エラーになることがあります。その場合には、エラーログも保存されていますので、内容を確認して最初からやり直しとなります。
認証エラーにならず、無事認証されると以下のメッセージが表示されて、「/etc/letsencrypt/」以下に証明書等が保存されます。
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at
/etc/letsencrypt/live/example.com/fullchain.pem. Your cert will
expire on 2016-11-21. To obtain a new or tweaked version of this
certificate in the future, simply run certbot-auto again. To
non-interactively renew *all* of your certificates, run
"certbot-auto renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le
保存された証明書等をFTPSなどでダウンロードして、設置したいサーバーに導入しましょう。
筆者の場合、さくらのVPSでサーバーを立ち上げて、Let’s Encryptを用いてSSL証明書を発行して、MixHostやバリューサーバーで運営中のサイトに導入してみました。