Cum se configurează DNS-over-HTTPS pe Pi-hole pe Ubuntu Server 24.04

Pentru Pi-hole pe Ubuntu Server 24.04, direcționați cererile sale în amonte prin dnscrypt-proxyși indicați Pi-hole către listener-ul local de la 127.0.0.1#5053. Aceasta criptează traficul DNS dintre serverul dvs. și resolver-ul în amonte selectat cu DNS-over-HTTPS (DoH), în timp ce Pi-hole continuă să răspundă clienților LAN și să aplice listele sale de blocare. Pi-hole în sine nu oferă transport DoH către amonte în mod implicit; proxy-ul local furnizează acea conexiune criptată.

Există un detaliu despre versiunea curentă de știut mai întâi: Cloudflare a eliminat cloudflared proxy-dnscomanda din noile versiuni începând cu 2 februarie 2026. Tutorialele mai vechi care instalează comanda respectivă pot să nu funcționeze cu o cloudflaredversiune curentă. Pașii de mai jos utilizează dnscrypt-proxy, urmând ghidul DoH actual al Pi-hole. Această configurare este potrivită atunci când Pi-hole și proxy-ul rulează pe aceeași gazdă Ubuntu. O configurație Docker sau multi-host necesită adresare listener și reguli de firewall diferite.

Ce face și ce nu face această configurație

DNS-ul normal trimite de obicei interogări de la resolver către un furnizor DNS din amonte fără criptare a transportului. DoH transportă cererile DNS în HTTPS, ceea ce face mai dificilă citirea sau modificarea acestor cereri de către un observator de rețea între serverul Pi-hole și resolver. Pi-hole rămâne serverul DNS promovat dispozitivelor din rețeaua locală; se modifică doar calea sa din amonte.

DoH nu face activitatea DNS invizibilă pentru resolver-ul ales. Furnizorul din amonte primește în continuare interogări de la serverul dvs., iar Pi-hole poate păstra istoricul interogărilor clienților în funcție de setările sale de confidențialitate și înregistrare în jurnal. De asemenea, HTTPS nu criptează traficul web fără legătură. Dacă obiectivul dvs. este să utilizați un anumit resolver, verificați politica sa de confidențialitate și alegeți intrarea DoH din lista de resolver-e acceptate.

Înainte de a începe

  • Confirmați că Pi-hole este deja instalat și funcționează pe Ubuntu Server 24.04. Această demonstrație configurează un Pi-hole existent în loc să îl instaleze.
  • Asigurați-vă că serverul are o adresă LAN stabilă. Dacă adresa se schimbă, clienții DHCP ai routerului își pot pierde serverul DNS.
  • Să aveți acces de administrator și o modalitate de a contacta gazda Pi-hole dacă DNS-ul nu mai funcționează temporar. Evitați să faceți această modificare de la distanță printr-o conexiune care depinde de același Pi-hole pentru rezoluția numelui.
  • Înregistrați setările actuale din amonte pentru Pi-hole, astfel încât să le puteți restaura în timpul revenirii la versiunea anterioară.

Proxy-ul se va conecta doar la loopback pe portul 5053, lăsând portul 53 pentru Pi-hole. Acest lucru evită concurența cu serviciul DNS al Pi-hole și cu resolver-ul local al Ubuntu. Nu dezactivați systemd-resolveddoar pentru a face acest design să funcționeze; portul de loopback separat al proxy-ului evită acest conflict.

1. Instalați dnscrypt-proxy din depozitele de pachete Ubuntu

Proiectul dnscrypt-proxy documentează o rută de instalare a pachetului Ubuntu. Verificați dacă depozitele Ubuntu configurate oferă o variantă candidată înainte de instalare:

sudo apt update
apt-cache policy dnscrypt-proxy

Dacă rezultatul arată o versiune candidată, instalați-o:

sudo apt install dnscrypt-proxy

Dacă nu este afișat niciun candidat, nu adăugați un depozit terț fără legătură doar pentru a continua. Folosiți metoda de instalare din ghidul oficial Linux al proiectului dnscrypt-proxy, verificați versiunea și arhitectura și adaptați configurarea serviciului la acea instalare. Unitatea socket systemd și căile de configurare de mai jos se aplică configurării pachetului Ubuntu documentate de Pi-hole.

2. Mutați listener-ul proxy pe portul localhost 5053

Pi-hole folosește deja portul DNS standard 53. Configurați socket-ul proxy-ului să asculte atât TCP, cât și UDP la 127.0.0.1:5053, accesibil doar de pe aceeași gazdă. Creați un drop-in systemd:

sudo systemctl edit dnscrypt-proxy.socket

Introduceți aceste linii în editor și salvați:

[Socket]
ListenStream=
ListenDatagram=
ListenStream=127.0.0.1:5053
ListenDatagram=127.0.0.1:5053

