Baglantilar

Yazar: | Kategori: LinuX
Yorum: 0

sim çözümleme servisinin önemini bilmeyen yok denecek kadar azdır. Bu nedenle; gerek sistemin kararlılığı gerekse organizasyonun ekonomik çözümler arayışı, bu servisi ücretsiz sunan Linux işletim sisteminin aranılan sistemler arasında olmasına yetmiştir. Bu makalede Linux’un Red Hat arayüzünü kullanarak isim çözümleme servisini yani BIND’ı inceleyeceğiz.

Bind, hem komut satırından text editörleri ile hem de (Red Hat) GUI arayüzü ile konfigüre edilebilir. Makalede, komut satırından yükleme ve konfigürasyon işlemlerinden bahsedeceğim. Bunun için öncelikle bind’ın Linux üzerinde çalışan sürümünü gerekli adreslerden indirmemiz gerekecektir. Aşağıdaki linklerden bind için gerekli kurulum dosyalarını indirebiliriz. Bu arada küçük bir hatırlatma yapmak istiyorum; RedHat üzerinde çalışabilen, uzantısı .tar.gz şeklindeki kurulum paketi türünün yanısıra RedHat tasarımcıları tarafından tasarlanmış kurulum paketi türü de mevcuttur. Bu paketin uzantısı .rpm şeklindedir. Kolay kurulum ve uyumluluk açısından tercihim .rmp paketinden yana olacaktır.

ftp://ftp.wh2.tu-dresden.de/pub/mirrors/redhat/redhat/9/en/os/i386/RedHat/RPMS/bind-9.2.1-16.i386.rpm

ftp://ftp.wh2.tu-dresden.de/pub/mirrors/redhat/redhat/9/en/os/i386/RedHat/RPMS/bind-devel-9.2.1-16.i386.rpm

ftp://ftp.wh2.tu-dresden.de/pub/mirrors/redhat/redhat/9/en/os/i386/RedHat/RPMS/bind-utils-9.2.1-16.i386.rpm

ftp://ftp.wh2.tu-dresden.de/pub/mirrors/redhat/redhat/9/en/os/i386/RedHat/RPMS/caching-nameserver-7.2-7.noarch.rpm

Gerekli paketleri indirip bir klasöre kopyaladıktan sonra kuruluma geçebiliriz. Bunun için bir shell penceresinde Rpm komutunu kullanmamız gerekecek. Komut dizilimi rpm –i kurulumpaketi.rpm şeklinde oalcaktır. Buradaki –i parametresi install’ı temsil etmekte olup sistemde önceden yüklü bir rpm paketi varsa, herhangi bir sorunla karşılaşmadan yüklemeyi gerçekleştirmek için –force parametresini kullanabiliriz. İndirilen rpm paketleri ve kurulum komutları Resim 1‘de görülmektedir.

Resim 1

Yaptığımız kurulumu teyit etmek için yine rpm komutunu aşağıdaki parametreleri kullanarak gerçekleştirebiliriz. –q Paramatresi ile amacımıza ulaşabilir, grep Parametresi kullanarak istenilen sözcüğe ait rpm kurulumlarını listeleyebiliriz. Bind ve bind ile birlikte çalışan caching servisini teyit etmek için gerekli komut ve parametreler Resim 2’de görülmektedir.

Resim 2

Kurulum işleminden sonra sıra, servisi çalışır duruma getirmeye geldi. Bu işlem için chkconfig komutunu kullanmamız gerekecek. Linux üzerindeki servislerin belli bir çalışma seviyeleri bulunmaktadır. Bu seviyeler Tablo 1’de gösterilmektedir. –levels Parametresi ile bind’ın Linux üzerindeki servis adı olan named servisinin çalışma seviyelerini belirteceğiz.

Resim 3

Chkconfig –levels 35 named on komut dizisi ile servisin 3 ve 5 seviyesinde çalışacağını belirtiyoruz. Tablo 1’de görüldüğü üzere seviye 3 servisin grafik arayüzü olmadan başlatılmasını, seviye 5 ise grafik arayüzü ile başlatılmasını belirtmektedir. Ayrıntılı bilgi için http://www.belgeler.org/lis/archive-tlkg-lis-5.9.html bağlantısındaki dökümana gözatmanızı tavsiye ederim.

Mode

Directory

Run Level Description

0 /etc/rc.d/rc0.d Halt
1 /etc/rc.d/rc1.d Single-user mode
2 /etc/rc.d/rc2.d Not used (user-definable)
3 /etc/rc.d/rc3.d Full multi-user mode (no GUI interface)
4 /etc/rc.d/rc4.d Not used (user-definable)
5 /etc/rc.d/rc5.d Full multiuser mode (with GUI interface)
6 /etc/rc.d/rc6.d Reboot

Tablo 1

Böylece Bind’ın nasıl başlatılacağını belirlemiş olduk. Bu işlemi basit olarak grafik arayüzinden de yapabilriz. Bunun için shell prompt’una setup komutunu girmek ve çıkan arayüzden Services seçeneğine tıklamak olacaktır. Resim 4’de named servisi ile ilgili işlem yapacağımız seçim ekranı görülmektedir. Named servisini seçmemiz otomatik olarak başlamasını sağlayacaktır.

