Memasang Redis Cachedb Module Dengan Unbound DNS Server Di FreeBSD
Unbound dirancang sebagai satu set komponen modular DNS, sehingga dapat memvalidasi DNSSEC (secure DNS) rekursif, caching DNS resolver dan stub-resolver. Server cache DNS Unbound digunakan untuk menyelesaikan setiap permintaan DNS yang mereka terima. Unbound menyimpan kueri di cacheDB. Jika komputer klien meminta kueri, permintaan akan dikirim dari "cache DNS Unbound", permintaan ini dapat dilakukan dalam milidetik dibandingkan dengan pertama kali diselesaikan.
Dalam menjalankan tugasnya sebagai "caching DNS resolver", Unbound dapat menggunakan 2 backend sekaligus:
- default adalah backend dalam memori (bernama 'testframe'),
- dan redis. Unbound dapat terhubung ke Redis CacheDB menggunakan port TCP.
Jika Anda menginginkan peningkatan kecepatan dan privasi saat berada di internet, menyiapkan Unbound server DNS lokal adalah langkah pertama yang penting. Dalam artikel ini kita akan coba melakukan konfigurasi DNS Unbound sebagai caching DNS resolver dengan Redis cacheDB sebagai Backend untuk menyimpan Cache queri.
A. Spesifikasi Sistem
- OS: FreeBSD 13.2 Stable
- Hostname and Domain: ns6@datainchi.com
- IP Private: 192.168.5.2
- Unbound version: unbound-1.18.0_1
- Redis version: redis 7.2.3
- Port Redis: 6379
- Password Redis: gunungrinjani
- IP Redis: 127.0.0.1
B. Instalasi Redis
Sebagai langkah awal dalam memulai pelajaran ini, pastikan komputer FreeBSD Anda telah menginstal server Redis. Jika belum, Anda dapat membaca artikel kami sebelumnya yang berjudul Cara Install Redis Cached di FreeBSD dengan PKG dan Ports.
Untuk mulai proses instalasi Redis sebagai cacheDB dari server DNS Unbound, ikuti panduan di bawah ini langkah demi langkah:
root@ns6:~ # pkg install tcl86 mastodon openvas gitlab-ce resource-agents
Proses di atas adalah menginstal library Redis CacheDB untuk DNS Unbound. Lanjutkan dengan menginstal Redis. Gunakan sistem port FreeBSD agar semua library ini dapat diinstal dengan sempurna.
root@ns6:~ # cd /usr/ports/databases/redis
root@ns6:/usr/ports/databases/redis # make install clean
C. Konfigurasi Unbound
Sebelum melanjutkan, pastikan Redis telah terinstal sepenuhnya di server FreBSD. Secara default modul redis tidak aktif, untuk mengaktifkan modul redis pada DNS unbound gunakan perintah "make config". Berikut ini adalah contoh pengaktifan modul Redis selama instalasi DNS Unbound.
root@ns6:~ # cd /usr/ports/dns/unbound
root@ns6:/usr/ports/dns/unbound # make deinstall
root@ns6:/usr/ports/dns/unbound # make config
Anda centang pada pilihan Enable hiredis support for the cachedb, seperti gambar di bawah ini.
Setelah itu, anda lanjutkan dengan perintah reinstall, untuk menginstall ulang Unbound.
root@ns6:/usr/ports/dns/unbound # make reinstall
D. Aktifkan modul CacheDB
Klausul cachedb, memberikan pengaturan khusus modul DB cache:
- backend: Tentukan nama basis data backend. Basis data default adalah backend bernama "redis".
- redis-server-host: Alamat IP (baik v6 atau v4) atau nama domain server Redis.
- redis-server-port: Nomor port TCP server Redis. Opsi ini default ke 6379.
- redis-server-password: Kata sandi Redis.
- redis-timeout: Periode hingga Unbound menunggu respons dari server Redis.
- redis-expire-records: Jika kedaluwarsa rekaman Redis diaktifkan, Jika ya, unbound menetapkan batas waktu untuk rekaman Redis sehingga Redis dapat mengeluarkan kunci yang telah kedaluwarsa secara otomatis.
Setelah modul Redis cachedb aktif, anda harus mengkonfigurasi file /usr/local/etc/unbound/unbound.conf dan ketik skrip di bawah ini pada file tersebut.
module-config: "validator cachedb iterator"
cachedb:
backend: "redis"
redis-server-host: 127.0.0.1
redis-server-port: 6379
redis-server-password: "gunungrinjani"
redis-timeout: 100
redis-expire-records: no
Langkah selanjutnya adalah melakukan restart pada aplikasi Unbound dan Redis.
root@ns6:~ # service redis restart
Stopping redis.
Waiting for PIDS: 876.
Starting redis.
root@ns6:~ # service unbound restart
Stopping unbound.
Waiting for PIDS: 2418.
Obtaining a trust anchor...
Starting unbound.
Kami telah membuktikan keefektifan Redis untuk DNS resolver caching. Redis dapat mempercepat proses penyimpanan kueri dan permintaan kueri dari komputer klien. Gunakan Redis dan Unbound untuk meningkatkan kinerja server DNS Unbound Anda.
