BIND: Security
BIND Security di Ubuntu 24.04
BIND (Berkeley Internet Name Domain) adalah salah satu DNS server paling populer yang digunakan untuk menerjemahkan nama domain menjadi alamat IP. Namun, karena perannya yang krusial dalam infrastruktur jaringan, BIND menjadi target potensial bagi serangan cyber. Oleh karena itu, penting untuk mengamankan konfigurasi BIND pada Ubuntu 24.04.
---
1. Mengamankan Konfigurasi BIND
Secara default, konfigurasi BIND dapat memberikan informasi sensitif kepada pengguna luar. Berikut adalah langkah-langkah dasar untuk meningkatkan keamanannya:
a. Batasi Query DNS
Secara default, BIND memungkinkan semua orang untuk melakukan query DNS. Untuk mencegah penyalahgunaan, batasi akses dengan hanya mengizinkan klien tertentu.
Edit file konfigurasi utama:
sudo nano /etc/bind/named.conf.options
Tambahkan atau modifikasi bagian berikut:
options { allow-query { localhost; 192.168.1.0/24; }; // Batasi akses hanya dari jaringan internal allow-recursion { 192.168.1.0/24; }; // Hanya izinkan recursive queries dari jaringan internal recursion yes; };
Simpan dan restart BIND:
sudo systemctl restart bind9
---
b. Sembunyikan Versi BIND
Menampilkan versi BIND dapat memberikan informasi berharga bagi penyerang. Untuk menyembunyikan informasi versi, tambahkan opsi berikut di file `named.conf.options`:
options { version "Not Disclosed"; };
Simpan dan restart BIND:
sudo systemctl restart bind9
---
c. Gunakan ACL (Access Control List)
ACL memungkinkan kita untuk mengatur siapa saja yang dapat mengakses layanan DNS. Tambahkan baris berikut di `named.conf.options`:
acl trusted_networks { 192.168.1.0/24; 10.10.10.0/24; }; options { allow-query { trusted_networks; }; allow-recursion { trusted_networks; }; };
Ini akan membatasi akses hanya ke jaringan yang ditentukan.
---
d. Blokir Zone Transfer
Zone Transfer digunakan untuk menyinkronkan informasi DNS antar server, tetapi jika tidak dikonfigurasi dengan benar, dapat menjadi celah bagi penyerang untuk mendapatkan seluruh daftar domain.
Tambahkan opsi berikut di `named.conf.options`:
options { allow-transfer { none; }; // Nonaktifkan transfer zona untuk semua };
Atau, jika menggunakan secondary DNS, izinkan hanya server tertentu:
options { allow-transfer { 192.168.1.2; }; };
---
2. Menggunakan DNSSEC (Domain Name System Security Extensions)
DNSSEC adalah ekstensi keamanan yang menambahkan tanda tangan kriptografi pada respons DNS untuk mencegah serangan seperti DNS spoofing.
Langkah-langkah dasar mengaktifkan DNSSEC:
1. Aktifkan DNSSEC di Konfigurasi BIND== Tambahkan atau ubah pengaturan berikut di `named.conf.options`:
options { dnssec-enable yes; dnssec-validation auto; };
2. Restart BIND
sudo systemctl restart bind9
---
3. Mencegah DNS Amplification Attack
Serangan DNS Amplification mengeksploitasi server DNS yang mengizinkan recursive queries dari seluruh internet. Pastikan hanya klien internal yang dapat melakukan recursive queries.
Tambahkan konfigurasi ini:
options { allow-recursion { trusted_networks; }; recursion yes; };
Dan pastikan BIND tidak berjalan sebagai open resolver:
sudo netstat -plntu | grep :53
Jika terlihat bahwa BIND menerima koneksi dari luar jaringan internal, pastikan konfigurasi di atas diterapkan dengan benar.
---
4. Mengaktifkan Logging untuk Keamanan
Aktifkan logging untuk memantau aktivitas mencurigakan.
Buka `named.conf`:
sudo nano /etc/bind/named.conf
Tambahkan:
logging { channel security_log { file "/var/log/named.security.log" versions 3 size 5m; severity info; print-category yes; print-severity yes; print-time yes; }; category security { security_log; }; };
Buat file log dan atur izin:
sudo touch /var/log/named.security.log sudo chown bind:bind /var/log/named.security.log sudo chmod 644 /var/log/named.security.log
Restart BIND:
sudo systemctl restart bind9
---
5. Menjalankan BIND dengan Hak Akses Rendah
Pastikan BIND berjalan sebagai user yang lebih aman (biasanya bind di Ubuntu 24.04).
Periksa user yang menjalankan BIND:
ps aux | grep named
Jika tidak berjalan sebagai bind, edit file konfigurasi systemd:
sudo nano /lib/systemd/system/bind9.service
Pastikan ada baris berikut:
User=bind Group=bind
Reload systemd dan restart BIND:
sudo systemctl daemon-reload sudo systemctl restart bind9
---
6. Menggunakan Firewall untuk Memblokir Akses Tidak Sah
Gunakan UFW (Uncomplicated Firewall) untuk memblokir akses ke port 53 dari jaringan luar.
Hanya izinkan akses dari jaringan internal:
sudo ufw allow from 192.168.1.0/24 to any port 53 sudo ufw deny 53
Aktifkan firewall:
sudo ufw enable
Periksa aturan firewall:
sudo ufw status numbered
---
Kesimpulan
Mengamankan BIND di Ubuntu 24.04 sangat penting untuk mencegah berbagai serangan, termasuk DNS spoofing, amplification attacks, dan data leakage. Beberapa langkah yang harus diterapkan mencakup:
✅ Membatasi query DNS dan recursive queries. ✅ Menyembunyikan informasi versi BIND. ✅ Menggunakan ACL untuk membatasi akses. ✅ Memblokir zone transfer yang tidak perlu. ✅ Mengaktifkan DNSSEC untuk autentikasi DNS. ✅ Menjalankan logging untuk memantau aktivitas. ✅ Memastikan BIND berjalan dengan user yang memiliki hak akses terbatas. ✅ Menggunakan firewall (UFW) untuk membatasi akses ke server DNS.
Dengan menerapkan langkah-langkah ini, server BIND Anda akan lebih aman dan terlindungi dari potensi ancaman.