Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!
[h=4]Bind Kurulumu
[/h]
İ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 Linuxun 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.
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. Buradakii 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 1de 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 2de 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 1de 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 1de 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
[TABLE="align: center"]
[TR]
[TD]Mode
[/TD]
[TD]Directory
[/TD]
[TD]Run Level Description
[/TD]
[/TR]
[TR]
[TD]0
[/TD]
[TD]/etc/rc.d/rc0.d
[/TD]
[TD]Halt
[/TD]
[/TR]
[TR]
[TD]1
[/TD]
[TD]/etc/rc.d/rc1.d
[/TD]
[TD]Single-user mode
[/TD]
[/TR]
[TR]
[TD]2
[/TD]
[TD]/etc/rc.d/rc2.d
[/TD]
[TD]Not used (user-definable)
[/TD]
[/TR]
[TR]
[TD]3
[/TD]
[TD]/etc/rc.d/rc3.d
[/TD]
[TD]Full multi-user mode (no GUI interface)
[/TD]
[/TR]
[TR]
[TD]4
[/TD]
[TD]/etc/rc.d/rc4.d
[/TD]
[TD]Not used (user-definable)
[/TD]
[/TR]
[TR]
[TD]5
[/TD]
[TD]/etc/rc.d/rc5.d
[/TD]
[TD]Full multiuser mode (with GUI interface)
[/TD]
[/TR]
[TR]
[TD]6
[/TD]
[TD]/etc/rc.d/rc6.d
[/TD]
[TD]Reboot
[/TD]
[/TR]
[/TABLE]
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 promptuna setup komutunu girmek ve çıkan arayüzden Services seçeneğine tıklamak olacaktır. Resim 4de 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 databasei yani zoneu oluşturmak ve bindın bu zoneu 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 databasede hangi zoneları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 7de 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 zoneun 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 zoneun lokal sunucuda barındığını ( type master; ), test.com.zone adlı bir dosya olarak saklandığını ( file test.com.zone; ) ve updatelere izin verilmediğini ( allow-update { none; }; )belirtmiş olduk. İşlemi gerçekleştirdikten sonra esc tuşu ile insert modedan çı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.zonedosyası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 9da 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 Microsoftun DNS zoneundaki değerlerle aynıdır. Örneğin Zonea 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
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 promptunda 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 11de 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.
İ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 Linuxun 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.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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. Buradakii 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 1de görülmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 2de görülmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 1de gösterilmektedir. --levels Parametresi ile bindın linux üzerindeki servis adı olan named servisinin çalışma seviyelerini belirteceğiz.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Resim 3
Chkconfig --levels 35 named on komut dizisi ile servisin 3 ve 5 seviyesinde çalışacağını belirtiyoruz. Tablo 1de 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
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
bağlantısındaki dökümana gözatmanızı tavsiye ederim.[TABLE="align: center"]
[TR]
[TD]Mode
[/TD]
[TD]Directory
[/TD]
[TD]Run Level Description
[/TD]
[/TR]
[TR]
[TD]0
[/TD]
[TD]/etc/rc.d/rc0.d
[/TD]
[TD]Halt
[/TD]
[/TR]
[TR]
[TD]1
[/TD]
[TD]/etc/rc.d/rc1.d
[/TD]
[TD]Single-user mode
[/TD]
[/TR]
[TR]
[TD]2
[/TD]
[TD]/etc/rc.d/rc2.d
[/TD]
[TD]Not used (user-definable)
[/TD]
[/TR]
[TR]
[TD]3
[/TD]
[TD]/etc/rc.d/rc3.d
[/TD]
[TD]Full multi-user mode (no GUI interface)
[/TD]
[/TR]
[TR]
[TD]4
[/TD]
[TD]/etc/rc.d/rc4.d
[/TD]
[TD]Not used (user-definable)
[/TD]
[/TR]
[TR]
[TD]5
[/TD]
[TD]/etc/rc.d/rc5.d
[/TD]
[TD]Full multiuser mode (with GUI interface)
[/TD]
[/TR]
[TR]
[TD]6
[/TD]
[TD]/etc/rc.d/rc6.d
[/TD]
[TD]Reboot
[/TD]
[/TR]
[/TABLE]
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 promptuna setup komutunu girmek ve çıkan arayüzden Services seçeneğine tıklamak olacaktır. Resim 4de 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.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 databasei yani zoneu oluşturmak ve bindın bu zoneu 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 databasede hangi zoneları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)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 7de 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 zoneun tanınmamasına neden olabilir. (Tecrübe ile sabittir.)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Resim 7
Girmiş olduğmuzu bilgilerle test.com adında bir zone olduğunu ( zone test.com IN { ), bu zoneun lokal sunucuda barındığını ( type master; ), test.com.zone adlı bir dosya olarak saklandığını ( file test.com.zone; ) ve updatelere izin verilmediğini ( allow-update { none; }; )belirtmiş olduk. İşlemi gerçekleştirdikten sonra esc tuşu ile insert modedan çı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.zonedosyasını test.com.zone dosyası olarak kopyalıyoruz. (Resim 8)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 9da 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)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Resim 9
Buradaki değerler Microsoftun DNS zoneundaki değerlerle aynıdır. Örneğin Zonea 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
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 promptunda named reload koutunun çalıştırılmasıdır. (Resim 10)
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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 11de komut ile yapılmış bir kaç sorgu görülmektedir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
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.