DNSCrypt

Introduzione
DNSCrypt-Proxy permette di crittografare le richieste DNS tra il proprio PC e diversi name server pubblici.

Prerequisiti
Abilitiamo il supporto al Extension Mechanisms for DNS: echo "options edns0 single-request-reopen" | sudo tee -a /etc/resolvconf/resolv.conf.d/tail

Forziamo l'utilizzo del nuovo resolver: echo "nameserver 127.0.0.1" | sudo tee -a /etc/resolvconf/resolv.conf.d/head

Installazione
Scarichiamo l'ultima versione disponibile dei binari di dnscrypt-proxy: https://github.com/DNSCrypt/dnscrypt-proxy/releases

Controlliamo l'integrita' del pacchetto:
 * 1) minisign -Vm dnscrypt-proxy-linux_x86_64-*.tar.gz -p signature.pub

Installiamo i binari: sudo mkdir -p /opt/dnscrypt-proxy sudo tar xfz dnscrypt-proxy-linux_x86_64-*.tar.gz -C /opt/dnscrypt-proxy --strip-components=1 sudo chown -R root:root /opt/dnscrypt-proxy cd /opt/dnscrypt-proxy sudo /opt/dnscrypt-proxy/dnscrypt-proxy -service install sudo systemctl enable dnscrypt-proxy.service

Configurazione
Creaiamo il file di configurazione partendo da quello di esempio: if [ ! -f "/opt/dnscrypt-proxy/dnscrypt-proxy.toml" ]; then sudo cp -p /opt/dnscrypt-proxy/example-dnscrypt-proxy.toml /opt/dnscrypt-proxy/dnscrypt-proxy.toml sudo sed -i "s+^listen_addresses = .*+listen_addresses = ['127.0.0.1:53']+g" /opt/dnscrypt-proxy/dnscrypt-proxy.toml sudo sed -i "s+^block_ipv6 = .*+block_ipv6 = true+g"                        /opt/dnscrypt-proxy/dnscrypt-proxy.toml fi

Accendiamo il servizio: sudo systemctl start dnscrypt-proxy.service

Disabilitiamo infine il resolver fornito da systemd: sudo systemctl stop   systemd-resolved.service sudo systemctl disable systemd-resolved.service sudo systemctl mask   systemd-resolved.service

Per testare che tutto funziona a dovere, andate qui ed esequite uno "Standard test".