Resim 4

Named servisinin başlangıç şeklini belirlemiş olduk fakat bu servis şu anda çalışmadığından /etc/init.d klasörleri altındaki named servisi için named start komutunu çalıştırmamız gerekecektir. Yine teyit etmek için ps aux | grep –i named komut dizisini kullanacağız. (Resim 5)

Resim 5

Buraya kadar bind servisini çalıştırmak için gerekli kurulumları ve konfigürasyonları yapmış olduk. Sırada bind servisinin isim çözümleme yapabilmesi için gerekli database’i yani zone’u oluşturmak ve bind’ın bu zone’u tanımasını sağlamak. Bu işlem için ilk olarak /etc klasörü altında bulunan named.conf klasörüne yeni bir zone bilgisi eklemek olacaktır. Böylece Bind servisi yeniden başladığında database’de hangi zone’ların bulunduğundan haberdar olacaktır. Named.conf dosyasını düzenlemek için vi ya da kwrite benzeri bir text editör kullanabiliriz. Tamamen kendi isteğimden ötürü vi editörünü tercih ediyorum. (Resim 6)

Resim 6

Burada küçük bir hatırlatma yapmak istiyorum; named.conf dosyası içine vi editörü ile giriş yaptığınızda düzenleme yapabilmek için i tuşuna basmak, kaydedip çıkmak içinse ;wq yazmak gereklidir. Hatırlatmadan sonra Resim 7’de görünen şekli ile yeni bir zone tanımı yapıyoruz. Burada dikkat edilmesi gereken bir durum da noktalama işaretleridir. En küçük bir hata dahi zone’un tanınmamasına neden olabilir. (Tecrübe ile sabittir.)

Resim 7

Girmiş olduğmuzu bilgilerle test.com adında bir zone olduğunu ( zone “test.com” IN { ), bu zone’un lokal sunucuda barındığını ( type master; ), test.com.zone adlı bir dosya olarak saklandığını ( file “test.com.zone”; ) ve update’lere izin verilmediğini ( allow-update { none; }; )belirtmiş olduk. İşlemi gerçekleştirdikten sonra esc tuşu ile insert mode’dan çıkıp ;wq yazarak named.conf dosyasını kaydediyoruz. Sıra geldi zone dosyasını oluşturup konfigüre etmeye… Öncelikle yukarıda bahsetmiş olduğum test.com.zone dosyasını oluşturmak için başka bir zone dosyasını kopyalayarak işimizi kolaylaştıracağız. Zone dosyaları /var/named klasörü altında bulunmaktadır. Buradaki zone dosyalarını görüntülemek için ls komutunu kullanıp cp komutu ile localhost.zone dosyasını test.com.zone dosyası olarak kopyalıyoruz. (Resim 8)

Resim 8

Kopyalama işlemi ile istediğimiz zone dosyasını oluşturmuş olduk. Sıra geldi konfigürasyona… Bunun için yine vi editörünü kullanacağız. Zone dosayasının içeriğini Resim 9’da görüldüğü gibi düzenliyoruz. Bu işlemi yaparken noktalama işaretlerine dikkat etmemiz gerektiğini hatırlatmama gerek yok sanırım… (Resim 9)

Resim 9

Buradaki değerler Microsoft’un DNS zone’undaki değerlerle aynıdır. Örneğin Zone’a air SOA değerleri (Serial, Refresh, Retry vs.), Zone ile aynı adı taşıyan A, MX ve NS kayıtları ( IN NS ns1.test.com) ve istenilen hostlara ait A kayıtları (www IN A 192.168.2.51). Ayrıntılı bilgi için http://www.belgeler.org/lis/archive-tlkg-lis-9.3.html bağlantısındaki dökümanı inceleyebilirsiniz.

Konfigürasyonu tamamladıktan sonra Named servisinin yeniden yüklenmesi gerekir. Bunu yapmaktaki amaç konfigürasyon değişikliğinin named servisi tarafından algılanmasıdır. Bunun için yapmamız gereken shell prompt’unda named reload koutunun çalıştırılmasıdır. (Resim 10)

Resim 10

Bu işlemden sonra Bind server’ın kurulum ve konfigürasyonunu tamamlamış oluyoruz. Sıra geldi Bind’ı test etmeye. Bunun için bilindik bir komut olan nslookup’ı kullanacağız. Resim 11’de komut ile yapılmış bir kaç sorgu görülmektedir.

Resim 11

Görüldüğü üzere Linux işletim sistemlerini kullanarak organizasyonlar için hem ekonomik hem de basit çözümler sunabilmekteyiz. Bind ve benzeri servislerin Linux sistemleri üzerinde yapılandırılması, olası DNS problemlerinde isim çözümleme altyapısının tamamen çökme riskini ortadan kaldıracaktır.

Bir başka makalede görüşmek üzere…

Seymen URAL

Yukarı
Yazilar iin RSS aboneligi