Web

Let’s Encrypt: ホスト名毎に証明書を分けて発行する

投稿日:2020年6月30日 更新日:

1. はじめに

Let’s Encrypt を用いて複数のホスト名に対して証明書を発行する場合、1つの証明書にまとめてしまうこともできますが、ホスト名毎に証明書を分けて発行しておくと便利に運用できます。

例えば、複数のホスト名を1つの証明書で発行すると、証明書を見られたときに別のホスト名が分かってしまいます。また、証明書ファイルが漏えいした場合も、影響範囲を最小限に抑えることができます。

2. Let’s Encrypt でホスト名別に証明書を発行する

証明書の発行

Let’s Encrypt でホスト名別に証明書を発行・更新する場合の手順は以下になります。

  1. ホスト名毎に certbot コマンドを実行して証明書を発行する
  2. 期限を延長するために証明書を更新するには、--cert-name オプションに証明書を1つ指定して certbot renew コマンドを実行します。つまり、ホスト名毎に別にこのコマンドを実行することになります。

証明書毎に certbot コマンドを実行して発行を行う際には、ホスト名によって(つまりコマンド別に)異なるオプション(例えば、チャレンジが異なるなど)を指定していても問題ありません。

証明書の更新

証明書を更新するには certbot renew コマンドが使えますが、ホスト名毎に別に実行する必要があります。その際には --cert-name オプションで証明書の名前を指定します。

証明書の名前は以下のコマンドを実行すると表示されます。

sudo certbot certificates

このコマンドの実行結果の例を示します。

certbot certificates を実行した結果の例

赤枠で囲った部分に、証明書の名前が表示されています。

Linux サーバーの cron を使って毎月更新するのであれば、例えば /etc/crond.d/letsencrypt ファイルを生成し、以下を記述します。

# 毎月1日の1時に実行する
0 1 1 * * root /usr/bin/certbot renew \
        --cert-name foo.example.jp \
        --pre-hook "systemctl stop httpd.service" \
        --post-hook "systemctl start httpd.service"

# 毎月2日の1時に実行する
0 1 2 * * root /usr/bin/certbot renew \
        --cert-name bar.example.jp \
        --pre-hook "systemctl stop httpd.service" \
        --post-hook "systemctl start httpd.service"

# 毎月3日の1時に実行する
0 1 3 * * root /usr/bin/certbot renew \
        --cert-name baz.example.jp \
        --pre-hook "systemctl stop httpd.service" \
        --post-hook "systemctl start httpd.service"

3. 参考

📂-Web

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Web

Gmail でよく使うキーボードショートカット

Gmail でよく使うキーボードショートカットを紹介します。 1. Gmail のキーボードショートカットを有効にする手順 まず、Gmail でキーボードショートカットを利用するには、設定で有効にする …

Web Components

Web Components でスタイルシートを再利用する

Constructable Stylesheet Objects の使い方を説明します。

Web

ウェブブラウザがページを取得して表示するまでの流れ

目次1. はじめに2. Chrome デベロッパーツールの [Network]パネル3. リソース毎の処理の流れ4. その後の流れ5. DOMContentLoaded と load イベント6. グ …

Google App Engine

GAE (PHP 7) で Cloud Firestore を使う手順

Google App Engine で Firestore を使う手順について説明します。

Firefox

Firefox の 強化型トラッキング防止機能

目次1. Firefox の強化型トラッキング防止機能2. 用語トラッカー (Trackers)ソーシャルメディアトラッカートラッキングコンテンツサードパーティのクッキー クロスサイトのトラッキングク …