OpenDNSSECで自動運用

DNSSECは鍵運用や有効期限運用が面倒くさい。なのでOpenDNSSECなどのツールを頼ろうと思う!
ただのメモなのでそのつもりで!
概要は本家サイトを参照

  • インストール
cd /usr/ports/dns/opendnssec && make install
    • いろいろやる
      • 新しいライブラリが必要なことがあるので、適宜portupgrade
    • いろいろやっているとsiner関連でcore吐いて死ぬことがあった。これはsinerに-lpthreadつけて再コンパイル
      • 新しいOSリリースでやればOKなのかも
      • /usr/ports/dns/opendnssec/work/opendnssec-1.0.0/signer/tools/Makefile
signer_LDADD = -L/usr/local/lib -lldns -L../../libhsm/src/.libs -lhsm -lpthread
create_dnskey_LDADD = -L/usr/local/lib -lldns -L../../libhsm/src/.libs -lhsm -lpthread
  • 初期
    • softhsmを使う
softhsm --init-token --slot=0 --label='OpenDNSSEC'
 SO(Security Officer) PIN
 PINを設定
    • SETUPで初期化するらしい
ods-ksmutil setup
  • 設定
    • /usr/local/etc/opendnssec/conf.xml
      • softHSMで設定したラベル、PINを設定
<NotifyCommand>/usr/sbin/rndc reload %zone</NotifyCommand>

コメントをはずし有効に

    • /usr/local/etc/opendnssec/kasp.xml
      • zoneのserialを
<Serial>datecounter</Serial>

に変更

  • デーモン起動
ods-control start
  • 運用
    • 管理ゾーンの登録
ods-ksmutil zone add --zone example.jp \
  --input /var/named/etc/namedb/master/example.jp.zone \
  --output /var/named/etc/namedb/master/example.jp.zone.signed
    • zonelistの更新
ods-ksmutil update zonelist
      • このあたりでsiteconf/example.jp.xmlができているはず
    • 見てみる
ods-ksmutil zone list
ods-signer sign example.jp
      • sign済みのzoneファイルができる
    • key listを見る
% ods-ksmutil key list
Zone:                           Keytype:      State:    Date of next transition:
example.net                      KSK           active    2011-03-02 18:14:59
example.net                      KSK           ready     next rollover
example.net                      ZSK           active    2010-04-01 18:14:59
example.net                      ZSK           ready     next rollover
example.jp                       KSK           active    2011-03-02 18:15:03
example.jp                       KSK           ready     next rollover
example.jp                       ZSK           active    2010-04-01 18:15:03
example.jp                       ZSK           ready     next rollover
    • 公開鍵の取り出し(DSとか)
ods-ksmutil key export --zone example.net
or
ods-ksmutil key export --zone example.net --ds