Menginstal DNSCrypt-proxy di OpenBSD
· 2 min read · Label UnixBSD
DNSCrypt merupakan spesifikasi yang diterapkan pada perangkat lunak dnsdist, unbound, dnscrypt-wrapper, dan dnscrypt-proxy. DNSCrypt merupakan perangkat lunak yang dirancang untuk melayani proxy DNS yang sangat fleksibel. Layanan ini dapat berjalan pada komputer server, seperti Linux, BSD, Windows, dan MaxOS. Anda juga dapat memasang proxy DNSCrypt pada router firewall seperti PFSense, OpnSense, OpenWRT, dan Mikrotik.
Proxy DNSCrypt mampu memblokir konten yang tidak pantas secara lokal, mengetahui ke mana perangkat Anda mengirim data, mempercepat aplikasi dengan menyimpan respons DNS dalam basis data cache-nya. Dengan demikian, ia dapat meningkatkan keamanan dan privasi dengan berkomunikasi dengan server DNS melalui saluran yang aman. Ini membantu mencegah upaya pengintaian, pembajakan DNS, dan serangan MITM.
DNScrypt-proxy merupakan proxy DNS yang mendukung banyak protokol DNS terenkripsi modern seperti DNSCrypt v2, DNS-over-HTTPS, dan Anonymous DNSCrypt. Perangkat lunak ini bersifat sumber terbuka dan tersedia sebagai biner prakompilasi untuk sebagian besar sistem operasi dan arsitektur.
Berikut ini adalah karakteristik proxy DNScrypt yang harus Anda ketahui:
Untuk menstabilkan koneksi DNS Anda, Anda harus membuat IP statis dalam pengaturan OpenBSD Anda, dan juga menambahkan skrip di bawah ini ke file /etc/rc.conf (sesuaikan dengan sistem OpenBSD Anda).
Setelah mengatur semua konfigurasi yang diperlukan, jalankan proksi DNScrypt dengan perintah di bawah ini.
Untuk menentukan apakah proksi DNScrypt berjalan atau tidak, uji apakah port proksi DNScrypt terbuka dan merespons permintaan DNS dari klien.
Perhatikan skrip berwarna hijau, artinya DNScrypt telah berhasil menjawab permintaan pencarian DNS klien. Anda dapat mengubah IP privat 192.168.5.3 dengan IP privat server OpenBSD Anda, dan Anda juga dapat mengubah port yang digunakan (sesuaikan dengan sistem OpenBSD Anda).
Proxy DNSCrypt mampu memblokir konten yang tidak pantas secara lokal, mengetahui ke mana perangkat Anda mengirim data, mempercepat aplikasi dengan menyimpan respons DNS dalam basis data cache-nya. Dengan demikian, ia dapat meningkatkan keamanan dan privasi dengan berkomunikasi dengan server DNS melalui saluran yang aman. Ini membantu mencegah upaya pengintaian, pembajakan DNS, dan serangan MITM.
DNScrypt-proxy merupakan proxy DNS yang mendukung banyak protokol DNS terenkripsi modern seperti DNSCrypt v2, DNS-over-HTTPS, dan Anonymous DNSCrypt. Perangkat lunak ini bersifat sumber terbuka dan tersedia sebagai biner prakompilasi untuk sebagian besar sistem operasi dan arsitektur.
Berikut ini adalah karakteristik proxy DNScrypt yang harus Anda ketahui:
- Enkripsi dan autentikasi lalu lintas DNS. Mendukung DNS-over-HTTPS (DoH) menggunakan TLS 1.3, DNSCrypt, dan DNS anonim.
- Pantau kueri DNS dengan berkas log terpisah untuk kueri normal dan mencurigakan.
- Alamat IP klien dapat disembunyikan menggunakan Tor, proksi SOCKS, atau relai DNS anonim.
- Filter berdasarkan waktu dengan jadwal mingguan yang fleksibel.
- Filtering: Blokir iklan, malware, dan konten lain yang tidak diinginkan. Kompatibel dengan semua layanan DNS.
- Pemblokiran IPv6 lokal untuk mengurangi latensi pada jaringan khusus IPv4.
- Cache DNS untuk mengurangi latensi dan meningkatkan privasi.
- Pengalihan transparan domain tertentu ke resolver tertentu.
- Dapat memaksa koneksi keluar untuk menggunakan TCP.
- Termasuk server DoH lokal untuk mendukung ECHO (ESNI).
- Kompatibel dengan DNSSEC.
- Penyeimbangan Beban: Pilih satu set resolver, dnscrypt-proxy akan secara otomatis mengukur dan memantau kecepatannya, dan menyeimbangkan lalu lintas antara yang tercepat yang tersedia.
- Pembaruan otomatis daftar pelengkap di latar belakang.
- Penyamaran: Seperti berkas HOSTS yang lebih canggih yang dapat mengembalikan alamat yang telah dikonfigurasi sebelumnya untuk nama tertentu atau menyelesaikan dan mengembalikan alamat IP untuk nama lain. Ini dapat digunakan untuk pengembangan lokal serta menyediakan hasil pencarian yang aman di Google, Yahoo, DuckDuckGo, dan Bing.
1. Cara Instal DNSCrypt Proxy (encrypted DNS server)
Pada OpenBSD, Anda tidak perlu lagi mencari file biner proxy DNScrypt, di repositori paket PKG sudah tersedia file yang sudah jadi dan lengkap, Anda dapat langsung menginstalnya. Pada bagian pertama ini, kita akan mempelajari cara menginstal server DNS terenkripsi (DNSCrypt) menggunakan paket OpenBSD PKG. Dalam penulisan artikel ini, kami menggunakan OpenBSD 7.5. Proses instalasinya cukup mudah, Anda dapat mengikuti perintah berikut.
Setelah terinstal, Encrypted DNS Server (DNSCrypt) memiliki contoh berkas konfigurasi yang tersimpan di /usr/local/share/examples/dnscrypt-proxy. Sementara itu, berkas konfigurasi utama tersimpan di direktori /var/dnscrypt-proxy. Setelah Anda mengetahui lokasi berkas konfigurasi, kita lanjutkan dengan langkah-langkah berikut.
Sebelum kita menjalankan proxy DNScrypt, Anda harus mengubah file /etc/dnscrypt-proxy.toml terlebih dahulu. Cara mengaktifkan skrip proxy DNScrypt dengan menghilangkan tanda "#" di depan skrip. Hal pertama yang harus Anda aktifkan adalah memilih daftar server yang digunakan. Ada banyak pilihan server yang dapat Anda gunakan. Jangan lupa juga untuk mengaktifkan interface (listen), pada IP dan port apa DNScrypt akan dijalankan. Lihat contoh skrip di bawah ini.
Anda juga menyiapkan server jarak jauh, beberapa sumber dapat digunakan secara bersamaan, tetapi setiap sumber memerlukan file cache khusus.
Install DNScrypt
ns3# pkg_add dnscrypt-proxy
2. Cara Konfigurasi DNSCrypt Proxy (encrypted DNS server)
Bagian ini merupakan bagian yang paling rumit, karena kita akan mengatur semua fungsi dan kerja dari proxy DNScrypt. Jika Anda salah menuliskan satu skrip saja, bisa jadi proxy DNScrypt tidak akan bekerja dengan sempurna. Tidak seperti aplikasi lain yang berjalan di OpenBSD, file konfigurasi utama diakhiri dengan *.conf. File konfigurasi proxy DNScrypt utama berjenis Cargo Toml, yang memiliki ekstensi *.toml. File konfigurasi utama terletak di /etc/dnscrypt-proxy.toml.Sebelum kita menjalankan proxy DNScrypt, Anda harus mengubah file /etc/dnscrypt-proxy.toml terlebih dahulu. Cara mengaktifkan skrip proxy DNScrypt dengan menghilangkan tanda "#" di depan skrip. Hal pertama yang harus Anda aktifkan adalah memilih daftar server yang digunakan. Ada banyak pilihan server yang dapat Anda gunakan. Jangan lupa juga untuk mengaktifkan interface (listen), pada IP dan port apa DNScrypt akan dijalankan. Lihat contoh skrip di bawah ini.
Script /etc/dnscrypt-proxy.toml
server_names = ['scaleway-fr', 'google', 'yandex', 'cloudflare']
listen_addresses = ['192.168.5.3:5300']
Script /etc/dnscrypt-proxy.toml
[sources]
[sources.public-resolvers]
urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md', 'https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md']
cache_file = '/var/dnscrypt-proxy/public-resolvers.md'
minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
refresh_delay = 72
prefix = ''
[sources.relays]
urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/relays.md', 'https://download.dnscrypt.info/resolvers-list/v3/relays.md']
cache_file = '/var/dnscrypt-proxy/relays.md'
minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
refresh_delay = 72
prefix = ''
Script /etc/resolv.conf
domain kursor.my.id
nameserver 192.168.5.3
Jalankan DNScrypt proxy
ns3# rcctl enable dnscrypt_proxy
ns3# rcctl restart dnscrypt_proxy
Test DNScrypt proxy
ns3# dig -p 5300 yahoo.com @192.168.5.3
; <<>> dig 9.10.8-P1 <<>> -p 5300 yahoo.com @192.168.5.3
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35022
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;yahoo.com. IN A
;; ANSWER SECTION:
yahoo.com. 2400 IN A 74.6.231.20
yahoo.com. 2400 IN A 74.6.231.21
yahoo.com. 2400 IN A 74.6.143.25
yahoo.com. 2400 IN A 98.137.11.164
yahoo.com. 2400 IN A 98.137.11.163
yahoo.com. 2400 IN A 74.6.143.26
;; Query time: 18 msec
;; SERVER: 192.168.5.3#5300(192.168.5.3)
;; WHEN: Sat May 11 09:55:34 WIB 2024
;; MSG SIZE rcvd: 134
Full script /etc/dnscrypt-proxy.toml
server_names = ['scaleway-fr', 'google', 'yandex', 'cloudflare']
listen_addresses = ['192.168.5.3:5300']
max_clients = 250
user_name = '_dnscrypt-proxy'
ipv4_servers = true
ipv6_servers = false
dnscrypt_servers = true
doh_servers = true
odoh_servers = false
require_dnssec = true
require_nolog = true
require_nofilter = true
disabled_server_names = []
force_tcp = true
http3 = false
timeout = 5000
keepalive = 30
cert_refresh_delay = 240
bootstrap_resolvers = ['9.9.9.11:53', '8.8.8.8:53']
ignore_system_dns = true
netprobe_timeout = 60
netprobe_address = '9.9.9.9:53'
log_files_max_size = 10
log_files_max_age = 7
log_files_max_backups = 1
block_ipv6 = false
block_unqualified = true
block_undelegated = true
reject_ttl = 10
cache = true
cache_size = 4096
cache_min_ttl = 2400
cache_max_ttl = 86400
cache_neg_min_ttl = 60
cache_neg_max_ttl = 600
dnscrypt_ephemeral_keys = true
tls_disable_session_tickets = true
[query_log]
file = '/var/dnscrypt-proxy/query.log'
format = 'tsv'
[sources]
[sources.public-resolvers]
urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md', 'https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md']
cache_file = '/var/dnscrypt-proxy/public-resolvers.md'
minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
refresh_delay = 72
prefix = ''
[sources.relays]
urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/relays.md', 'https://download.dnscrypt.info/resolvers-list/v3/relays.md']
cache_file = '/var/dnscrypt-proxy/relays.md'
minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
refresh_delay = 72
prefix = ''
Selamat! Anda telah berhasil menjalankan proxy DNScrypt di OpenBSD. Sebagai kesimpulan akhir
dari artikel ini, saya ingin mengatakan bahwa untuk melindungi lalu lintas internet Anda, kami sarankan untuk menggunakan proxy DNScrypt yang dikombinasikan dengan ISC-Bind atau Unbound. Untuk lebih meningkatkan sistem keamanan server DNS Anda, gunakan juga Haproxy sebagai gateway antara proxy DNScrypt dan ISC-Bind atau Unbound.
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar