Cloudron, OpenVPN, AdGuard Home virker ikke!

24. jun 2022 | Nørd Note

Dette forudsætter at du har OpenVPN, AdHome og Cloudron sat op.
Rettighedshaver: Linode

DNS oplag via OpenVPN kan ikke gå igennem AdGuard Home

Hvis du, som jeg, har brugt timer, uger og år (måske ikke uger og år) på at få din OpenVPN server instans til at route DNS via din AdGuard Home installation på din Cloudron server, så har du sikkert læst og læst, og fundet ud af at man godt kan sætte en privat DNS adresse op i OpenVPN men når du forsøger at sætte din AdGuard adresse (som jo er den samme som din Cloudron server) op som DNS så er der intet der virker.

Jeg fandt ud af at der er flere spillere der er skyld i udfordringen.

AdGuard er sin egen DNS, og i sin egen container, men har port 53 og 853 åben.
OpenVPN laver sin egen lokale DNS tjeneste
Cloudron kører unbound som DNS

Så med 3 forskellige DNS tjenester der skal spille sammen, er det lidt mere kringlet end bare at sætte en DNS i OpenVPN, og så håbe på at det virker.

Sådan foregår forespørgslerne

Hvis du forbinder til OpenVPN og laver et opslag, så foregår baggrundsforespørgslerne sådan:

  1. Du taster domæne.test
  2. OpenVPN spørger 10.8.0.1 (OpenVPN serveren selv)
  3. Opslaget går videre til Host - I dette tilfælde Cloudron
  4. Cloudron forespørger Host - I dette tilfælde Ubuntu serveren
  5. Ubuntu serveren forespørger global DNS (eller lokal)

Og det er altså her i punkt 5, vi kan introducere AdGuard Home serveren.

Sådan gør du

På din Cloudron server, altså i din Ubuntu installation skal du oprette følgende fil:

/etc/unbound/unbound.conf.d/private-dns.conf

Filen skal indeholde:

server:
    val-permissive-mode: yes

# Sæt din ipadresse på din AdGuard Home installation ved 1.2.3.4
# Det er formentlig den samme som din Cloudron server
forward-zone:
    name: "."
    forward-addr: 1.2.3.4

Gem filen og genstart unbound

    systemctl restart unbound

Hvad har det af betydning

Alle DNS forespørgsler fra din Cloudron server går nu via din valgte DNS server, så i dette tilfælde din AdGuard Home installation. Det gør sig gældende for cloudron, alle containere, og serveren selv.

Ændringer til OpenVPN

OpenVPN skal være helt standard sat op. Så du skal ikke udgive anden DNS via opsætningen i OpenVPN.

Standard DNS adressen er 10.8.0.1, som er OpenVPN containeren selv. Men i og med at den laver lokale opslag vil den forespørge Cloudron, som forespørger Ubuntu som forespørger AdGuard Home serveren.

Det er lidt en kringlet opsætning, men det virker!

0 kommentarer