
Пассивно-рекурсивный DNS-демон, который записывает все DNS-запросы и ответы, обеспечивая видимость сети, обогащение логов EDR/IR и сбор пассивных DNS-данных для разведки угроз.
Пассивно-рекурсивный DNS-демон.

go get github.com/korc/PR-DNSd
sudo setcap cap_net_bind_service,cap_sys_chroot=ep go/bin/PR-DNSd
go/bin/PR-DNSd -upstream 9.9.9.9:53 -listen 127.0.0.1:53
echo nameserver 127.0.0.1 | sudo tee /etc/resolv.conf
dig google.com
dig -x $(dig +short google.com)
Если вы не можете использовать setcap, вам нужно использовать опции -chroot "" и -listen :<high_port>, или запускать от root.
netstat/tcpview/lsof и т.д.После соответствующего setcap выполните:
PR-DNSd -tlslisten :853 -cert YOUR_SERVER_CRT_KEY_PEM -upstream 1.1.1.1:53 -store pr-dnsd
-cert string
Сертификат TCP-TLS слушателя (обязателен для tls listener)
-chroot string
Каталог для chroot после запуска (по умолчанию "/var/tmp")
-count int
Количество ответов до применения задержки дебаунса (по умолчанию 100)
-ctmout string
Тайм-аут клиента для вышестоящих запросов
-debounce string
Требуемая длительность между UDP-ответами на один IP для предотвращения DoS (по умолчанию "200ms")
-key string
Ключ сертификата TCP-TLS (по умолчанию такой же, как значение -cert)
-listen string
Адрес прослушивания (по умолчанию ":53")
-silent
Не сообщать обычные данные
-store string
Сохранять PTR-данные в указанный файл
-tlslisten string
Адрес TCP-TLS слушателя (по умолчанию ":853")
-upstream string
Вышестоящий DNS-сервер (префикс tcp-tls:// для DoT) (по умолчанию "1.1.1.1:53")
(при использовании tls и chroot убедитесь, что ca-certificates и resolv.conf в chroot настроены правильно)