Install DNSCrypt Untuk Proxy Resolver

Karena masalah teknis dalam beberapa menit terakhir, paket dnscrypt-proxy saat ini tidak tersedia di repositori Debian Linux 12 (Bookworm) default. Namun, Anda dapat menginstalnya dari ‘sid’ dengan hati-hati. Buat file baru sebagai berikut:

Buat file berikut

nano /etc/apt/sources.list.d/sid.list

Masukkan baris berikut

deb http://deb.debian.org/debian sid main

Exit & save

Buat file berikut

nano /etc/apt/preferences.d/99-sid-repository-pinning

Masukkan baris berikut

Package: *
Pin: release a=unstable
Pin-Priority: -10

Save & Exit

Verifikasi kebijakan penyematan dan pastikan Debian unstable termasuk dnscrypt-proxy berada pada prioritas -10:

sudo apt update
sudo apt-cache policy
sudo apt-cache policy dnscrypt-proxy

Langkah terkahir, Install DNScrypt

sudo apt install -t sid dnscrypt-proxy

Nama service DNScrypt di systemd adalah dnscrypt-proxy.service, gunakan perintah berikut untuk mengontrolnya.

sudo systemctl start dnscrypt-proxy.service
sudo systemctl stop dnscrypt-proxy.service
sudo systemctl restart dnscrypt-proxy.service
sudo systemctl status dnscrypt-proxy.service

Harap perhatikan bahwa binding alamat IP untuk dnscrypt-proxy.service dikelola oleh layanan dnscrypt-proxy.socket. Jika Anda ingin membuat perubahan pada alamat IP default 127.0.2.1, Anda dapat mengendalikannya seperti yang dijelaskan di bawah ini. Penting untuk dicatat bahwa Anda tidak dapat mengatur pengikatan IP dalam berkas /etc/dnscrypt-proxy/dnscrypt-proxy.toml.

sudo systemctl cat dnscrypt-proxy.socket
sudo systemctl edit dnscrypt-proxy.socket
sudo systemctl start dnscrypt-proxy.socket
sudo systemctl stop dnscrypt-proxy.socket
sudo systemctl restart dnscrypt-proxy.socket
sudo systemctl status dnscrypt-proxy.socket

Systemd juga mengontrol dan menyelesaikan nama domain, alamat IPV4 dan IPv6, catatan sumber daya DNS, dan layanan. Layanan mengontrol resolvconf atau system-resolve melalui dnscrypt-proxy-resolvconf.service. Anda tidak perlu mengedit atau menyentuh layanan ini. Yang tersisa berjalan sendiri:

sudo systemctl cat dnscrypt-proxy-resolvconf.service
sudo systemctl start dnscrypt-proxy-resolvconf.service
sudo systemctl stop dnscrypt-proxy-resolvconf.service
sudo systemctl restart dnscrypt-proxy-resolvconf.service
sudo systemctl status dnscrypt-proxy-resolvconf.service

Gunakan file unit systemd dnscrypt-proxy.socket untuk mengatur atau mengubah binding alamat IPv4 dan IPv6

sudo systemctl edit dnscrypt-proxy.socket

Masukkan baris berikut sebelum ### Lines below this comment will be discarded

[Socket]
ListenStream=10.8.0.1:53
ListenDatagram=10.8.0.1:53
ListenStream=[fd5a:dadf:8d6d::1]:53
ListenDatagram=[fd5a:dadf:8d6d::1]:53

Sehingga menjadi berikut

### Editing /etc/systemd/system/dnscrypt-proxy.socket.d/override.conf
### Anything between here and the comment below will become the new contents of the file

[Socket]
ListenStream=10.0.0.1:53
ListenDatagram=10.0.0.1:53
ListenStream=[fd5a:dadf:8d6d::1]:53
ListenDatagram=[fd5a:dadf:8d6d::1]:53

### Lines below this comment will be discarded

### /lib/systemd/system/dnscrypt-proxy.socket
# [Unit]
# Description=dnscrypt-proxy listening socket
# Documentation=https://github.com/DNSCrypt/dnscrypt-proxy/wiki
# Before=nss-lookup.target
# Wants=nss-lookup.target
# Wants=dnscrypt-proxy-resolvconf.service
#
# [Socket]
# ListenStream=127.0.2.1:53
# ListenDatagram=127.0.2.1:53
# NoDelay=true
# DeferAcceptSec=1
#
# [Install]
# WantedBy=sockets.target

Sesuaikan kebutuhan, jika hanya dibutuhkan IPv4 silakan hanya masukkan IPv4

Lakukan reload dan restart

sudo systemctl daemon-reload #<--reload config changes
sudo systemctl restart dnscrypt-proxy.socket
sudo systemctl restart dnscrypt-proxy.service

Sumber/Referensi:

https://www.cyberciti.biz/faq/installing-dnscrypt-proxy-on-debian-linux/