Bind'i RHEL 8'de Özel DNS Sunucusu Olarak Ayarlama


Alan Adı Sistemi (DNS), insanlar tarafından okunabilen alan adlarını (veya Tam Nitelikli Alan Adlarını (FQDN) çevirmek için kullanılan bir yöntemdir. )) makine tarafından okunabilen IP adreslerine, İnternet gibi bir ağdaki bir bilgisayarı bulmak için.

Bilgisayar ve ağ sistemlerinde bu gereklidir çünkü FQDN'lerin insanlar tarafından hatırlanması ve kullanılması kolay olmasına rağmen, bilgisayarlar (istemciler) IP adreslerine dayalı olarak diğer bilgisayarlardaki (sunuculardaki) kaynaklara veya hizmetlere erişir.

Bu bağlamda, bir DNS sunucusu (aynı zamanda ad sunucusu olarak da bilinir), FQDN'lerden oluşan bir dizini tutar ve bunları IP adreslerine çevirir; ayrıca bir ana bilgisayar adı/FQDN sağlandığında bir IP adresi de döndürebilir. Yetkili ad sunucusu, önbelleğe alma ad sunucusu ve diğerleri dahil olmak üzere farklı türde DNS sunucuları vardır.

Bu makalede, BIND açık kaynak yazılımını kullanarak RHEL 8 üzerinde özel/dahili, yetkili bir DNS sunucusu kurma ve yapılandırma adımlarında size yol göstereceğiz.

Gereksinimler:

  1. Minimum Kurulumla RHEL 8
  2. RedHat Aboneliği Etkinleştirilmiş RHEL 8
  3. Statik IP Adresli RHEL 8

Test Ortamım:

Domain: tecmint.lan
DNS Server IP and hostname: 192.168.56.100, dns-primary.tecmint.lan
DNS Client IP and hostname: 192.168.56.104, tecmint.tecmint.lan

Adım 1: Bind DNS'yi RHEL 8'e yükleme

1. Sunucunuza bind'i ve yardımcı programlarını yüklemek için aşağıdaki cdnf komutunu çalıştırın.

dnf install bind bind-utils

2. Ardından, şimdilik DNS hizmetini başlatın, ardından sistem önyüklemesinde otomatik olarak başlatılmasını etkinleştirin ve systemctl komutlarını kullanarak çalışır durumda olup olmadığını kontrol edin.

systemctl start named
systemctl enable named
systemctl status named

Adım 2: RHEL 8'de BIND DNS'yi yapılandırma

3. Bind DNS sunucusunu yapılandırmak için öncelikle aşağıdaki cp'yi kullanarak orijinal yapılandırma dosyasının /etc/named.conf yedeğini almanız gerekir. emretmek.

cp /etc/named.conf /etc/named.conf.orig

4. Şimdi favori komut satırı metin düzenleyicinizi kullanarak düzenlemek için /etc/named.conf yapılandırma dosyasını aşağıdaki gibi açın.

vi /etc/named.conf 

options yapılandırma bölümünün altında aşağıdaki satırları yorumlayın.

options {
        #listen-on port 53 { 127.0.0.1; };
        #listen-on-v6 port 53 { ::1; };
        directory       "/var/named";

5. Ardından, allow-query parametresini arayın ve değerini ağınıza ayarlayın; bu, yalnızca yerel ağınızdaki ana bilgisayarların bunu yapabileceği anlamına gelir. DNS sunucusunu sorgulayın.

allow-query  {localhost; 192.168.56.0/24}

Adım 3: İleri ve Geri DNS Bölgelerini Oluşturma

İleri Bölge, ana makine adı (veya FQDN) ile IP adresi arasındaki ilişkilerin depolandığı yerdir; ana bilgisayar adını kullanarak bir IP adresi döndürür. Normal DNS sorgularının ileriye doğru arama sorguları olduğunu unutmayın. Öte yandan, Ters Bölge, bir ana bilgisayarın IP adresine göre FQDN'sini döndürür.

6. İleri ve geri bölgelerini tanımlamak için /etc/named.conf< dosyasının sonuna aşağıdaki satırları ekleyin. dosyası.

//forward zone 
zone "tecmint.lan" IN { 
     type master; 
     file "tecmint.lan.db"; 
     allow-update { none; }; 
    allow-query {any; }
}; 
//backward zone 
zone "56.168.192.in-addr.arpa" IN { 
     type master; 
     file "tecmint.lan.rev"; 
     allow-update { none; }; 
    allow-query { any; }
};

Yukarıdaki bölge konfigürasyonlarındaki seçenekleri kısaca açıklayalım:

  • tür: Bu sunucunun bölge için rolünü tanımlar. "Ana" değeri, bölge verilerinin ana kopyasının saklandığı yetkili bir sunucu olduğu anlamına gelir.
  • dosya: bölgenin veritabanı dosyasını belirtir.
  • güncellemeye izin ver: ana bölgeler için Dinamik DNS güncellemelerinin gönderilmesine izin verilen ana bilgisayarları belirtir. Bu durumda yok.

Adım 4: İleri DNS Bölge Dosyası Oluşturma

7. Öncelikle /var/named dizini altında bir İleri bölge dosyası oluşturun.

vi /var/named/tecmint.lan.db

İçine aşağıdaki konfigürasyonu ekleyin.

$TTL 86400
@ IN SOA dns-primary.tecmint.lan. admin.tecmint.lan. (
    2019061800 ;Serial
    3600 ;Refresh
    1800 ;Retry
    604800 ;Expire
    86400 ;Minimum TTL
)

;Name Server Information
@ IN NS dns-primary.tecmint.lan.

;IP for Name Server
dns-primary IN A 192.168.56.100

;A Record for IP address to Hostname 
www IN A 192.168.56.5
mail IN A 192.168.56.10
docs  IN A 192.168.56.20

Yukarıdaki bölge tanımını ve parametrelerini kısaca açıklayalım.

  • TTL: RR'nin geçerlilik süresini belirtir ve $TTL yönergesi her biri için varsayılan bir TTL verir. Belirli bir TTL kümesi olmadan RR.
  • @: Ana yapılandırma dosyasında tanımlanan alan adının (örn. tecmint.lan) takma adıdır.
  • IN: İnternet anlamına gelir.
  • SOA: Yetki Başlangıcını belirtir: yetkili ad sunucusunun kim olduğu (dns-primary.tecmint.lan), yöneticinin iletişim bilgileri ( admin.tecmint.lan, @ işaretinin yerini nokta almıştır) ve diğer ilgili bilgiler.
  • NS: ad sunucusu anlamına gelir.
  • Seri: bu değer, DNS sunucusu tarafından belirli bir bölge dosyasının içeriğinin güncel olduğunu doğrulamak için kullanılır.
  • Yenile: ikincil DNS sunucusunun ana sunucudan bölge aktarımını ne sıklıkta gerçekleştirmesi gerektiğini belirtir.
  • Yeniden Dene: başarısız bir bölge aktarımını bir ikincil öğenin ne sıklıkta yeniden denemesi gerektiğini belirtir.
  • Sona Erme: Bir ana sunucuya ulaşılamadığında, ikincil sunucunun istemci sorgusunu yanıtlamadan önce ne kadar beklemesi gerektiğini belirler.
  • Minimum: Bölge için minimum TTL'yi ayarlar.
  • A: Bir ana makine adresi.

Adım 5: Ters DNS Bölge Dosyası Oluşturma

8. Benzer şekilde, /var/named dizini altında bir Ters bölge dosyası oluşturun.

vi /var/named/tecmint.lan.rev

Daha sonra içerisine aşağıdaki satırları ekleyin. Burada PTR, bir IP adresini bir ana makine adıyla eşlemek için kullanılan A kaydının tersidir.

$TTL 86400
@ IN SOA dns-primary.tecmint.lan. admin.tecmint.lan. (
    2019061800 ;Serial
    3600 ;Refresh
    1800 ;Retry
    604800 ;Expire
    86400 ;Minimum TTL
)
;Name Server Information
@ IN NS dns-primary.tecmint.lan.

;Reverse lookup for Name Server
100 IN PTR dns-primary.tecmint.lan.

;PTR Record IP address to HostName
5 IN PTR www.tecmint.lan.
10 IN PTR mail.tecmint.lan.
20 IN PTR docs.tecmint.lan.

9. Bölge dosyalarında doğru sahiplik izinlerini aşağıdaki gibi ayarlayın.

chown :named /var/named/tecmint.lan.db
chown :named /var/named/tecmint.lan.rev

10. Son olarak, yukarıdaki değişiklikleri yaptıktan sonra, named-checkconf yardımcı programını kullanarak DNS yapılandırmasını ve bölge dosyalarının doğru sözdizimine sahip olup olmadığını kontrol edin (çıkış olmaması, hata olmadığı anlamına gelir):

named-checkconf
named-checkzone tecmint.lan /var/named/tecmint.lan.db
named-checkzone 192.168.56.100 /var/named/tecmint.lan.rev

11. Gerekli tüm yapılandırmayı gerçekleştirdikten sonra, son değişikliklerin etkili olması için DNS hizmetini yeniden başlatmanız gerekir.

systemctl restart named

12. Ardından, herhangi bir istemcinin sunucudaki DNS hizmeti yapılandırmalarına erişebilmesinden önce, DNS hizmetini sistem güvenlik duvarı yapılandırmasına eklemeniz ve güvenlik duvarı-cmd yardımcı programını kullanarak güvenlik duvarı ayarlarını aşağıdaki gibi yeniden yüklemeniz gerekir. :

firewall-cmd --permanent --zone=public --add-service=dns 
firewall-cmd --reload

Adım 6: İstemciden DNS Hizmetini Test Etme

13. Bu bölümde DNS hizmetinin istemci tarafından nasıl test edileceğini göstereceğiz. İstemci makinede oturum açın ve yukarıdaki DNS sunucusunu kullanacak şekilde yapılandırın. Linux sisteminde favori metin düzenleyicinizi kullanarak /etc/resolve.conf dosyasını açın.

vi /etc/resolve.conf 

Çözümleyiciye belirtilen ad sunucusunu kullanmasını söyleyen aşağıdaki girişi ekleyin.

nameserver  192.168.56.100

Dosyayı kaydedin ve kapatın. Ağ arayüzü yapılandırma dosyasında DNS sunucusunu da belirtmeniz gerektiğini unutmayın.

14. İstemci makinesi ağ arayüzü yapılandırma dosyasına /etc/sysconfig/network-scripts/ifcfg-enp0s3< çözümleyici olarak DNS sunucularının IP'sini 192.168.56.100 ekleyin. aşağıdaki şekilde gösterildiği gibi.

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=aba298ca-fa65-48cd-add9-6c3f1f28cee2
DEVICE=enp0s3
ONBOOT=no
DNS=192.168.56.100

15. Ardından, www, mail ve docs< ana bilgisayar adını ve tam tersini kullanarak IP'yi sorgulamak için nslookup yardımcı programını kullanın. gösterildiği gibi ağınızdaki sunucuları seçin.

nslookup 192.168.56.5
nslookup www.tecmint.lan
nslookup 192.168.56.10
nslookup mail.tecmint.lan
nslookup 192.168.56.20
nslookup docs.tecmint.lan
nslookup 192.168.56.100
nslookup dns-primary.tecmint.lan

Özet

Bu makalede, BIND yazılımını kullanarak RHEL 8 üzerinde özel, yetkili bir DNS sunucusunun nasıl kurulacağını ve yapılandırılacağını gösterdik. Sizin için her şeyin yolunda gittiğini umuyoruz, aksi takdirde sorularınızı veya diğer yorumlarınızı aşağıdaki geri bildirim formunu kullanarak bize iletin.