6
6

More than 5 years have passed since last update.

Let's Encryptを使ってみる(CentOS7)

Last updated at Posted at 2016-10-09

Let's Encryptを使ってみる(CentOS7)

前提

これをちらっとでも読もうという人は「証明書ってなに?」という人はいないと思いますが・・・
「Let's Encryptで証明書を取得する@CentOS7」以上のことは書いておりません(/・ω・)/ご承知おきを。

確認環境

「さくらのVPS」 http://vps.sakura.ad.jp/
カスタムOSインストール:CentOS7
での確認となります。
以下ルート権限での作業となります。

また架空のドメイン名「hogehogeboon.jp」を使って説明しています。
(2016/10/9現在、このドメイン名はいないけど・・・。)
適宜自分の所有しているドメイン名と置き換えてください。

前準備

もしもgitが入っていなければ・・・

さくっと入れましょう。

# yum install git

取得~設定

CertbotクライアントをGitHubから取得

/opt以下に取得したものを置くこととします。

# cd /opt
# git clone https://github.com/certbot/certbot

certbot-autoで環境確認

certbot-autoコマンドでCertbotクライアントが実行できる環境か確認します。

# cd /opt/certbot
# ./certbot-auto

はい、なんとなくうまくいったかなと思いきや・・・
「Certbotちゃんはこのシステム上でWEBサーバーが動いているか解らないでやんす。"certbot-auto certonly"でマニュアル設定してヨロシクやってチョ!」と。
CantConfigureAutomatically.JPG

certbot-auto certonlyや!

というわけでそう言われたならそうするまでよと。。。

わたくしが(仮ですよ)hogehogeboon.jpというアドレスの持ち主として・・・

# ./certbot-auto certonly --standalone -d hogehogeboon.jp 

ちょっぴり怒られた

「80番のポートだれか使ってますよ」と。。。
Certbotさん、証明書発行するのに一時的にとはいえ80番使うのね。。。
Port80Open.JPG

ワタクシはnginx使ってるので

# systemctl stop nginx

自分の使っているWEBサーバーを止めてください。

もいっぺんcertbot-auto

# ./certbot-auto certonly --standalone -d hogehogeboon.jp -d www.hogehogeboon.jp

メールアドレスの確認があります。緊急通知や鍵を紛失した時の復旧用途とのこと。
ConfirmEmail.JPG

はい、よい子はちゃんと読んで承諾しましょう。Agreeぽちっと。
Agree.JPG

そうすると
CreateCert.JPG

証明書できた!

/etc/letsencrypt/live/ドメイン名/fullchain.pem できたよ!とお褒めの言葉が。

 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/hogehogeboon.net/fullchain.pem. Your cert will
   expire on 2017-01-07. 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"

証明書はというと・・・

それでは/etc/letsencrypt/live/hogehogeboon.jp/の中身を見てみましょう。

cert.pem -> ../../archive/hogehogeboon.jp/cert1.pem (サーバー証明書)
chain.pem -> ../../archive/hogehogeboon.jp/chain1.pem (中間証明書)
fullchain.pem -> ../../archive/hogehogeboon.jp/fullchain1.pem (サーバー証明書+中間証明書)
privkey.pem -> ../../archive/hogehogeboon.jp/privkey1.pem (秘密鍵)

実態はarchive側になります。

ご注意

Let's Encryptで取得した証明書の期限は「90日」なので、
ワタクシみたいなボンヤリさんはcronでも組んでおくのが吉です。

おまけ

証明書をどうするかはその人次第ですが・・・nginxで使ってみましょう。

/etc/nginx/conf.d/hogehogeboon.jp.confを作成。
SSLを有効に、サーバー証明書+中間証明書と秘密鍵を指定します。

server{
        listen 443 default ssl;
        server_name hogehogeboon.jp;
        ssl on;
        ssl_certificate /etc/letsencrypt/live/hogehogeboon.jp/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/hogehogeboon.jp/privkey.pem;
        root /var/www/hogehogeboon.jp;
        index index.html index.htm;
}

nginx起動

# systemctl start nginx

ブラウザでアクセス
あら素敵、鍵付きhttpsで動きました。
https.JPG

謝辞

こちらを参考にさせていただきました。(というか追試ですね。。。)
ありがとうございました。

Let's Encrypt 総合ポータル
https://letsencrypt.jp/

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6