Состоялся релиз кэшируюшего DNS-сервера PowerDNS Recursor 4.3, отвечающего за рекурсивное преобразование имён. PowerDNS Recursor построен на одной кодовой базе с PowerDNS Authoritative Server, но рекурсивный и авторитетный DNS-серверы PowerDNS развиваются в рамках разных циклов разработки и выпускаются в форме отдельных продуктов. Код проекта распространяется под лицензией GPLv2.
Сервер предоставляет средства для удалённого сбора статистики, поддерживает мгновенный перезапуск, имеет встроенный движок для подключения обработчиков на языке Lua, полноценно поддерживает DNSSEC, DNS64, RPZ (Response Policy Zones), позволяет подключать чёрные списки. Имеется возможность записи результатов резолвинга в виде файлов зон BIND. Для обеспечения высокой производительности применяются современные механизмы мультиплексирования соединений во FreeBSD, Linux и Solaris (kqueue, epoll, /dev/poll), а также высокопроизводительный парсер DNS-пакетов, способный обрабатывать десятки тысяч параллельных запроcов.
В новой версии:
- C целью предотвращения утечек сведений о запрошенном домене и повышения приватности включён по умолчанию механизм QNAME Minimization (RFC-7816), работающий в режиме "relaxed". Суть механизма в том, что резолвер не упоминает полное имя искомого хоста в своих запросах к вышестоящему серверу имён. Например, при определении адреса для хоста foo.bar.baz.com резолвер отправит авторитетному для зоны ".com" серверу запрос "QTYPE=NS,QNAME=baz.com", не упоминая "foo.bar". В текущем виде реализована работа в режиме "relaxed".
- Реализована возможность журналирования исходящих запросов к авторитетному серверу и ответов на них в формате dnstap (для использования требуется сборка с опцией "--enable-dnstap".
- Обеспечена одновременная обработка нескольких входящих запросов, переданных через соединение TCP, с отдачей результатов по мере готовности, а не в порядке следования запросов в очереди. Лимит одновременных запросов определяется настройкой "max-concurrent-requests-per-tcp-connection".
- Реализована техника отслеживания новых доменов NOD (Newly Observed Domain), которая может использоваться для выявления подозрительных доменов или доменов, связанных с совершением вредоносной деятельности, такой как распространение вредоносного ПО, участие в фишинге и использование для управления ботнетами. Метод основан на определении доменов, к которыми ранее не было обращений, и анализе этих новых доменов. Вместо отслеживания новых доменов по полной базе всех когда-либо просмотренных доменов, поддержание которой требует значительных ресурсов, в NOD применяется вероятностная структура SBF (Stable Bloom Filter), позволяющая минимизировать потребление памяти и CPU. Для включения в настройках следует указать "new-domain-tracking=yes".
- При запуске под управлением systemd процесс PowerDNS Recursor теперь выполняется под непривилегированным пользователем pdns-recursor вместо root. Для систем без systemd и без chroot, по умолчанию для хранения управляющего сокета и pid-файла теперь используется каталог /var/run/pdns-recursor.
Кроме того, опубликован релиз KnotDNS 2.9.3, высокопроизводительного авторитетного DNS сервера (рекурсор выполнен в виде отдельного приложения), поддерживающего все современные возможности DNS. Проект разрабатывается чешским реестром имен CZ.NIC, написан на языке Си и распространяется под лицензией GPLv3.
KnotDNS отличается ориентацией на высокую производительность обработки запросов, для чего применяется многопоточная, и по большей части неблокирующая реализация, хорошо масштабируемая на SMP-системах. Предоставляются такие возможности, как добавление и удаление зон на лету, передача зон между серверами, DDNS (динамические обновления), NSID (RFC 5001), расширения EDNS0 и DNSSEC (включая NSEC3), ограничения интенсивности ответов (RRL).
В новом выпуске:
- Добавлена настройка 'remote.block-notify-after-transfer' для отключения отправки сообщений NOTIFY;
- Реализована экспериментальная поддержка алгоритма Ed448 в DNSSE (требуется GnuTLS 3.6.12+ и ещё не выпущенный Nettle 3.6+);
- В keymgr добавлен параметр 'local-serial' для получения или установки в БД KASP серийного SOA-номера для подписанной зоны;
- В keymgr добавлена поддержка импорта ключей Ed25519 и Ed448 в формате DNS-сервера BIND;
- Значение настройки 'server.tcp-io-timeout' по умолчанию увеличено до 500 ms, а 'database.journal-db-max-size' уменьшено до 512 MiB на 32-разрядных системах.
|