6
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

lego で Let's Encrypt

Last updated at Posted at 2019-07-18

はじめに

公式の certbot がありますが、本内容は lego を使用します。
https://github.com/go-acme/lego

バージョン:lego version 2.6.0 linux/amd64

なお、本手順では、認証ファイル方式の説明になります。

Apache

バーチャルホストの設定に認証ファイル用のエイリアスを追加します。
この辺は、好みの問題なので、ドキュメントルート配下に直接置く場合は、設定不要です。

    Alias /.well-known /etc/lego/webroot/.well-known
    <Directory "/etc/lego/webroot/.well-known">
       Order deny,allow
       Allow from all
    </Directory>

証明書リクエスト&生成

lego --accept-tos \
     --path /etc/lego/.lego/ \
     --http \
     --http.webroot /etc/lego/webroot/ \
     --domains "your-domain.com" \
     --email your-mail@gmail.com \
     run

/etc/lego/.lego/certificates/ に鍵ファイルや証明書が出力されます。

証明書を破棄

lego --accept-tos \
     --path /etc/lego/.lego/ \
     --http \
     --http.webroot /etc/lego/webroot/ \
     --domains "your-domain.com" \
     --email your-mail@gmail.com \
     revoke

証明書を更新

lego --accept-tos \
     --path /etc/lego/.lego/ \
     --http \
     --http.webroot /etc/lego/webroot/ \
     --domains "your-domain.com" \
     --email your-mail@gmail.com \
     renew \
     --days 30
     --renew-hook "/bin/systemctl reload httpd"

※「--days 30」は、「renew」に対してのオプションなので、指定する位置に気をつける。

中間証明書について

以下コマンドでファイルを分割する

cd /etc/lego/.lego/certificates
csplit -z -f your-domain.com. -b "%02d.pem" your-domain.com.crt '/BEGIN CERTIFICATE/' '{*}'
rm ./your-domain.com.00.pem
mv ./your-domain.com.01.pem ./your-domain.com.chain.pem

6
7
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
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?