LINUX.ORG.RU
ФорумAdmin

debian 7+ bind9 забивает ОЗУ и своп

 , , ,


0

2

Привет всем. прошу подсказать.. имею ОС linux Debian 7 VM 2Гб ОЗУ и 2 ядра, установлен первичный кэширующий DNS bind9 версии 9.8.4, 4 зоны (несколько сайтов, и другие веб-страницы доступные за NAT).Наблюдается проблема. Процесс named жрет оперативную память,ежедневно около 50мб (когда больше когда меньше), до тех пор,пока не закончится ОЗУ и своп, затем ядро отключает службу bind9 как результат все сайты и веб страницы не доступны.. Обнаружил проблему, запустив htop далее мониторил процессы, остановка службы bind9 приводит к высвобождению памяти.Нагрузка на ядра не превышает 7% иногда бывают скачки до 40%. Сам bind9 до возникновения проблемы работал 5 лет без проблем;

в логах сыпятся записи : named[2317]: error (network unreachable) resolving ‘digid-rm-dev.realreal.shop/A/IN’: 2400:cb00:2049:1::a29f:1b9e#53

named[2317]: error (unexpected RCODE REFUSED) resolving ‘idm-jci-security.realreal.shop/A/IN’: 162.159.25.5#53

-отключил эти запросы, отключив IPv6 и добавил в конфиг max-cache-size

named.conf.options

options {
directory "/var/cache/bind";
dnssec-validation auto;
auth-nxdomain no;    
listen-on-v6 { none; };
max-cache-size 1024m;
allow-query { any; };

в named.conf в качестве server указаны dns 8.8.8.8; 78.88.8.8

проблема не ушла.подскажите пожалуйста на что стоит обратить внимание? спасибо всем за ответы



Последнее исправление: texac12 (всего исправлений: 3)
Ответ на: комментарий от AS

создался файл в /var/lib/cache/.db - его после теста могу удалить? вообще интересно что там по умолчанию.. сервер достался по наследству- думаю везде там any. allow-recursion { тут указать доверенные подсети; }; такой должен вид быть? спасибо

texac12
() автор топика
Ответ на: комментарий от texac12

создался файл в /var/lib/cache/.db - его после теста могу удалить?

Да, он нужен только на посмотреть. Но, сначала, оставь (переименуй только, а то перепишется заново). Смысл посмотреть, на сколько он вырастет, и что туда попадёт, например, к завтрашнему дню.

allow-recursion { тут указать доверенные подсети; }; такой должен вид быть?

да

AS ★★★★★
()
Ответ на: комментарий от vel

allow-recursion есть в 9.8

Это практически изначально есть. Я не помню, когда не было. Я про rate-limit не сразу вспомнил, когда появилось, смотреть пришлось.

AS ★★★★★
()
Ответ на: комментарий от texac12

имеет очень много записей со «странными» IP адресами

Вот кто-то про них спрашивает. Ищи кто. Это должно быть в логе, но, может быть, это надо включить. Как-то так:

logging {
  category queries {log_queries;};
}
Это вне секции options.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 2)
Ответ на: комментарий от texac12

то есть в самом named.conf указать?

Это уж я не знаю. Можно и в named.conf. Он же многофайловый может быть, как оно в Debian сам смотри. Но logging {} - отдельная секция. Параметров там тоже больше одного.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)

Просто на всякий случай: поддержка Debian 7 закончилась 5 лет назад.

В том ПО с тех пор нашли уйму уязвимостей, которые никто не фиксил давным-давно, конечно.

Если в закрытой сети, то ладно. Но если смотрит в Интернет — это не очень, мягко говоря. Именно благодаря таким серверам у Linux на самом деле очень скверная статистика взломов.

Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от anc

файл /var/cache/.db вырос с 20мб до 46мб. Настроил логи, в них есть записи похожие на те которые были, вот фрагмент помогите плиз с расшифровкой

validating @0x7fd4f6220e00: 8829d8c57060.gr7.us-east-1.eks.elb.learn.consensys.net A: no valid signature found
error (unexpected RCODE REFUSED) resolving 'ns500292.ns500250.ns500262.ns500250.ns500271.ns500259.ns500270.ns500250.ns500249.ns500259.ns500202.ns500250.ns500202.ns500250.ns500249.ns500245.ns500225.ns500219.hereyourhotlady.com/AAAA/IN': 34.173.156.107#53
error (unexpected RCODE REFUSED) resolving 'amedd.range86-539-office.eks-cluster-dev-7.eks.dev.tkwy.io/A/IN': 205.251.196.214#53
dispatch 0x7fd4e8000e80: shutting down due to TCP receive error: 162.93.239.1#53: connection reset
texac12
() автор топика
Ответ на: комментарий от anc
lame server resolving 'dollarspay111.pages.dev' (in 'dollarspay111.pages.dev'?): 172.64.34.90#53

записи такого типа еще есть, при чем летят они по 6-8 в секунду, лог разрастается быстро Подскажите , как избавиться от этих запросов? Большое всем спасибо

texac12
() автор топика

Может это: 10 лет назад я вкл днс на своей машинке. И тут началось! Перегрев машинки и загруз. Погуглил. Меня и такиж же обзывали пиdopa.. и прочими нехорошими словами. Старая версия днс=сервера отвечала на определенные запросы 1 к 69. Забивала канал. Вообщем проперся я тогда.

Boatmen
()
Последнее исправление: Boatmen (всего исправлений: 1)
Ответ на: комментарий от texac12

поможет ли в данном случае allow-recursion

Мухи отдельно, котлеты отдельно.

или нужно настраивать firewall

Мухи отдельно, котлеты отдельно.

Надеюсь поняли намек :)

anc ★★★★★
()
Ответ на: комментарий от AS
23-Jun-2023 13:38:39.645 queries: info: client 45.174.80.209#28578: query: higi.com IN ANY +E (192.168.67.13)
23-Jun-2023 13:38:39.676 queries: info: client 213.133.123.162#52471: query: hjfepc03.s3.amazonaws.com IN CNAME + (192.168.67.13)
23-Jun-2023 13:38:39.678 queries: info: client 141.8.180.56#37517: query: ns2.standart-n.RU IN A -EDC (192.168.67.13)
23-Jun-2023 13:38:39.678 queries: info: client 141.8.180.56#15073: query: ns1.standart-n.RU IN A -EDC (192.168.67.13)
23-Jun-2023 13:38:39.689 queries: info: client 45.174.80.209#28578: query: higi.com IN ANY +E (192.168.67.13)
23-Jun-2023 13:38:39.691 queries: info: client 45.174.80.10#27582: query: higi.com IN ANY +E (192.168.67.13)
23-Jun-2023 13:38:39.696 queries: info: client 45.174.80.10#27582: query: higi.com IN ANY +E (192.168.67.13)

то есть правильно понимаю слева клиенты с IP опрашивают доменные имена higi.com и другие через наш DNS 67.13?

texac12
() автор топика

Чтобы посмотреть кто что спрашивает и что получает в ответ не нужно ничего делать с named.

tcpdump -ni any -s0 -w /tmp/x.pcap -v '(dst host X and dst port 53) or (src host X and src port 53)'

X - внешний адрес хоста named.

потом посмотреть «tcpdump -nvvr /tmp/x.pcap»

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от texac12

то есть правильно понимаю слева клиенты с IP опрашивают доменные имена higi.com и другие через наш DNS

Да. Причём эти IP - вероятно адреса жертв твоего DNS, если это не твои адреса конечно. Если higi.com не твой домен. И hjfepc03.s3.amazonaws.com тоже.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 1)
Ответ на: комментарий от texac12

192.168.1.0/24; 192.168.2.0/24,

Сделал бы 192.168.0.0/16, всё равно приватные.

они не смогут сделать рекурсивный запрос через меня?

Если так сделать, то да.

AS ★★★★★
()