Sa RouterOS verzijom v6.47 dolazi dugo čekana DNS-over-HTTPS (DoH) integracija u Mikrotik ruterima.
DoH inače koristi HTTPS protokol pri slanju i primanju DNS zahtjeva za bolju data integraciju i eliminira “man in the middle attacks” (MITM). Nije kompatibilan sa FWD statičkim unosima.
Minimalno tri stvari / informacije su nam potrebne za konfiguraciju:
- root CA certifikat DOH servera
- hostname DoH servera
- jedan DNS server
CA Certifikat
Do certifikata možemo doći na više načina, npr. koristeći Firefox Browser: Page Info > Security > View Certificate
, gdje možete direktno skinuti, snimiti certifikat. Nakon toga certifikat upload-ujete u Mikrotik ruter preko ftp-a ili koristeći winbox ili webfig komandom: file > upload
.
Ako koristite openssl do certifikata možete doći ovako:
$openssl s_client -showcerts -servername server -connect server:443 > cacert.pem |
Importovanje CA certifikata u Mikrotik ruter
Uvijek, odnosno preporučuje se, koristiti web stranicu izdavača certifikata za preuzimanje: fetch
/ curl
root CA certifikata, u nastavku primjer imortovanja Let's Encrypt certifikata koji koristi OpenDNS.tool > fetch Manual:Tools/Fetch
/tool fetch url="https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem" |
Ili ako smatrate zgodnim, možete skinuti sve certifikate eksportovane iz Mozilla: curl.se
$curl https://curl.se/ca/cacert.pem > cacert.pem |
tool > fetch curl.se
/tool fetch url="https://curl.se/ca/cacert.pem" |
DNS konfiguracija na Mikrotik ruteru
Set-ovanje DNS-over-HTTPS server hostname-a, u ovom primjeru konfigurišemo prema NextDNS parametrima:ip > dns Manual:IP/DNS
/ip dns set use-doh-server=https://dns.nextdns.io/cecaf6 verify-doh-cert=yes |
I naravno, potrebne su nam DNS IP adrese od provajdera:ip > dns > static Manual:IP/DNS
/ip dns static |
Postavke dinamičkih naspram gore navedenih statičkih IP adrese:ip > dns Manual:IP/DNS
/ip dns |
Nakon set-ovanja DNS-over-HTTPS:
/ip dns cache flush |
Za čišćenje postojećeg keša ⚡. Potrebno je i par minuta pričekati kako bi nove DNS postavke prodisale, i naravno vrijeme na ruteru treba da je usklađeno:
/system ntp client |
Debug
Ispis grešaka u log :system > logging
/system logging |
Praćenje log-a :log >
/log |
Riješenje za par problema:
- Certifikat ili nije importovan ili je neispravan connection error: SSL: handshake failed
- DoH server nije upisan valjano connection error: resolving error
Debug pomoću torch
alata:
Pokrenite Torch na WAN-u i gledajte da nema UDP i TCP konekcija na port 53.
DNS leak test:
www.dnsleaktest.com |
Cloudflare DOH primjer
Konfiguracija DNS-a na Mikrotik ruteru :ip > dns
/ip dns |
Provjera konekcije na 1.1.1.1 :link
https://1.1.1.1/help |
Rezultat koji trebate dobiti: