サーバーを立ち上げてDNSサーバーをプライマリーにて運用していたところ、ある日あなたのサーバーから大量のデータ送信が送られ、攻撃を受けたとお叱りを受けました。 どうやらDNSのキャッシュ機能を悪用したDDoS攻撃の踏み台にされていたようです。 DNSにはBIND9をしており、以下のような対策をしたので、メモしておきます。 *BINDを最新バージョンにする [#eec504c1] # yum update bind *問い合わせを受け付けるネットワークを制限する [#q9a21e0d] 条件 -プライマリサーバーのIPは192.168.0.2 -セカンダリサーバーのIPは192.168.0.3 -プライマリで運用しているドメインはexample.com -セカンダリで運用しているドメインはexample2.com # vi /etc/named.conf // 許可するネットワークを定義 acl my-network { 192.168.0.2/32; }; options { directory "/var/named"; dump-file "/var/named/data/cache_dump.db"; statistics-file "/var/named/data/named_stats.txt"; recursion yes; // キャッシュサーバーの場合 yes // 問い合わせを許可するネットワーク allow-query { localhost; my-network; }; allow-transfer { none; }; // 転送は全部拒否 }; zone "example.com" IN { type master; file "example.com"; allow-query { any; }; // 公開するゾーンなのでどこからでも問い合わせOK allow-transfer { 192.168.0.3; // セカンダリに転送許可 }; }; zone "example2.com" { type slave; file "example2.com"; masters { 192.168.0.2; }; allow-query { any; }; };