- 追加された行はこの色です。
- 削除された行はこの色です。
サーバーを立ち上げて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; };
};