Добрый день!
Существует такой вид DDOS, как DNS Amplification attack. В этой заметке я опишу, как защититься от него на примере BIND. Данная заметка актуальна для Debian 5/6/7, Ubuntu 10.04/12.04 и CentOS 5.4-6.4 - на этих системах я тестировал лично.
# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, запись:
recursion no;
После чего перезапускаем BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, записи:
recursion yes;
allow-recursion {localhost; }
Или же можно записать:
allow-recursion { "none"; }
Но данная запись мне кажется излишней, так как она эквивалентна записи в первом примере.
И перезапускаем BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
Так же, что бы случайно не отдать все свои зоны злоумышленнику AXFR-возвращение:
Debian/Ubuntu:
# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, запись:
allow-transfer { none; } - Если у нас нет вторичных серверов DNS.
Или
allow-transfer { 192.168.1.100; } - Указав IP-адрес вторичного сервера.
И перезапустим BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
Теперь получить ваши зоны сможет либо никто (none) либо определенный DNS-сервер (192.168.1.100).
Удачи в работе с DNS!
Существует такой вид DDOS, как DNS Amplification attack. В этой заметке я опишу, как защититься от него на примере BIND. Данная заметка актуальна для Debian 5/6/7, Ubuntu 10.04/12.04 и CentOS 5.4-6.4 - на этих системах я тестировал лично.
1. Отключить рекурсивные запросы
Debian/Ubuntu:# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, запись:
recursion no;
После чего перезапускаем BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
2. Разрешаем рекурсивные запросы, только для локалхосте:
Debian/Ubuntu:# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, записи:
recursion yes;
allow-recursion {localhost; }
Или же можно записать:
allow-recursion { "none"; }
Но данная запись мне кажется излишней, так как она эквивалентна записи в первом примере.
И перезапускаем BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
3. Защита от AXRF-возвращения
Так же, что бы случайно не отдать все свои зоны злоумышленнику AXFR-возвращение:Debian/Ubuntu:
# vim /etc/bind/named.conf.options
CentOS:
# vim /etc/named.conf
И добавляем в секцию Options { ... } или если ее нет, добавляем и саму секцию, запись:
allow-transfer { none; } - Если у нас нет вторичных серверов DNS.
Или
allow-transfer { 192.168.1.100; } - Указав IP-адрес вторичного сервера.
И перезапустим BIND:
Debian/Ubuntu:
# sudo /etc/init.d/bind restart
CentOS:
# service named restart
Теперь получить ваши зоны сможет либо никто (none) либо определенный DNS-сервер (192.168.1.100).
Удачи в работе с DNS!
Комментариев нет:
Отправить комментарий