Let's Encryptでワイルドカード証明書を発行してみました。
ワイルドカード証明書
遂に……遂に来ましたね。 Let's Encryptのワイルドカード証明書が。
非常におめでたいです🎉
これで、サブドメインをたくさん切って運用してるサービスなんかの証明書の管理がグッとラクになりますね。
早速取得してみる
注意点としては、
- ワイルドカード証明書はACMEv2エンドポイントからのみ発行できる
- ワイルドカード証明書はDNS-01チャレンジでのみ発行できる
公式のCertbotは0.22.0からACMEv2に対応しており、DNS-01チャレンジにも対応してます。 DNS-01では、_acme-challenge.example.com
のようなTXTレコードを作成してドメインの所有を確認します。
手順
適当にCertbot(certbot-auto)をインストールしたら、以下のようなコマンドを実行します。 明示的にACMEv2エンドポイントとDNS-01チャレンジを指定する必要がります。
certbot certonly \
--manual \
--preferred-challenges dns-01 \
--server https://acme-v02.api.letsencrypt.org/directory \
--domain *.kiritan.com
すると、以下のように「IP記録するけどいい?」って確認されます。 DNS-01は、実際に証明書を使うサーバー以外からも発行が要求できるんですが、要求元のIPアドレスが記憶されるみたいです。
-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.
Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o:
進むと、以下のようなレコードを設定しろと言われるので、設定します。
-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.kiritan.com with the following value:
f4WTOGBdEhZF7aAx9mZof8X9072JVUKDR7FhmUlKiYo
Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue
ボクはConoHaのDNSを使っています。 普通にWebブラウザからレコードを設定するのはもちろん、API経由で設定もできるので非常に便利です。 あと、DNSサービス自体は無料です。ふとっばらですね。
ついでに宣伝↓
あと、AWSのRoute53みたいな有名サービスなら、プラグインが存在するので手軽にDNS-01による確認ができるみたいです。
今度ConoHaのDNSでも簡単に証明書がとれるDNS-01プラグインを書いてみようかな???
適切にTXTレコードを設定したら、エンターキーを押せば終わり!
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/kiritan.com/fullchain.pem
簡単ですね! あとは、HTTPサーバに設定してあげれば夢のワイルドカード証明書によるHTTPS化が完了です!
うわ〜〜ワイルドカードだ〜〜うれしい〜〜
おわり
TXTレコードを設定するところが自動化できるなら、本当に証明書管理の手間が少なくなると思います。
別のアプローチで管理の手間をなくす記事もあります。見てね。