ワイルドカード証明書とは
例えばこのサイトのドメインはwww.naga-t.jpですが、その他にサブドメインを複数個運営したい時に一回一回証明書を取得するのは大変です。
そこで「*.naga-t.jp」の証明書を取得することで複数のサブドメインのサイトをHTTPS化することが出来るというのがワイルドカード証明書です。
ただし複数階層にわたるサブドメイン(例えばexample.app.naga-t.jp)には適応できないので注意が必要です。
私は完全に忘れていて一回ミスったことがあります💦
Let’s Encryptとは
Let’s Encrypt(レッツ・エンクリプト)はInternet Security Research Groupという非営利団体が運営している証明書認証局です。
非営利団体なのにどうやって運営しているのかと私も不思議に思ったのですが、どうやら世界の大手企業が支援しているようです。
納得ですね。
Let’s Encryptでのワイルドカード証明書の発行方法
環境
今回は以下の環境で実行しています。
- Ubuntu : 24.04
- Cerbot : 2.9.0
cerbotのインストール
以下のコマンドでcerbotをインストールします。
sudo apt update
sudo apt install certbot -y
ワイルドカード証明書の取得
以下のコマンドを実行することで取得できます。
certbot certonly --manual \
--preferred-challenges dns \
-d *.sample.com \
-d sample.com \
--email mail.com \
--agree-tos \
--manual-public-ip-logging-ok
上記のコードを実行すると以下のようにTXTレコードを追加するように指示されるので自身の契約しているサーバーパネルなどで設定します。
反映には5分ほど時間がかかるので、少し置いてからYを入力して進めます。
Please deploy a DNS TXT record under the name:
_acme-challenge.example.com
with the following value:
XXXXXXXXXXXXXX
Before continuing, verify the record is deployed.
すると、また同じようにTXTレコードを追加するように指示されるので同様の手順で追加します。
同様に時間をおいてからYを入力すれば完了です。
Please deploy a DNS TXT record under the name:
_acme-challenge.sample.com
with the following value:
YYYYYYYYYYYYYY
Before continuing, verify the record is deployed.
ここまで出来たら/etc/letsencrypt/live/example.com/
にpemファイルが追加されているはずです。
lsコマンドなどでインストールを確認することが出来ます。
ここで生成したpemファイルのパスをnginxなどで指定することで使用出来ます。
具体的な記述はMisskeyをVPSで建てた際の記事のnginx設定部分に記載しているので興味がある方は是非!
コメント