Liniile goale ListenStream=`and` ListenDatagram=șterg valorile implicite ale pachetului înainte de setarea adreselor de înlocuire. Nu le omiteți: altfel, systemd poate păstra portul implicit pe lângă listener-ul personalizat.

3. Selectați un rezolver DoH

Deschideți fișierul de configurare al pachetului:

sudoedit /etc/dnscrypt-proxy/dnscrypt-proxy.toml

Pentru activarea socketului systemd, utilizați o listă de ascultători goală în configurația proxy. Alegeți un nume de resolver din lista curentă de resolvere publice semnate. De exemplu, următoarele selectează resolverul Cloudflare standard; ghidul Pi-hole arată, de asemenea, cloudflare-securityca exemplu, când este dorită filtrarea programelor malware la nivelul resolverului din amonte:

listen_addresses = []
server_names = ['cloudflare']

Păstrați intactă restul configurației pachetului. Numele din server_namessunt identificatori de registry, nu nume de gazdă arbitrare sau căi URL. Dacă preferați un alt furnizor, verificați dacă intrarea curentă în rezolvarea codului acceptă DoH și copiați numele său exact. Un rezolvator care filtrează programele malware sau alte categorii poate produce rezultate diferite față de un rezolvator nefiltrat.

4. Îndreptați Pi-hole către proxy-ul local

Setați adresa DNS upstream a Pi-hole la listener-ul local:

sudo pihole-FTL --config dns.upstreams '["127.0.0.1#5053"]'

Sufixul #5053este notația Pi-hole pentru portul DNS nestandard. De asemenea, puteți verifica interfața de administrare Pi-hole din Setări > DNS . Ștergeți selecțiile presetate publice pentru portul DNS și lăsați serverul personalizat 127.0.0.1#5053ca server pentru portul DNS. Menținerea unui resolver public bifat ca server pentru portul DNS suplimentar poate permite interogărilor să ocolească proxy-ul criptat, așadar eliminați aceste intrări dacă doriți ca toate interogările pentru portul DNS Pi-hole să utilizeze DoH.

5. Reporniți serviciile și verificați rezoluția

Reporniți socketul, serviciul proxy și daemonul FTL Pi-hole astfel încât să încarce noua configurație:

sudo systemctl restart dnscrypt-proxy.socket
sudo systemctl restart dnscrypt-proxy.service
sudo systemctl restart pihole-FTL.service

Verificați starea serviciului:

sudo systemctl status dnscrypt-proxy.socket
sudo systemctl status dnscrypt-proxy.service
sudo systemctl status pihole-FTL.service

Fiecare ar trebui să fie activ fără o eroare de legare sau o eroare de pornire a resolverului. Testați proxy-ul direct prin listener-ul DNS local:

dig @127.0.0.1 -p 5053 example.com

Un răspuns DNS indică faptul că proxy-ul local răspunde. Apoi testați Pi-hole pe portul 53:

dig @127.0.0.1 example.com

Verificați jurnalul de interogări sau tabloul de bord Pi-hole pentru a confirma că solicitarea a ajuns la Pi-hole și examinați jurnalul proxy-ului dacă testul eșuează:

sudo journalctl -u dnscrypt-proxy.service -b --no-pager

Pentru o verificare suplimentară, verificați în ieșirea de pornire a proxy-ului sau în jurnal pentru rezolvatorul selectat și starea protocolului DoH. O solicitare reușită digdovedește în sine că rezoluția DNS funcționează; nu dovedește, în sine, că solicitarea a folosit HTTPS.

Probleme comune și recuperare în siguranță

  • „Adresa este deja utilizată”: este posibil ca un alt proces să ocupe deja portul 5053 sau suprascrierea socketului nu a fost încărcată. Verificați listenerele cu sudo ss -lntup, examinați drop-in-ul cu systemctl cat dnscrypt-proxy.socketși confirmați că liniile de resetare goale preced intrările 5053.
  • Proxy-ul este activ, dar căutările expiră: verificați accesul HTTPS de ieșire, numele resolver-ului și jurnalele proxy-ului. Unele rețele blochează conexiunile DNS-over-HTTPS sau restricționează portul TCP 443.
  • Testul proxy funcționează, dar Pi-hole nu are niciun răspuns în amonte: confirmați că Pi-hole este setat la exact 127.0.0.1#5053, apoi reporniți pihole-FTL. Asigurați-vă că casetele de selectare standard în amonte nu oferă în mod silențios o rută alternativă.
  • Ubuntu în sine nu poate rezolva numele după modificare: această configurare modifică fișierul upstream al Pi-hole, nu pe cel al gazdei /etc/resolv.conf. Evitați înlocuirea acelui fișier sau dezactivarea systemd-resolvedca scurtătură de depanare.

Pentru revenire la configurația inițială, restaurați setarea DNS upstream înregistrată în Pi-hole și reporniți pihole-FTL. Odată ce Pi-hole nu mai indică proxy-ul, îl puteți dezactiva sau elimina dnscrypt-proxyfolosind managerul de pachete. Dacă acest server își rezolvă propriul DNS prin Pi-hole, păstrați disponibilă o cale de recuperare locală înainte de a schimba serviciile.

