概要
いよいよ2017年9月19日が迫ってきた。DNSのルートゾーンにおける鍵(KSK)の更新が行われることにより以下、2つの事象が発生する可能性があり、インターネットの利用に問題が発生するかもしれない。前提条件
BIND 9.7以降事象1
内容
ルートゾーンから転送される一部のDNS応答のサイズが一時的に大きくなる。 サイズの大きいDNS応答を受け取れない場合、DNSサービスを正常に提供できなくなり、インターネットの利用に問題が発生する。KSKロールオーバーの更新作業中にDNS応答のサイズが増大するタイミングは以下の通り。これらのタイミングでは、パケットサイズがVPN等のネットワークで用いられるデフォルトMTU値(1280バイト)を超えるため、IPフラグメンテーションが発生しやすくなる。
日付 | 応答サイズ(単位:バイト) |
---|---|
2017/9/19 | 1414 |
2017/12/20 | 1414 |
2018/1/11 | 1424 |
対処
TCP53番ポート宛の通信がサーバ、ネットワーク経路上で許可されていることを確認する。(DNSSECの有無に関係無く)通常、DNSとのやりとりはUDPで行われるが、DNS応答のサイズがしきい値を超える場合、TCPフォールバック機能により、TCPでやりとりが行われるため。 しきい値は、自サーバと問合せ先のサーバでEDSN0が有効な場合、自サーバのedns-udp-sizeか、問合せ先サーバのmax-udp-size、どちらか小さい値となる。なお、EDSN0が無効の場合は、512バイトがしきい値となる。
また、IPフラグメンテーションによる通信の失敗を防ぐため、しきい値は1216バイト(1280-64)に変更する。
options {
edns-udp-size 1216;
max-udp-size 1216;
}
#server IPアドレス {
# edns yes;
#}
Note: 特に指定が無い場合のデフォルト値
edns yes;
edns-udp-size 4096;
max-udp-size 4096;
事象2
内容
古い鍵(KSK)ではDNS応答の正当性を検証できなくなるため、DNSサービスを正常に提供できなくなり、インターネットの利用に問題が発生する。対処
DNSSECが有効かどうかを確認する。(BIND 9.5以降、デフォルトで有効) named.confでdnssec-enableとdnssec-validationが明示的に"no"に設定していなければ、デフォルトでDNSSECが有効になっている。 しかし、named.confの"trusted-keys"や"managed-keys"で公開鍵を設定していなければ、DNSSECが機能することはない。DNSSECが機能する場合、トラストアンカーの自動更新"managed-keys"を設定する。
# cat /etc/named.conf | grep include
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
# cat /etc/named.root.key
managed-keys {
# ROOT KEYS: See https://data.iana.org/root-anchors/root-anchors.xml
# for current trust anchor information.
#
# This key (19036) is to be phased out starting in 2017. It will
# remain in the root zone for some time after its successor key
# has been added. It will remain this file until it is removed from
# the root zone.
. initial-key 257 3 8 "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0=";
# This key (20326) is to be published in the root zone in 2017.
# Servers which were already using the old key should roll to the
# new # one seamlessly. Servers being set up for the first time
# can use either of the keys in this file to verify the root keys
# for the first time; thereafter the keys in the zone will be
# trusted and maintained automatically.
. initial-key 257 3 8 "AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3 +/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF 0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=";
};
Tip: managed-keysに設定するKSK公開鍵の入手方法
# dig . dnskey | grep -w 257 > root-ksk.key
# cat root-ksk.key
. 69819 IN DNSKEY 257 3 8 AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq QxA+Uk1ihz0=
. 69819 IN DNSKEY 257 3 8 AwEAAaz/tAm8yTn4Mfeh5eyI96WSVexTBAvkMgJzkKTOiW1vkIbzxeF3 +/4RgWOq7HrxRixHlFlExOLAJr5emLvN7SWXgnLh4+B5xQlNVz8Og8kv ArMtNROxVQuCaSnIDdD5LKyWbRd2n9WGe2R8PzgCmr3EgVLrjyBxWezF 0jLHwVN8efS3rCj/EWgvIWgb9tarpVUDK/b58Da+sqqls3eNbuv7pr+e oZG+SrDK6nWeL3c6H5Apxz7LjVc1uTIdsIXxuOLYA4/ilBmSVIzuDWfd RUfhHdY6+cn8HFRm+2hM8AnXGXws9555KrUB5qihylGa8subX2Nn6UwN R1AkUTV74bU=
参考
- https://www.nic.ad.jp/ja/dns/ksk-rollover/
0 件のコメント:
コメントを投稿