Windows ServerでDMZ上にDNSを建てているが、設定で失敗した話。
Windwos ServerのDNSはデフォルトで、「再帰を無効にする」がチェックされていない。

この状態だと、自身のドメイン以外のクエリ要求に対しても検索を行なってしまう。
つまり、オープンリゾルバ状態となってしまう。
今までは、この状態でも特に問題は無かったのだが、ある日突然、インターネット回線が輻輳状態になってしまった。
WireSharkでパケットキャプチャし、解析を行なったところ、上記のオープンリゾルバ状態を狙った攻撃であった。
1秒間に多数のDNSクエリが複数IP(多分、偽装)から要求され、それぞれの要求に対して検索,回答を行なっていたため、回線が輻輳した模様。
DNS設定を見直し、「再帰を無効にする」にチェックをいれ、かつ、DNSにフィルタを付与して余計な回答を返さないようにした所、輻輳は止まった。
フィルタは以下のような感じ。
# Query Type ANYを無視
Add-DNSServerQueryResolutionpolicy -Name "IgnoreANY" -Action Ignore -QType "EQ,ANY" -PassThru
# Query Type TXTを無視(自ドメイン除く)
Add-DNSServerQueryResolutionpolicy -Name "IgnoreTXT" -Action Ignore -QType "EQ,TXT" -FQDN "NE,<MyDomain>" -PassThru皆さんもDMZ等にWindows Server DNS設定する場合は、気を付けてね。




Users Today : 2
Users Yesterday : 31
Users Last 7 days : 374
Users Last 30 days : 964
Users This Month : 142
Users This Year : 7305
Total Users : 101820
Views Today : 2
Views Yesterday : 36
Views Last 7 days : 424
Views Last 30 days : 1134
Views This Month : 160
Views This Year : 8707
Total views : 141153
Who's Online : 0