Installation och konfiguration av dnscrypt-proxy + dnsmasq i Archlinux

Inledning: 
  

Vad är dnscrypt-proxy?
- DNSCrypt krypterar och autentiserar DNS-trafik mellan användaren och DNS-resolvern, förhindrar lokal falsk förfalskning av DNS-frågor, vilket säkerställer att DNS-svar skickas av den valda servern. (wiki)

Vad är dnsmasq?
- dnsmasq tillhandahåller tjänster som DNS-cache och DHCP-server. Som en domännamnsserver (DNS) kan den cacha DNS-frågor för att förbättra anslutningshastigheter till tidigare besökta webbplatser, och som en DHCP-server kan dnsmasq användas för att tillhandahålla interna IP-adresser och rutter till datorer på ett LAN. En eller båda av dessa tjänster kan implementeras. dnsmasq anses vara lätt och lätt att konfigurera; Den är utformad för användning på en persondator eller för användning i ett nätverk med färre än 50 datorer. Den levereras också med en PXE-server. (wiki)

Vad använde jag?:
- För att redigera de konfigurationsfiler jag använde nano.
- Jag gjorde det alltid med mitt rotkonto, men om de har konfigurerat sudo, de kan använda det tyst.
- För att kontrollera cachen med dig-kommandot finns det i bind-tools
inom de officiella förvaren, pacman -S bindverktyg 🙂

installation:

  • Som root eller med sudo i vår terminal eller tty installerar vi paketet dnscrypt-proxy och dnsmasq så här:
  • Varningsmeddelandet beror på att jag redan har installerat dem, du måste bara bekräfta genom att trycka på Enter:

Miljö:

1 - Låt oss aktivera dnscrypt-proxy (kom ihåg som root eller använd sudo):


2 - Nu redigerar vi filen / Etc / resolv.conf och i nameserver tar vi bort det som finns där och lägger 127.0.0.1 (om de vill kan de säkerhetskopiera filen) och det ska se ut så här:

  • Med tanke på att NetworkManager skriver filen resolv.conf, ska vi skydda den mot att skriva med följande kommando:


    3 - Nu ska vi leta efter en server som ligger närmast vår plats, men du kan använda den som kommer som standard dnscrypt.eu-nl, listan kan öppnas med localc är här: / usr / share / dnscrypt-proxy / dnscrypt-resolvers.csv så här:

  • Om vi ​​vill ändra servern som löser standard DNS kan vi redigera så här:
  • I slutet av filen i avsnittet [Service] ändrar vi vad som är valt i grått och vi placerar servern som vi redan har valt i listan:


    4 - Som standard använder dnscrypt-proxy port 53, eftersom dnsmasq gör det också, så vad vi ska göra är att ändra det med hjälp av igen med:
    systemctl redigera dnscrypt-proxy.service –fullt och i avsnittet [Socket] lämnar vi det enligt följande:

Vi sparar ändringarna och stänger.

5 - Nu konfigurerar vi dnsmasq, vi kommer att redigera filen /etc/dnsmasq.conf och lägga till dessa tre rader i slutet:

inte löst
server = 127.0.0.1 # 40
lyssningsadress = 127.0.0.1

Vi sparar ändringarna och stänger.

6 - Nu gör vi följande:
- Vi startar om dnscrypt-proxy:
systemctl startar om dnscrypt-proxy
- Vi aktiverar dnsmasq:
systemctl aktiverar dnsmasq
- Vi kör dnsmasq:
systemctl starta dnsmasq
- Vi startar om vår internetanslutning:
systemctl starta om NetworkManager

7 - Nå testar vi om det verkligen fungerar med en ping till exempel till google.com.ar:

8 - Vi kontrollerar om dns-cache fungerar med dig-kommandot:

- Här tar vi hänsyn till att den första grävningen jag gör är en fördröjning på 349 msek och när jag gör frågan igen med dig, vad händer? 0 ms, så det cachas korrekt.

9 - Klar dnscrypt-proxy och dnsmasq konfigurerad och fungerar korrekt!

