Tutorial DNS Server di Linux Ubuntu
Pendahuluan
Domain Name System (DNS) adalah sistem yang digunakan untuk menerjemahkan nama domain yang mudah diingat menjadi alamat IP yang dapat dikenali oleh komputer. Menyiapkan DNS server sendiri di Ubuntu memberi Anda kontrol penuh atas resolusi nama di jaringan Anda. Tutorial ini akan memandu Anda melalui langkah-langkah untuk mengatur DNS server menggunakan BIND9 di Ubuntu.
Apa Itu BIND9?
BIND9 (Berkeley Internet Name Domain version 9) adalah perangkat lunak server DNS yang paling banyak digunakan di internet. Dikembangkan dan dikelola oleh Internet Systems Consortium (ISC), BIND9 menawarkan berbagai fitur dan stabilitas yang menjadikannya pilihan utama untuk layanan DNS.
Berikut adalah beberapa fitur utama dari BIND9:
- Resolusi Nama: Mengonversi nama domain ke alamat IP dan sebaliknya.
- Caching: Menyimpan jawaban DNS untuk waktu tertentu agar permintaan selanjutnya lebih cepat.
- Forwarding: Meneruskan permintaan ke server DNS lain jika tidak dapat menyelesaikannya sendiri.
- Zone Transfers: Memungkinkan sinkronisasi data DNS antara server utama dan server sekunder.
Mengapa Menggunakan BIND9?
BIND9 digunakan oleh banyak organisasi dan penyedia layanan internet karena beberapa alasan berikut:
- Komprehensif: Mendukung berbagai tipe rekaman DNS dan mekanisme resolusi.
- Dapat Dikustomisasi: Konfigurasi yang fleksibel memungkinkan penyesuaian sesuai kebutuhan spesifik.
- Keandalan: Telah teruji oleh waktu dan digunakan di berbagai lingkungan produksi.
- Komunitas yang Kuat: Didukung oleh komunitas pengguna dan pengembang yang besar, dengan dokumentasi yang lengkap.
Prasyarat
Sebelum Anda memulai instalasi dan konfigurasi BIND9 pada server Ubuntu Anda, ada beberapa prasyarat yang harus dipenuhi. Memastikan semua prasyarat ini terpenuhi akan membantu memastikan bahwa proses instalasi dan konfigurasi berjalan dengan lancar dan tanpa hambatan.
1. Server Ubuntu yang Berfungsi
- Versi Ubuntu: Disarankan menggunakan Ubuntu versi 20.04 LTS atau lebih baru untuk mendapatkan dukungan dan pembaruan keamanan terbaru.
- Akses Root atau Sudo: Anda harus memiliki akses root atau akun pengguna dengan hak sudo untuk menginstal perangkat lunak dan mengedit file konfigurasi sistem.
2. Pengetahuan Dasar
- Perintah Linux: Pengetahuan dasar tentang perintah Linux sangat diperlukan untuk mengelola dan mengonfigurasi server.
- Konsep Jaringan: Pemahaman dasar tentang jaringan, termasuk alamat IP, subnetting, dan konsep dasar DNS.
3. Koneksi Internet
- Pembaruan Sistem: Pastikan server Anda terhubung ke internet untuk mengunduh pembaruan dan perangkat lunak yang diperlukan.
- Paket yang Diperlukan: Instalasi BIND9 dan paket terkait akan membutuhkan koneksi internet untuk mengunduh dari repositori resmi Ubuntu.
4. Nama Domain dan Alamat IP
- Nama Domain: Memiliki nama domain yang ingin Anda kelola dengan BIND9.
- Alamat IP Statis: Disarankan untuk menggunakan alamat IP statis pada server Anda untuk memastikan bahwa DNS server selalu dapat diakses dengan alamat yang sama.
Langkah 1: Instalasi BIND9
BIND (Berkeley Internet Name Domain) adalah salah satu perangkat lunak DNS server paling populer. Untuk menginstalnya, ikuti langkah-langkah berikut:
- Perbarui daftar paket dan instal BIND9:
sudo apt update
sudo apt install bind9 bind9utils bind9-doc
2. Pastikan BIND9 terinstal dengan benar:
Langkah 2: Konfigurasi Zona DNS
1. Mengkonfigurasi Zona Forward
Zona forward digunakan untuk menerjemahkan nama domain ke alamat IP.
- Buka file konfigurasi BIND9:
sudo nano /etc/bind/named.conf.local
2. Tambahkan konfigurasi zona forward di akhir file:
type master;
file “/etc/bind/db.example.com”;
};
3. Buat file zona untuk example.com
:
sudo cp /etc/bind/db.local /etc/bind/db.example.com
sudo nano /etc/bind/db.example.com
4. Edit file db.example.com
:
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.example.com. root.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.example.com.
ns IN A 192.168.1.10
www IN A 192.168.1.10
2. Mengkonfigurasi Zona Reverse
Zona reverse digunakan untuk menerjemahkan alamat IP ke nama domain.
- Tambahkan konfigurasi zona reverse di file
named.conf.local
:
sudo nano /etc/bind/named.conf.local
2. Tambahkan konfigurasi zona reverse:
type master;
file “/etc/bind/db.192”;
};
3. Buat file zona reverse:
sudo nano /etc/bind/db.192
4. Edit file db.192
:
; BIND reverse data file for local loopback interface
;
$TTL 604800
@ IN SOA ns.example.com. root.example.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns.example.com.
10 IN PTR ns.example.com.
10 IN PTR www.example.com.
Langkah 3: Mengkonfigurasi BIND9
- Buka file
named.conf.options
:
sudo nano /etc/bind/named.conf.options
2. Edit bagian forwarders untuk menambahkan DNS server eksternal yang akan digunakan jika BIND9 tidak bisa menemukan jawaban di zona yang dikelola:
forwarders {
8.8.8.8;
8.8.4.4;
};
3. Tambahkan opsi tambahan untuk keamanan dan kinerja:
listen-on-v6 { any; };
Langkah 4: Menguji Konfigurasi DNS
- Periksa sintaks konfigurasi BIND9:
sudo named-checkconf
sudo named-checkzone example.com /etc/bind/db.example.com
sudo named-checkzone 1.168.192.in-addr.arpa /etc/bind/db.192
2. Restart layanan BIND9 untuk menerapkan perubahan:
3. Uji DNS server menggunakan dig
atau nslookup
:
nslookup example.com localhost
example.com
ke alamat IP yang benar.Langkah 5: Mengonfigurasi Klien untuk Menggunakan DNS Server
- Buka file konfigurasi jaringan:
sudo nano /etc/netplan/01-netcfg.yaml
2. Tambahkan DNS server Anda:
version: 2
ethernets:
eth0:
dhcp4: yes
nameservers:
addresses: [192.168.1.10, 8.8.8.8]
3. Terapkan konfigurasi:
Langkah 6: Memantau dan Mengelola DNS Server
- Periksa status BIND9:
2. Lihat log untuk kesalahan atau informasi:
3. Gunakan perintah rndc
untuk mengelola BIND9:
sudo rndc stats