Перейти до вмісту
InstagramYouTubeFacebook

Tutorial

Налаштування DNS over HTTPS на MikroTik

Налаштуйте DNS over HTTPS (DoH) на MikroTik RouterOS v7 з Cloudflare, щоб шифрувати DNS-запити та блокувати стеження провайдера.

Короткий огляд DNS over HTTPS (DoH) на MikroTik RouterOS v7 шифрує кожен DNS-запит, який роутер вирішує, приховуючи адреси відвідуваних сайтів від провайдера й від будь-якого зловмисника в локальній мережі. Налаштування — три короткі кроки: імпортувати кореневий CA, спрямувати IP → DNS на https://1.1.1.1/dns-query Cloudflare та перевірити зашифрований шлях із боку клієнта. Цей посібник проходить кожен крок разом із перевірками траблшутингу, що ловлять два найпоширеніших сценарії відмови.

Як працює DNS over HTTPS на MikroTik?

DNS over HTTPS — це протокол, що загортає DNS-запити у звичайне HTTPS-з’єднання (порт 443) замість надсилання їх відкритим текстом по UDP-порту 53. На роутерах MikroTik у RouterOS v7 вбудовано рідний DoH-клієнт: після налаштування роутер стає єдиним захищеним резолвером для кожного пристрою в LAN, і провайдер втрачає змогу логувати або фільтрувати DNS-запити за доменами.

У реалізації три рухомі частини. По-перше, роутеру потрібен кореневий сертифікат CA, щоб перевірити TLS-handshake з постачальником DoH. По-друге, DNS-підсистема вказує на DoH-URL замість IPv4-нейм-сервера. По-третє, кожен клієнт у LAN використовує сам MikroTik як свій DNS-сервер — інакше трафік повністю обходить зашифрований шлях.

Передумови

Перед стабільною роботою DoH мають виконуватися дві умови:

Системний годинник має бути точним. У TLS-сертифікатів є вікна валідності; роутер, годинник якого зсунутий навіть на кілька хвилин, відхилить handshake, і DNS мовчки перестане резолвити. Відкрийте System → Clock, перевірте дату й час, увімкніть NTP-клієнт для синхронізації.

Роутер має працювати на RouterOS v7. Раніші версії мали часткову підтримку DoH, але їм бракувало стабільності шифрів, потрібної для продакшну з Cloudflare або Google.

Крок 1: Імпортувати кореневий сертифікат CA

MikroTik повинен довіряти центру сертифікації, що підписав DoH-endpoint Cloudflare. Без цього TLS-handshake зривається, і DoH не ініціалізується.

  1. Відкрийте Terminal у Winbox.

  2. Завантажте кореневий CA:

    /tool fetch url=https://ssl.com/repo/certs/SSLcomRootCertificationAuthorityECC.pem
  3. Імпортуйте його в сховище сертифікатів:

    /certificate import file-name=SSLcomRootCertificationAuthorityECC.pem passphrase=""
  4. Підтвердіть у System → Certificates — CA має з’явитися у списку.

Сховище сертифікатів MikroTik з імпортованим кореневим CA

Крок 2: Налаштувати DoH-резолвер

Коли CA здобув довіру, спрямуйте DNS-підсистему на Cloudflare.

  1. Перейдіть у IP → DNS.
  2. Встановіть Use DoH Server = https://1.1.1.1/dns-query.
  3. Поставте Verify DoH Certificate — саме це робить з’єднання справді безпечним.
  4. Поставте Allow Remote Requests, щоб клієнти LAN могли використовувати MikroTik як DNS-шлюз.
  5. За бажання очистіть застарілі відкритотекстові резолвери зі списку Servers, аби жоден запит не виходив незашифрованим.
Панель IP DNS MikroTik з URL DoH-сервера та ввімкненою опцією Verify DoH Certificate

Крок 3: Перевірити зашифрований шлях

Роутер уже використовує DoH для своїх запитів, але треба переконатися, що клієнти теж проходять через нього.

  1. На клієнті в LAN задайте DNS, рівне LAN-IP MikroTik (push DHCP зазвичай робить це автоматично, коли DNS роутера — єдиний запропонований).
  2. Відкрийте https://1.1.1.1/help у браузері.
  3. Дочекайтеся діагностичної таблиці. Знайдіть Using DNS over HTTPS (DoH) — має бути Yes.
Сторінка help Cloudflare підтверджує, що DNS over HTTPS активний

Траблшутинг

Якщо сайт не резолвиться, причина майже завжди одна з двох: зсув годинника, що ламає перевірку сертифіката, або відсутній кореневий CA. Спершу подивіться лог:

/log print where message~"doh"

Рядок з SSL error чи certificate not trusted указує на кореневий CA або годинник. Рядок з timeout — на досяжність аплінку: перевірте, що ваш WAN може дістатися 1.1.1.1 на порту 443. Докладніше про обмеження доступу до керування, поки ви вже у IP → DNS, див. наш посібник із блокування трафіку за країною або туторіал із фільтрування AdList на MikroTik для багаторівневого захисту на основі DNS.

Поради

  • Прив’яжіть NTP-джерело до публічного сервера stratum-1 (time.cloudflare.com — гарний варіант): зсув годинника залишається найчастішою причиною падінь DoH.
  • Вимкніть DNS-форвардери на клієнтських машинах (у Chrome та Firefox є власні налаштування DoH), щоб політика діяла тільки на роутері.
  • Задокументуйте один резервний шлях резолвера для оператора — якщо кореневий CA несподівано вичерпає термін, LAN втратить DNS, доки не імпортується новий CA.

Масштабуйте це на кожен майданчик

Налаштувати DoH на одному роутері — п’ятнадцять хвилин. Зробити те саме на п’ятдесяти філіях — кожна зі своїм зсувом годинника, власним циклом продовження сертифіката, власними дивними firewall-правилами — задача зовсім іншого рівня.

MKController розгортає однакову конфігурацію DoH та однаковий набір кореневих CA на кожен MikroTik вашого парку однією операцією. Коли сертифікат наближається до завершення або віддалений годинник починає виходити за поріг NTP, дашборд попередить вас раніше, ніж клієнти помітять зникнення DNS.

Розпочніть безкоштовний тестовий період MKController