ほっしーの技術ネタ備忘録

技術ネタの備忘録です。基本的に私が忘れないためのものです。他の人の役にも立つといいなぁ。

DNSSEC の KSK をロールオーバーした話

忙しくて後回しにし続けた結果、半年くらい経ってしまいましたが……
夏頃に DNSSEC の KSK をロールオーバーしたのでその履歴。

今となっては、もっと自動化されたスマートなやり方があるらしいのですが、
老害エンジニアなので、実際に何を自動化しているのか理解できないと不安なので、
まずはすべて手動でやってみました。一発間違うとメールその他が一切不通になるので、
ちゃんとテスト環境で一度実験しましょう。

KSK ロールオーバーの手順

実際の手順は、以下の資料をまずは熟読。
https://dnssec.jp/wp-content/uploads/2010/08/draft-ietf-dnsop-dnssec-key-timing-00.pdf
Double-RRSet でやるのがオススメとのことなので、今回はとりあえずそれで。

3.3.3 のタイミングチャートを眺めて予定を立てます。
要約すると、

  1. 新しい KSK を作成して、上位の DS に署名を追加する
  2. しばらく時間をあけてから、古い DS の削除と KSK の削除

の2段階で OK ということ。

2021/06/15: KSK 作成

まずは keys リポジトリに新しい KSK を作成。

$ sudo dnssec-keygen -K keys -a RSASHA256 -b 2048 -f ksk hslab.net
Generating key pair..+++++ .............................................................................+++++
Khslab.net.+008+33089

ほいでけた。

んで、dsset-hslab.net. ってファイルに DS レコードが吐かれているので、
上位ゾーンの DS レコードに追加。

最後に、いつもお世話になっている http://dnsviz.net/ こちらで、
正しく KSK が2ルート表示されることを確認。

一日目はこれで終了。

2021/07/16: 古い KSK のリタイア

keys リポジトリにある、古い KSK のファイルを
一旦別ディレクトリに退避しておきます。
何かあってもいいように後で戻せるように。

んで、ゾーンの署名を再生成して rncd reload!

あとは、上位レジストラに、古い DS レコードの削除を依頼して2日目終了。

念のため、DNSVISで、経路が一列になっていることも確認しておく。

2021/08/XX: 古い KSK の掃除

古い鍵を残しておいても意味がないし邪魔なので、
さくっと削除。

ゾーンの署名を再生成して rndc reload。

最後に DNSVIS で DNSSEC の証明パスが壊れていないことを確認して
ミッションコンプリート!