Instal·lació i Configuració de dnscrypt-proxy + dnsmasq a Archlinux

Introducció: 
  

Què és dnscrypt-proxy?
- DNSCrypt encrypta i autentifica el tràfic DNS entre l'usuari i la resolució DNS, prevé la suplantació local de les consultes DNS, assegurant que les respostes DNS són enviades pel servidor d'elecció. (wiki)

Què és dnsmasq?
- dnsmasq proporciona serveis com cau DNS i com a servidor DHCP. Com un servidor de noms de domini (DNS), pot emmagatzemar en memòria cau les consultes DNS per millorar les velocitats de connexió als llocs que visiteu anteriorment, i, com un servidor DHCP, dnsmasq pot ser utilitzat per proporcionar adreces IP internes i rutes als equips d'una LAN. Un, o tots dos d'aquests serveis, es poden implementar. dnsmasq és considerat lleuger i fàcil de configurar; està dissenyat per al seu ús en un ordinador personal o per al seu ús en una xarxa amb menys de 50 ordinadors. També ve amb un servidor PXE. (wiki)

Què vaig utilitzar ?:
- Per editar els fitxers de configuració vaig usar nano.
- En tot moment ho vaig fer amb el meu compte de root, però si tenen configurat suo, Poden utilitzar-tranquil·lament.
- Per revisar la memòria cau amb la comanda dig, aquest es troba en bind-tools
dins dels repositoris oficials, Pacman -S bind-tools 🙂

Instal · lació:

  • Com a root o utilitzeu sudo en el nostre terminal o tty instal·lem els paquets dnscrypt-proxy i dnsmasq així:
  • El missatge d'advertència és perquè ja els tinc instal·lats, vostès només han de confirmar pressionant Enter:

Configuració:

1 - Anem a habilitar dnscrypt-proxy (recordin com a root o utilitzeu sudo):


2 - Ara editem l'arxiu /etc/resolv.conf i en nameserver esborrem el que està i col·loquem 127.0.0.1 (si volen poden fer una còpia de l'arxiu) i hauria de quedar així:

  • Tenint en compte que NetworkManager escriu l'arxiu resolv.conf, el que farem és protegir-lo contra escriptura amb la següent ordre:


    3 - Ara el que farem fer és buscar un server que estigui el més a prop de la nostra ubicació, sinó poden usar el que ve per defecte que és dnscrypt.eu-nl, la llista la podem obrir amb localc es troba aquí: / usr / share / dnscrypt-proxy / dnscrypt-resolvers.csv d'aquesta manera:

  • Si volem modificar el server que resol el dns per defecte podem editar així:
  • A la fi de l'arxiu a la secció [Service] modifiquem el que està seleccionat en gris i col·loquem el server que ja vam seleccionar en el llistat:


    4 - Per defecte dnscrypt-proxy utilitza el port 53, ja que dnsmasq també, així que el que farem és canviar-utilitzant novament amb:
    systemctl edit dnscrypt-proxy.service -full i en la secció [Socket] el deixem com a continuació:

Guardem els canvis i tanquem.

5 - Ara configurem dnsmasq, anem a editar el fitxer /etc/dnsmasq.conf i afegim aquestes tres línies a la fin:

no-resolv
server = 127.0.0.1 # 40
listen-address = 127.0.0.1

Guardem els canvis i tanquem.

6 - Ara fem el següent:
- Reiniciem dnscrypt-proxy:
systemctl restart dnscrypt-proxy
- Activem dnsmasq:
systemctl enable dnsmasq
- Executem dnsmasq:
systemctl start dnsmasq
- Reiniciem la nostra connexió d'internet:
systemctl restart NetworkManager

7 - Bé ara provem si realment queda funcionant amb un ping per exemple a google.com.ar:

8 - Ens fixem si funciona la memòria cau de dns amb la comanda dig:

- Aquí tenim en compte que el primer dig que faig hi ha una demora de 349 msec i quan faig novament la consulta amb dig que passa? 0 msec, o sigui escorcolla correctament.