Ce opțiune se potrivește rețelei tale?

Folosește acest aranjament proxy cu o singură gazdă atunci când dorești filtrare DNS centralizată în Pi-hole și trafic criptat de la Pi-hole către un resolver selectat. Este relativ ușor de inspectat deoarece proxy-ul are o adresă și un port local. Dacă rulezi Pi-hole în Docker, pe un alt server sau în mai multe rețele, este posibil să ai nevoie de o adresă de rețea container în loc de loopback și trebuie să restricționezi listener-ul proxy astfel încât să nu fie expus ca un resolver deschis. Dacă ai nevoie de filtrare bazată pe politici, identitate per dispozitiv sau DNS criptat pentru dispozitivele roaming din afara casei, configurează separat acei clienți sau un gateway gestionat; conexiunea DoH în amonte a Pi-hole nu criptează automat calea fiecărui client către Pi-hole.

În cele din urmă, rețineți că un router sau un client poate ocoli Pi-hole dacă promovează un al doilea server DNS. Pentru filtrarea la nivel de rețea, oferiți clienților doar adresa Pi-hole prin DHCP și luați în considerare atât reclamele DNS IPv6, cât și IPv4. Verificați cu mai multe dispozitive după modificarea setărilor routerului, deoarece o configurație corectă a proxy-ului pe server nu poate împiedica un client să utilizeze direct un alt resolver.

Referințe oficiale

Lasă un comentariu

Descărcați FlightGear gratuit: Ghid oficial de instalare

Descărcați FlightGear gratuit: Ghid oficial de instalare

Descarcă FlightGear gratuit de pe site-ul oficial. Compară pachetele Windows, macOS și Linux, instalează fișierele de date și începe primul tău zbor.

Aplicația desktop Google Tasks: Cum se utilizează pe computer

Aplicația desktop Google Tasks: Cum se utilizează pe computer

Deschide Google Tasks într-un browser, adaugă o comandă rapidă pentru Chrome sau o lansare în stilul aplicației și gestionează activitățile de făcut în avans prin Calendar și Gmail.

OKSampler: Un sampler muzical gratuit și simplu pentru ritmuri de claviatură

OKSampler: Un sampler muzical gratuit și simplu pentru ritmuri de claviatură

OKSampler mapează clipuri MP3 pe tastele tastaturii și poate reda audio în buclă. Află ce face software-ul gratuit vechi, unde se termină funcțiile sale vechi și ce trebuie să verifici înainte de descărcare.

Cum să joci Don't Starve Together pe Linux

Cum să joci Don't Starve Together pe Linux

Instalează versiunea Linux a jocului Don't Starve Together prin Steam, creează o lume sau alătură-te prietenilor urmând acești pași de configurare și depanare.

Cum să joci Squad pe Linux cu Steam Proton

Cum să joci Squad pe Linux cu Steam Proton

Configurează Squad pe Linux cu Steam Play și Proton, instalează jocul, alege un instrument de compatibilitate și depanează problemele anti-cheat.

Cum se instalează Linux Mint Debian Edition 5 „Elsie” de pe USB

Cum se instalează Linux Mint Debian Edition 5 „Elsie” de pe USB

Descărcați și verificați fișierul ISO LMDE 5 arhivat, creați un USB bootabil și alegeți setările de instalare sigure. Elsie a ajuns la sfârșitul duratei de viață; consultați versiunea curentă a LMDE.

Cum se creează o unitate USB bootabilă cu Windows 11 pe Linux

Cum se creează o unitate USB bootabilă cu Windows 11 pe Linux

Creați un USB de instalare Windows 11 pe Linux cu Ventoy: obțineți fișierul ISO oficial, instalați Ventoy în siguranță, copiați imaginea și porniți PC-ul țintă.

Cum se instalează Wireshark pe Linux: Ubuntu, Fedora, Arch și altele

Cum se instalează Wireshark pe Linux: Ubuntu, Fedora, Arch și altele

Instalați Wireshark pe Ubuntu, Debian, Fedora, Arch sau openSUSE cu comenzile actuale ale pachetului, apoi configurați captura de pachete live în siguranță.

Cum se joacă DiRT Rally pe Linux: Configurarea Steam și remedierile Proton

Cum se joacă DiRT Rally pe Linux: Configurarea Steam și remedierile Proton

Învață cum să joci DiRT Rally pe Linux dacă îl deții deja pe Steam: instalează versiunea nativă, lansează-l și folosește Proton doar ca soluție de rezervă.

Cum se instalează Devuan Linux de pe un USB bootabil

Cum se instalează Devuan Linux de pe un USB bootabil

Instalați Devuan Excalibur din fișierul ISO Desktop Live. Verificați descărcarea, creați un USB bootabil, protejați partițiile existente și finalizați configurarea cu Refracta Installer.