Installazione e configurazione di dnscrypt-proxy + dnsmasq in Archlinux

Introduzione: 
  

Cos'è dnscrypt-proxy?
- DNSCrypt crittografa e autentica il traffico DNS tra l'utente e il resolver DNS, previene lo spoofing locale delle query DNS, garantendo che le risposte DNS vengano inviate dal server prescelto. (Wiki)

Cos'è dnsmasq?
- dnsmasq fornisce servizi come cache DNS e server DHCP. In qualità di server dei nomi di dominio (DNS), può memorizzare nella cache le query DNS per migliorare le velocità di connessione ai siti visitati in precedenza e, come server DHCP, dnsmasq può essere utilizzato per fornire indirizzi IP interni e percorsi per computer su una LAN. Uno o entrambi questi servizi possono essere implementati. dnsmasq è considerato leggero e facile da configurare; È progettato per l'uso su un personal computer o per l'uso su una rete con meno di 50 computer. Inoltre viene fornito con un server PXE. (Wiki)

Cosa ho usato?:
- Per modificare i file di configurazione che ho usato nano.
- In ogni momento l'ho fatto con il mio account di root, ma se hanno configurato sudo, possono usarlo tranquillamente.
- Per controllare la cache con il comando dig, si trova in bind-tools
all'interno dei repository ufficiali, pacman -S strumenti di rilegatura 🙂

Installazione:

  • Come root o usando sudo nel nostro terminale o tty installiamo i pacchetti dnscrypt-proxy e dnsmasq come questo:
  • Il messaggio di avviso è perché li ho già installati, devi solo confermare premendo Invio:

impostazione:

1 Soluzioni Abilita dnscrypt-proxy (ricorda come root o usa sudo):


2 Soluzioni Ora modifichiamo il file /etc/resolv.conf e nel server dei nomi cancelliamo quello che c'è e mettiamo 127.0.0.1 (se vuoi puoi fare un backup del file) e dovrebbe assomigliare a questo:

  • Tenendo conto che NetworkManager scrive il file resolv.conf, quello che faremo è proteggerlo dalla scrittura con il seguente comando:


    3 Soluzioni Ora quello che faremo è cercare un server più vicino alla nostra posizione, ma puoi usare quello che viene fornito di default che è dnscrypt.eu-nl, l'elenco può essere aperto con localc è qui: / usr / share / dnscrypt-proxy / dnscrypt-resolvers.csv in questo modo:

  • Se vogliamo modificare il server che risolve il DNS predefinito possiamo modificare in questo modo:
  • Alla fine del file nella sezione [Servizio] modifichiamo quanto selezionato in grigio e posizioniamo il server che abbiamo già selezionato nella lista:


    4 Soluzioni Per impostazione predefinita dnscrypt-proxy utilizza la porta 53, poiché anche dnsmasq lo fa, quindi quello che faremo è cambiarlo usando di nuovo con:
    systemctl edit dnscrypt-proxy.service –full e nella sezione [Socket] lo lasciamo come segue:

Salviamo le modifiche e chiudiamo.

5 Soluzioni Ora configuriamo dnsmasq, modificheremo il file /etc/dnsmasq.conf e aggiungeremo queste tre righe alla fine:

non risolto
server = 127.0.0.1 # 40
indirizzo-ascolto = 127.0.0.1

Salviamo le modifiche e chiudiamo.

6 Soluzioni Ora facciamo quanto segue:
- Riavvia dnscrypt-proxy:
systemctl riavvia dnscrypt-proxy
- Attiviamo dnsmasq:
systemctl abilita dnsmasq
- Eseguiamo dnsmasq:
systemctl avvia dnsmasq
- Riavvia la nostra connessione Internet:
systemctl riavvia NetworkManager

7 Soluzioni Bene, ora testiamo se funziona davvero con un ping ad esempio su google.com.ar:

8 Soluzioni Controlliamo se la cache dns funziona con il comando dig:

- Qui teniamo conto che al primo dig che faccio c'è un ritardo di 349 msec e quando rifaccio la query con dig, cosa succede? 0 msec, quindi viene memorizzato correttamente nella cache.

9 Soluzioni Pronto dnscrypt-proxy e dnsmasq configurato e funzionante correttamente!