9 - A punt dnscrypt-proxy i dnsmasq configurats i funcionant correctament.!

Nota: Vull aclarir després de buscar en diversos costats no em funcionava de cap manera que mostraven en la wiki de arch, la versió en espanyol està mal traduïda (serà qüestió que algú tradueixi bé o ho faré jo en algun moment) així que vaig fer servir la versió en anglès. Així que bàsicament em vaig basar en aquesta wiki, tots els crèdits per a ells. En aquest cas són els passos que vaig utilitzar i em va funcionar A MI.
Qualsevol consulta o inconvenients que tinguin m'avisen i ho anem xerrant fins que els quedi funcionant!

Abraçada de gol! 😀


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   sense nom va dir

    no noto cap diferència amb dnsmasq, potser amb més usuaris la memòria cau serveixi, al menys amb sol el meu equip no vaig veure canvis en la velocitat.

    els temps de dig amb i sense dnsmasq es mantenen de la mateixa manera, potser algú sàpiga d'un altre mètode i el comparteixi.
    Salutacions

    1.    gel va dir

      com es veu en el screen, es nota MOLTA diferència, suposo que dependrà de l'ample de banda també ... 🙂

  2.   sense nom va dir

    Adjunt imatge:
    Imgur .com / 9RQ7yhF.png

  3.   DanielSc3 va dir

    Quant temps queden a la memòria cau les adreces dns amb dnsmasq? Recordo haver-ho provat temps enrere i als pocs minuts, 10 o 5, dnsmasq ho oblida tot

    1.    gel va dir

      la veritat no em vaig posar a veure éso ... bon punt. Es consultarà, potser algun erudit sàpiga i ens respongui 🙂

  4.   Wisse va dir

    Hola quan li dono com a root «systemctl start dnsmasq» em surt error, a el donar la comanda «systemctl per a l'estat dnsmasq.service» això és el que surt:

    ● dnsmasq.service - A lightweight DHCP and caching DNS server
    Loaded: loaded (/usr/lib/systemd/system/dnsmasq.service; habilitat; vendor preset: disabled)
    Active: failed (Result: exit-code) since dl 2016 03:07:11 ART; 41s ago
    Docs: man: dnsmasq (8)
    Procés: una 7747 ExecStart = / usr / bin / dnsmasq -k -enable-dbus -user = dnsmasq -PID-file (code = exited, status = 2)
    Procés: una 7742 ExecStartPre = / usr / bin / dnsmasq -test (code = exited, status = 0 / SUCCESS)
    Main PID: 7747 (code = exited, status = 2)

    mar 07 11:41:41 Wisdom systemd [1]: Starting A lightweight DHCP and caching DNS server ...
    mar 07 11:41:41 Wisdom dnsmasq [7742]: dnsmasq: syntax check OK.
    mar 07 11:41:41 Wisdom dnsmasq [7747]: dnsmasq: failed to create listening sòcol for port 53: Address already in use
    mar 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Main process exited, code = exited, status = 2 / INVALIDARGUMENT
    mar 07 11:41:41 Wisdom systemd [1]: Failed to start A lightweight DHCP and caching DNS server.
    mar 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Unit Entered failed state.
    mar 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Failed with result 'exit-code'.

    Que he de fer? Gràcies.

    1.    gel va dir

      vaig seguir els passos a el peu de la lletra, revisa el tutorial original en el meu bloc. Vaig deixar un vídeo també.

  5.   gonza va dir

    @ice ice, comparant aquest apunt i el teu video realitzat sobre el mateix puc observar que hi ha un error en el pas número 4 escrit aquí. I l'error és que l'arxiu que s'ha d'editar no és «systemctl edit dnscrypt-proxy.service -full», sinó que s'ha d'editar «systemctl edit dnscrypt-proxy.socket -full». (Notar que en comptes de .service s'ha d'escriure .socket).

    És per això que @wisse Wisse obté aquest missatge d'error a l'voler iniciar el servei dnsmasq (ja que a mi també em va passar el mateix).

    Salutacions!