Obs: Jag vill klargöra efter sökning på flera ställen att det inte fungerade för mig på något sätt som de visade i arch wiki, den spanska versionen är dåligt översatt (det kommer att vara en fråga om någon översätter bra eller jag kommer att göra det någon gång) så jag använde versionen i Engelsk. Så jag litade i princip på nämnda wiki, alla poäng till dem. I det här fallet är det här stegen jag använde och det fungerade för ME.
Eventuella frågor eller besvär de har låtit mig veta och vi kommer att prata om det tills det fungerar!

Målkram! 😀


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   namnlös sade

    Jag märker ingen skillnad med dnsmasq, kanske med fler användare kommer cachen att fungera, åtminstone med bara min dator såg jag inte förändringar i hastigheten.

    gräva gånger med och utan dnsmasq förbli densamma, kanske någon känner till en annan metod och delar den.
    hälsningar

    1.    is sade

      Som du ser på skärmen kan du se MYCKET skillnad, jag antar att det kommer att bero på bandbredden också ...

  2.   namnlös sade

    Bifogad bild :
    imgur .com / 9RQ7yhF.png

  3.   DanielSc3 sade

    Hur länge cachas dns-adresser med dnsmasq? Jag kommer ihåg att jag försökte det för en tid sedan och efter några minuter, 10 eller 5, glömmer dnsmasq allt

    1.    is sade

      Jag fick inte riktigt se det ... bra poäng. Det kommer att konsulteras, kanske vet någon forskare och svarar oss 🙂

  4.   Wisse sade

    Hej när jag ger som root "systemctl start dnsmasq" får jag ett fel, när jag ger kommandot "systemctl status dnsmasq.service" så får jag:

    ● dnsmasq.service - En lätt DHCP- och caching-DNS-server
    Laddad: laddad (/usr/lib/systemd/system/dnsmasq.service; aktiverad; leverantörsinställning: inaktiverad)
    Aktiv: misslyckades (Resultat: exit-code) sedan mån 2016-03-07 11:41:41 ART; För 18-talet sedan
    Dokument: man: dnsmasq (8)
    Process: 7747 ExecStart = / usr / bin / dnsmasq -k –enable-dbus –user = dnsmasq –pid-file (code = exited, status = 2)
    Process: 7742 ExecStartPre = / usr / bin / dnsmasq –test (kod = avslutad, status = 0 / SUCCESS)
    Huvud-PID: 7747 (kod = avslutad, status = 2)

    Tis 07 11:41:41 Visdom systemd [1]: Startar en lätt DHCP och caching DNS-server ...
    Tis 07 11:41:41 Visdom dnsmasq [7742]: dnsmasq: syntax kontrollera OK.
    Tis 07 11:41:41 Visdom dnsmasq [7747]: dnsmasq: det gick inte att skapa lyssningsuttaget för port 53: Adressen redan används
    Tis 07 11:41:41 Visdom systemd [1]: dnsmasq.service: Huvudprocessen avslutad, kod = avslutad, status = 2 / INVALIDARGUMENT
    Tis 07 11:41:41 Wisdom systemd [1]: Det gick inte att starta en lätt DHCP och caching DNS-server.
    Tis 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Enheten har gått in i misslyckat tillstånd.
    Tis 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Misslyckades med resultatet 'exit-code'.

    Vad ska jag göra? Tack.

    1.    is sade

      Jag följde stegen till punkt och pricka, kolla originalhandboken på min blogg. Jag lämnade också en video.

  5.   Gonza sade

    @ice ice, jämför det här inlägget och din video gjord på den, jag kan se att det finns ett fel i steg nummer 4 skrivet här. Och felet är att filen som ska redigeras inte är "systemctl redigera dnscrypt-proxy.service –fullt", utan måste redigeras "systemctl redigera dnscrypt-proxy.socket –full". (Observera att istället för .service måste du skriva .socket).

    Det är därför @wisse wisse får det felmeddelandet när man vill starta dnsmasq-tjänsten (eftersom samma sak hände mig också).

    Hälsningar!