Внезапно появилось большое количество жалоб на неверно сконфигурированные DNS серверы (речь идет о bind), через которые можно получить сразу все сабдомены одного домена. Я не особо в курсе, кому и для чего эти записи могут быть нужны, но бдительные граждане сообщают об этом.
Считается, что в некоторых серверах могут быть «секретные IP (УРЛЫ)» (например, admin-only.gocbank.cccp), сконфигурированные через ДНС, на которые заходят только бородатые админы.
Для того, чтобы проверить ваш ДНС сервер на эту уязвимость, можно дать команду:
dig AXFR ДОМЕН-КОТОРЫЙ_СКОНФИГУРИРОВАН_НА_ДНС_СЕРВЕРЕ @IP-ДНС-Сервера
Результат верно сконфигурированного сервера, проверяем:
$ dig AXFR vps-server.ru @ns2.vps-server.ru
; <<>> DiG 9.8.1-P1 <<>> AXFR vps-server.ru @ns2.vps-server.ru
;; global options: +cmd
; Transfer failed.
Неверный ответ будет гораздо длиннее:
dig AXFR vps-server.ru @ns2.vps-server.ru
; <<>> DiG 9.8.1-P1 <<>> AXFR vps-server.ru @ns2.vps-server.ru
;; global options: +cmd
vps-server.ru. 3600 IN SOA ns1.vps-server.ru. support.vps-server.ru. 2011072885 10800 3600 604800 86400
vps-server.ru. 3600 IN NS ns1.vps-server.ru.
vps-server.ru. 3600 IN NS ns2.vps-server.ru.
vps-server.ru. 3600 IN TXT "v=spf1 a mx ip4:94.23.207.7 a:vps-server.ru a:billing.vps-server.ru include:_spf.google.com ~all"
vps-server.ru. 3600 IN A 94.23.207.7
bcp.vps-server.ru. 3600 IN A 37.187.92.184
billing.vps-server.ru. 3600 IN A 94.23.207.7
h1.vps-server.ru. 3600 IN A 188.165.254.14
h3.vps-server.ru. 3600 IN A 142.4.215.91
h4.vps-server.ru. 3600 IN A 188.138.92.17
h5.vps-server.ru. 3600 IN A 91.121.123.54
h6.vps-server.ru. 3600 IN A 91.121.120.226
loft1916.vps-server.ru. 3600 IN A 85.25.73.180
loft8019.vps-server.ru. 3600 IN A 188.138.124.20
ns1.vps-server.ru. 3600 IN A 91.121.120.228
ns2.vps-server.ru. 3600 IN A 188.138.93.111
ru.vps-server.ru. 3600 IN A 91.215.138.18
wiki.vps-server.ru. 3600 IN A 62.75.196.123
www.vps-server.ru. 3600 IN A 94.23.207.7
vps-server.ru. 3600 IN SOA ns1.vps-server.ru. support.vps-server.ru. 2011072885 10800 3600 604800 86400
;; Query time: 57 msec
;; SERVER: 188.138.93.111#53(188.138.93.111)
;; WHEN: Tue Nov 17 00:10:27 2015
;; XFR size: 29 records (messages 1, bytes 781)
Если ваш сервер отдает все имеющиеся записи, то добавьте в конфиг bind следующую строчку:
allow-transfer {"none";};
И перезагрузите сервер ДНС:
# rndc reload
server reload successful
Вариант хорош, как я понимаю, для случая, когда у вашего домена нет сторонних Secondary DNS. Если же они есть, им запрещать скачивать доменную зону несколько глупо. А если они у провайдеров, у которых эти самые Secondary DNS сами в ротации, и вообще нет гарантии, что скачиванием зоны занимается тот же, кто её отдаёт, задача фильтрации по IP перестаёт быть тривиальной…