Domain Name System (singkatnya DNS) adalah layanan internet yang digunakan untuk menyelesaikan Domain Name ke IP Address dan sebaliknya.
BIND (Berkeley Internet Name Domain) menyediakan fungsi konversi nama ke ip.
Posting ini akan membantu Anda mengonfigurasi server DNS di Debian 10 / Debian 9.
Lingkungan
Nama Domain:itzgeek.local | ||
---|---|---|
ns1.itzgeek.local | 192.168.0.10 | Server DNS Utama |
Prasyarat
Perbarui indeks repositori.
sudo apt-get update
Pastikan server DNS memiliki alamat IP statis.
BACA :Cara mengkonfigurasi alamat ip statis di Debian
Instal Server DNS
Nama paket server DNS di Debian adalah bind9 dan tersedia di repositori dasar. Anda dapat menggunakan perintah apt untuk menginstal paket bind9.
sudo apt-get install -y bind9 bind9utils bind9-doc dnsutils
Konfigurasi Server DNS
/etc/bind/ adalah direktori konfigurasi bind9, menyimpan file konfigurasi dan file pencarian zona. File konfigurasi global adalah /etc/bind/named.conf.
Buat Zona
Mari kita mulai dengan membuat zona penerusan untuk domain Anda.
Anda tidak boleh menggunakan file konfigurasi global untuk zona DNS lokal, Anda dapat menggunakan file /etc/bind/named.conf.local.
sudo nano /etc/bind/named.conf.local
Zona Maju
Berikut ini adalah entri zona maju untuk domain itzgeek.local dalam file bernama.conf.local.
zone "itzgeek.local" IN { //Domain name type master; //Primary DNS file "/etc/bind/forward.itzgeek.local.db"; //Forward lookup file allow-update { none; }; // Since this is the primary DNS, it should be none. };
Zona Terbalik
Berikut ini untuk zona terbalik di file bernama.conf.local.
zone "0.168.192.in-addr.arpa" IN { //Reverse lookup name, should match your network in reverse order type master; // Primary DNS file "/etc/bind/reverse.itzgeek.local.db"; //Reverse lookup file allow-update { none; }; //Since this is the primary DNS, it should be none. };
Buat file pencarian Zona
Setelah zona dibuat, Anda dapat melanjutkan dan membuat file data zona untuk zona maju dan zona mundur.
Zona Maju
Salin entri sampel ke file zona bernama forward.itzgeek.local.db untuk zona penerusan di bawah direktori /etc/bind.
Jenis rekaman dalam file zona,
SOA – Mulai Otoritas
NS – Server Nama
A – Catatan
MX – Mail for Exchange
CN – Canonical Nama
Nama domain harus diakhiri dengan titik (.).
sudo cp /etc/bind/db.local /etc/bind/forward.itzgeek.local.db
Edit zona.
sudo nano /etc/bind/forward.itzgeek.local.db
Perbarui konten seperti yang ditunjukkan di bawah ini.
Setiap kali Anda mengubah catatan apa pun dalam file pencarian, pastikan Anda memperbarui nomor seri ke beberapa nomor acak, lebih tinggi dari yang sekarang.; ; BIND data file for local loopback interface ; $TTL 604800 @ IN SOA ns1.itzgeek.local. root.itzgeek.local. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; ; Commentout below three lines ;@ IN NS localhost. ;@ IN A 127.0.0.1 ;@ IN AAAA ::1 ;Name Server Information @ IN NS ns1.itzgeek.local. ;IP address of Name Server ns1 IN A 192.168.0.10 ;Mail Exchanger itzgeek.local. IN MX 10 mail.itzgeek.local. ;A – Record HostName To Ip Address www IN A 192.168.0.100 mail IN A 192.168.0.150 ;CNAME record ftp IN CNAME www.itgeek.local.
Zona Terbalik
Salin entri sampel ke file zona bernama reverse.itzgeek.local.db untuk zona terbalik di bawah direktori /etc/bind dan buat penunjuk balik untuk catatan zona maju di atas.
PTR – Pointer
SOA – Mulai Otoritas
sudo cp /etc/bind/db.127 /etc/bind/reverse.itzgeek.local.db
Edit file zona terbalik.
sudo nano /etc/bind/reverse.itzgeek.local.db
Perbarui konten seperti yang ditunjukkan di bawah ini.
Setiap kali Anda mengubah catatan apa pun dalam file pencarian, pastikan Anda memperbarui nomor seri ke beberapa nomor acak, lebih tinggi dari yang sekarang.; ; BIND reverse data file for local loopback interface ; $TTL 604800 @ IN SOA itzgeek.local. root.itzgeek.local. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; ; Commentout below two lines ;@ IN NS localhost. ;1.0.0 IN PTR localhost. ;Name Server Information @ IN NS ns1.itzgeek.local. ;Reverse lookup for Name Server 10 IN PTR ns1.itzgeek.local. ;PTR Record IP address to HostName 100 IN PTR www.itzgeek.local. 150 IN PTR mail.itzgeek.local.
Periksa Sintaks Konfigurasi BIND
Gunakan perintah bernama-checkconf untuk memeriksa sintaks file bernama.conf* untuk menemukan kesalahan.
sudo named-checkconf
Perintah akan kembali ke shell jika tidak ada kesalahan.
Selain itu, Anda dapat menggunakan bernama-checkzone untuk memeriksa kesalahan sintaks dalam file zona.
Zona Maju
sudo named-checkzone itzgeek.local /etc/bind/forward.itzgeek.local.db
Keluaran:
zone itzgeek.local/IN: loaded serial 2 OK
Zona Terbalik
sudo named-checkzone 0.168.192.in-addr.arpa /etc/bind/reverse.itzgeek.local.db
Keluaran:
zone 0.168.192.in-addr.arpa/IN: loaded serial 2 OK
Mulai ulang layanan pengikatan.
sudo systemctl restart bind9
Periksa status layanan bind9.
sudo systemctl status bind9
Verifikasi DNS
Buka mesin klien mana pun dan tambahkan Alamat IP server DNS baru kami di file /etc/resolv.conf.
sudo nano /etc/resolv.conf
Buat entri seperti di bawah ini.
nameserver 192.168.0.10
ATAU
Baca tutorial di bawah ini untuk mengatur IP server DNS di Linux.
BACA: Cara Mengatur alamat IP DNS di CentOS / Fedora
BACA: Cara Mengatur alamat IP DNS di Ubuntu / Debian – ifupdown
BACA: Cara Mengatur Alamat IP DNS di Ubuntu 18.04 – Netplan
Anda dapat menggunakan perintah nslookup atau dig untuk memverifikasi server DNS.
Gunakan perintah dig untuk memverifikasi pencarian ke depan.
dig www.itzgeek.local
Jika Anda mendapatkan perintah tidak ditemukan, instal bind-utils pada turunan Red Hat atau dnsutils pada paket turunan Debian.
Keluaran:
; <<>> DiG 9.11.5-P4-5.1-Debian <<>> www.itzgeek.local ;; global options: +cmd ;; Got answer: ;; WARNING: .local is reserved for Multicast DNS ;; You are currently testing what happens when an mDNS query is leaked to DNS ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 41979 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 ;; WARNING: recursion requested but not available ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: c51856f159ddf40dadc13b835e1024a996e2a306d7888afe (good) ;; QUESTION SECTION: ;www.itzgeek.local. IN A ;; ANSWER SECTION: www.itzgeek.local. 604800 IN A 192.168.0.100 ;; AUTHORITY SECTION: itzgeek.local. 604800 IN NS ns1.itzgeek.local. ;; ADDITIONAL SECTION: ns1.itzgeek.local. 604800 IN A 192.168.0.10 ;; Query time: 1 msec ;; SERVER: 192.168.0.10#53(192.168.0.10) ;; WHEN: Sat Jan 04 05:37:45 UTC 2020 ;; MSG SIZE rcvd: 124
Jawaban server DNS untuk pencarian ke depan www.itzgeek.local adalah 192.168.0.100.
Konfirmasi pencarian terbalik dengan perintah dig.
dig -x 192.168.0.100
Keluaran:
; <<>> DiG 9.11.3-1ubuntu1.11-Ubuntu <<>> -x 192.168.0.100 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33889 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 4096 ; COOKIE: 9806a5ee8f6645c178aa65b25e102530e49ae9a15456fbe1 (good) ;; QUESTION SECTION: ;100.0.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 100.0.168.192.in-addr.arpa. 604800 IN PTR www.itzgeek.local. ;; AUTHORITY SECTION: 0.168.192.in-addr.arpa. 604800 IN NS ns1.itzgeek.local. ;; ADDITIONAL SECTION: ns1.itzgeek.local. 604800 IN A 192.168.0.10 ;; Query time: 0 msec ;; SERVER: 192.168.0.10#53(192.168.0.10) ;; WHEN: Sat Jan 04 05:40:00 UTC 2020 ;; MSG SIZE rcvd: 148
Jawaban server DNS untuk pencarian terbalik 192.168.0.100 adalah www.itzgeek.local.
Hasil ini mengonfirmasi bahwa pencarian zona maju dan mundur berfungsi dengan baik.
Kesimpulan
Itu saja. Anda telah berhasil menginstal server DNS pada Debian 10 / Debian 9. Pada artikel kami berikutnya, kami akan mengkonfigurasi server DNS Slave pada Debian 10 / Debian 9.