Dikembangkan pada tahun 80-an oleh mahasiswa di Universitas Berkeley, BIND (Domain Nama Internet Berkeley ) adalah server DNS sumber terbuka yang menyediakan layanan DNS pada distribusi Linux. Jadi, apa itu server DNS? DNS server adalah layanan yang membantu menyelesaikan nama domain yang sepenuhnya memenuhi syarat (FQDN ) ke alamat IP dan sebagai tambahan, lakukan terjemahan terbalik- terjemahan alamat IP ke nama domain yang mudah digunakan.
Mengapa resolusi nama penting? Nah, komputer mencari layanan di server menggunakan alamat IP. Namun, alamat IP tidak ramah pengguna seperti nama domain dan akan sangat merepotkan jika mencoba mengingat setiap alamat IP yang terkait dengan setiap nama domain. Server DNS masuk dan membantu menyelesaikan nama domain ini ke alamat IP komputer.
Panduan ini memandu Anda melalui proses pengaturan server pengikatan DNS di CentOS 8 / RHEL 8.
Penyiapan laboratorium:
- Server : CentOS 8 (server minimal)
- Alamat IP : 192.168.43.35
- Nama Populer : dns-primary.linuxtechi.local
- Domain : linuxtechi.local
Sekarang mari kita mulai dengan konfigurasi server pengikatan DNS.
Langkah 1:Instal bind DNS di CentOS 8 / RHEL 8
Kita mulai dengan instalasi paket bind dan bind-utils. Paket-paket ini merupakan server dns dan utilitasnya yang bertanggung jawab untuk menanyakan server nama atau server DNS.
Jalankan perintah:
# dnf install bind bind-utils
Setelah berhasil diinstal, mulai server DNS menggunakan perintah di bawah ini:
# systemctl start named
Selanjutnya, aktifkan agar dapat berfungsi bahkan setelah reboot
# systemctl enable named
Untuk memastikan bahwa layanan berjalan seperti yang diharapkan, periksa statusnya
# systemctl status named
Bagus, server DNS berjalan dengan sempurna. Sekarang mari masuk ke konfigurasi server Bind DNS
Langkah 2: Konfigurasikan server DNS pengikatan
Biasanya, praktik terbaik menyarankan untuk membuat cadangan file konfigurasi sebelum membuat perubahan apa pun. Ini agar jika terjadi kesalahan, kami selalu dapat kembali ke file asli yang belum diedit. Dan tidak berbeda di sini.
Mari kita backup file konfigurasi /etc/named.conf
# cp /etc/named.conf /etc/named.bak
Sekarang lanjutkan dan buka file menggunakan editor teks pilihan Anda. Dalam hal ini, kami menggunakan editor vim.
# vim /etc/named.conf
Di bawah ‘Opsi ’ , pastikan Anda mengomentari baris yang ditunjukkan di bawah ini untuk mengaktifkan server Bind DNS untuk mendengarkan semua IP.
// listen-on port 53 { 127.0.0.1; }; // listen-on-v6 port 53 { ::1; };
Selain itu, temukan parameter allow-query dan sesuaikan dengan subnet jaringan Anda.
allow-query { localhost; 192.168.43.0/24; };
Pengaturan ini memungkinkan hanya host di jaringan yang ditentukan untuk mengakses server DNS dan bukan sembarang host lainnya.
A meneruskan zona DNS pencarian adalah salah satu yang menyimpan hubungan alamat ip nama host. Saat ditanya, ini memberikan alamat IP sistem host menggunakan nama host. Sebaliknya, kebalikan zona DNS mengembalikan Fully Qualified Domain Name (FQDN) dari server sehubungan dengan alamat IP-nya.
Untuk menentukan zona pencarian mundur dan maju, salin dan tempel konfigurasi berikut di akhir /etc/named.conf
//forward zone zone "linuxtechi.local" IN { type master; file "linuxtechi.local.db"; allow-update { none; }; allow-query { any; }; }; //backward zone zone "43.168.192.in-addr.arpa" IN { type master; file "linuxtechi.local.rev"; allow-update { none; }; allow-query { any; }; };
- ketik :Menetapkan peran server untuk zona tertentu. atribut 'master' menyiratkan bahwa ini adalah server otoritatif.
- berkas :Menunjuk ke file zona maju / mundur dari domain.
- izinkan pembaruan :Atribut ini mendefinisikan sistem host yang diizinkan untuk meneruskan pembaruan DNS Dinamis. Dalam hal ini, kami tidak memilikinya.
Setelah menyimpan, keluar dari file konfigurasi /etc/named.conf.
Langkah 3:Buat file zona DNS penerusan untuk domain
Buat file zona DNS maju untuk domain linuxtechi.local seperti yang ditunjukkan di bawah ini dan tambahkan konten berikut
[[email protected] ~]# vim /var/named/linuxtechi.local.db $TTL 86400 @ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. ( 2020011800 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) ;Name Server Information @ IN NS dns-primary.linuxtechi.local. ;IP Address for Name Server dns-primary IN A 192.168.43.35 ;Mail Server MX (Mail exchanger) Record linuxtechi.local. IN MX 10 mail.linuxtechi.local. ;A Record for the following Host name www IN A 192.168.43.50 mail IN A 192.168.43.60 ;CNAME Record ftp IN CNAME www.linuxtechi.local.
Mari kita tentukan beberapa parameter yang ditunjukkan dalam file konfigurasi:
- TTL :Ini adalah kependekan dari Time-To-Live. TTL adalah durasi waktu (atau hop) paket yang ada di jaringan sebelum akhirnya dibuang oleh router.
- MASUK :Ini menyiratkan Internet.
- SOA :Ini adalah kependekan dari Start of Authority. Pada dasarnya, ini mendefinisikan server nama otoritatif, dalam hal ini, dns-primary.linuxtechi.local dan informasi kontak – admin.linuxtechi.local
- NS :Ini adalah kependekan dari Server Nama.
- A :Ini adalah rekor A. Ini menunjuk ke nama domain/subdomain ke Alamat IP
- Serial :Ini adalah atribut yang digunakan oleh server DNS untuk memastikan bahwa konten file zona tertentu diperbarui.
- Segarkan :Menentukan berapa kali server DNS budak harus mentransfer zona dari master.
- Coba lagi :Menentukan berapa kali seorang budak harus mencoba lagi transfer zona non-responsif.
- Kedaluwarsa :Menentukan durasi server budak harus menunggu sebelum menanggapi permintaan klien saat Master tidak tersedia.
- Minimum :Ini bertanggung jawab untuk menyetel TTL minimum untuk suatu zona.
- MX :Ini adalah catatan Mail exchanger. Ini menentukan server email yang menerima dan mengirim email
- CNAME :Ini adalah Nama Kanonik. Ini memetakan nama domain alias ke nama domain lain.
- PTR :Kependekan dari Pointer, atribut ini menyelesaikan alamat IP ke nama domain, berlawanan dengan nama domain.
Langkah 4:Buat file zona DNS terbalik untuk domain
Demikian pula, kita perlu membuat file untuk pencarian DNS terbalik. Rekatkan konten berikut ke dalam file:
[[email protected] ~]# vim /var/named/linuxtechi.local.rev $TTL 86400 @ IN SOA dns-primary.linuxtechi.local. admin.linuxtechi.local. ( 2020011800 ;Serial 3600 ;Refresh 1800 ;Retry 604800 ;Expire 86400 ;Minimum TTL ) ;Name Server Information @ IN NS dns-primary.linuxtechi.local. dns-primary IN A 192.168.43.35 ;Reverse lookup for Name Server 35 IN PTR dns-primary.linuxtechi.local. ;PTR Record IP address to Hostname 50 IN PTR www.linuxtechi.local. 60 IN PTR mail.linuxtechi.local.
Selanjutnya, tetapkan izin file yang diperlukan ke dua file konfigurasi.
# chown named:named /var/named/linuxtechi.local.db # chown named:named /var/named/linuxtechi.local.rev
Untuk mengonfirmasi bahwa file pencarian zona DNS bebas dari kesalahan sintaksis, jalankan perintah yang ditunjukkan:
# named-checkconf # named-checkzone linuxtechi.local /var/named/linuxtechi.local.db # named-checkzone 192.168.43.35 /var/named/linuxtechi.local.rev
Jika tidak ada kesalahan, Anda akan mendapatkan output yang ditampilkan:
Agar perubahan terlihat di sistem, mulai ulang server Bind DNS
# systemctl restart named
Agar sistem klien dapat mengakses sistem, kita perlu menambahkan layanan DNS pada firewall dan setelah itu memuat ulang firewall.
# firewall-cmd --add-service=dns --zone=public --permanent # firewall-cmd --reload
Langkah 5:Uji server DNS Bind dari sistem klien
Setelah menyelesaikan konfigurasi pada server DNS, mari menuju ke mesin klien dan melakukan beberapa pengujian.
Pada mesin klien ( CentOS 8 / RHEL 8), buka /etc/resolv.conf file dan edit parameter berikut:
server nama 192.168.43.35
Seperti biasa, simpan &tutup file konfigurasi.
Terakhir, Anda perlu menambahkan alamat IP server Bind DNS ke /etc/sysconfig/network-scripts/ifcfg-enp0s3 file seperti yang ditunjukkan.
Simpan dan tutup file konfigurasi dan kemudian restart layanan manajer jaringan untuk membuat perubahan di atas berlaku,
# systemctl restart NetworkManager
Menggunakan perintah nslookup, uji server Bind DNS seperti yang ditunjukkan:
# nslookup dns-primary.linuxtechi.local # nslookup mail.linuxtechi.local # nslookup www.linuxtechi.local # nslookup ftp.linuxtechi.local
# nslookup 192.168.43.35
Keluaran dari perintah nslookup mengonfirmasi bahwa pencarian DNS penerusan berfungsi seperti yang diharapkan.
Selain itu, Anda juga dapat menggunakan perintah dig seperti yang ditunjukkan
# dig dns-primary.linuxtechi.local
Untuk melakukan pencarian DNS terbalik, gunakan perintah dig seperti yang ditunjukkan:
# dig -x 192.168.43.35
Sempurna! Pencarian DNS terbalik juga berfungsi seperti yang kami harapkan.
Dan itu mengakhiri tutorial ini. Dalam panduan ini, kami memandu Anda melalui penginstalan server DNS menggunakan Bind pada CentOS 8. Cobalah dan jangan ragu untuk mengirimkan tanggapan Anda.
Baca Juga : Cara Setup Server NFS di CentOS 8 / RHEL 8