Nota: Voglio chiarire dopo aver cercato in diversi punti che non ha funzionato per me in alcun modo che hanno mostrato nell'arco wiki, la versione spagnola è tradotta male (sarà una domanda se qualcuno traduce bene o lo farò ad un certo punto) quindi ho usato la versione Inglese. Quindi ho fondamentalmente fatto affidamento su detto wiki, tutti i crediti a loro. In questo caso, questi sono i passaggi che ho usato e ha funzionato per ME.
Qualsiasi domanda o inconveniente mi hanno fatto sapere e ne parleremo fino a quando non funzionerà!

Obiettivo abbraccio! 😀


8 commenti, lascia il tuo

Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.

  1.   senza nome suddetto

    Non noto alcuna differenza con dnsmasq, forse con più utenti la cache funzionerà, almeno con il solo computer non ho visto cambiamenti nella velocità.

    scavare i tempi con e senza dnsmasq rimangono gli stessi, forse qualcuno conosce un altro metodo e lo condivide.
    saluti

    1.    ghiaccio suddetto

      Come si vede sullo schermo, puoi vedere MOLTA differenza, suppongo che dipenderà anche dalla larghezza di banda ... ...

  2.   senza nome suddetto

    Immagine allegata :
    imgur .com / 9RQ7yhF.png

  3.   DanieleSc3 suddetto

    Per quanto tempo gli indirizzi DNS vengono memorizzati nella cache con dnsmasq? Ricordo di averlo provato qualche tempo fa e dopo pochi minuti, 10 o 5, dnsmasq dimentica tutto

    1.    ghiaccio suddetto

      Non ho davvero capito che ... buon punto. Sarà consultato, forse qualche studioso lo sa e ci risponderà 🙂

  4.   saggio suddetto

    Ciao quando gli do come root "systemctl start dnsmasq" ricevo un errore, quando do il comando "systemctl status dnsmasq.service" questo è quello che ottengo:

    ● dnsmasq.service: un server DHCP leggero e un server DNS per la memorizzazione nella cache
    Loaded: caricato (/usr/lib/systemd/system/dnsmasq.service; abilitato; preimpostazione del fornitore: disabilitato)
    Attivo: fallito (Risultato: codice di uscita) da lunedì 2016/03/07 11:41:41 ART; 18 anni fa
    Documenti: uomo: dnsmasq (8)
    Processo: 7747 ExecStart = / usr / bin / dnsmasq -k –enable-dbus –user = dnsmasq –pid-file (code = exited, status = 2)
    Processo: 7742 ExecStartPre = / usr / bin / dnsmasq –test (code = exited, status = 0 / SUCCESS)
    PID principale: 7747 (codice = uscito, stato = 2)

    Mar 07 11:41:41 Wisdom systemd [1]: Avvio di un DHCP leggero e server DNS di caching ...
    Tue 07 11:41:41 Wisdom dnsmasq [7742]: dnsmasq: controllo sintassi OK.
    Mar 07 11:41:41 Wisdom dnsmasq [7747]: dnsmasq: impossibile creare il socket di ascolto per la porta 53: indirizzo già in uso
    Mar 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: processo principale uscito, codice = uscito, stato = 2 / ARGOMENTO NON VALIDO
    Tue 07 11:41:41 Wisdom systemd [1]: Impossibile avviare un DHCP leggero e un server DNS di memorizzazione nella cache.
    Tue 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Unità entrata in stato di errore.
    Tue 07 11:41:41 Wisdom systemd [1]: dnsmasq.service: Fallito con risultato 'exit-code'.

    Cosa dovrei fare? Grazie.

    1.    ghiaccio suddetto

      Ho seguito i passaggi alla lettera, controlla il tutorial originale sul mio blog. Ho lasciato anche un video.

  5.   Gonza suddetto

    @ice ice, confrontando questo post e il tuo video fatto su di esso posso vedere che c'è un errore nel passaggio numero 4 scritto qui. E l'errore è che il file da modificare non è "systemctl edit dnscrypt-proxy.service –full", ma deve essere modificato "systemctl edit dnscrypt-proxy.socket –full". (Nota che invece di .service devi scrivere .socket).

    Ecco perché @wisse wisse riceve quel messaggio di errore quando vuole avviare il servizio dnsmasq (dato che la stessa cosa è successa anche a me).

    Saluti!