Syslogs

Linux/Unix ve Acık Kod uygulamalar uzerine dokumanlar, ipuclari, gelistirmeler ve fazlasi…
idefix Satış Ortağı

Ana Sayfa » *nix » FreeBSD üzerine Rsyslog Kurulumu ve Yapılandırması

FreeBSD üzerine Rsyslog Kurulumu ve Yapılandırması

BerbatKötüİdare EderGüzelHarika (Henüz Puan Verilmedi. Oy kullanarak siz de katkı yapabilirsiniz.)

Syslog’un gelişmiş versiyonu olan Rsyslog’u sisteminizde kullanmak için kurulumunu kolayca yapabilir ve bir iki yapılandırma işlemi ile syslogd’nin yerine geçmesini sağlayabilirsiniz.

Rsyslog, sistemlere port edilmiş durumdadır. Yani port ağacından kurmak mümkün. İşe başlamadan önce port ağacınızın güncel olduğundan emin olun. Hızlıca güncellemek için şu adresten yararlanabilirsiniz: http://www.syslogs.org/2008/06/using-portsnap/

Rsyslog, port ağacında sysutils/rsyslog3 ismi ile bulunuyor. Sql destekli kurmak isterseniz sysutil dizini altındaki rsyslog3-mysql portunu kullanabilirsiniz. Ancak biz salt rsyslog kuracağımız için rsyslog3 isimli portu kullanacağız.


Port ağacında ilgili dizine  girin:

Komut
# cd /usr/ports/sysutils/rsyslog3

ve sonra herzamanki gibi kurulumu gerçekleştirin:

Komut
# make install clean

Rsyslog sisteme kurulduktan sonra rsyslog’u yapılandırmak gerekiyor.

Yapılandırma


Önce halihazırda çalışmakta olan syslogd’yi stop edelim.

Komut
# /etc/rc.d/syslogd stop

Şimdi syslog’un sistem açılışlarında otomatik olarak başlamaması için rc.conf dosyasına syslogd_enable=”NO” satırını ekliyoruz.

Komut
# echo 'syslogd_enable="NO"' >> /etc/rc.conf

Syslogd tamamen devre dışı bırakıldıktan sonra, aynı şekilde rsyslog’un sistem açılışlarında devreye girmesi için rc.conf’a gerekli satırları ekliyoruz:

Komut
echo 'rsyslogd_enable="YES"' >> /etc/rc.conf
echo 'rsyslogd_pidfile="/var/run/syslog.pid"' >> /etc/rc.conf
echo 'rsyslogd_flags="-c3"' >> /etc/rc.conf

Şimdi de, sistemde önceden syslogd tarafından kullanılan syslog.conf dosyasını rsyslog.conf ismi ile /usr/local/etc dizinine taşıyalım. Böylece, rsyslog, syslog’un şimdiye kadar yaptığı işi devralmış olacak ve log ayarlarınız bozulmayacak.

Komut
# cp /etc/syslog.conf /usr/local/etc/rsyslog.conf

Rsyslog çalışmaya hazır sayılır ancak önce rsyslog.conf dosyasına bir iki ekleme yapacağız.

/usr/local/etc/rsyslog.conf dosyasını editleyin:

Komut
# vi /usr/local/etc/rsyslog.conf

ve dosyanın en tepesine aşağıdaki satırları yapıştırın.

Çıktı
$ModLoad immark.so   # provides --MARK-- message capability
$ModLoad imuxsock.so # provides support for local system logging
$ModLoad imklog.so   # kernel logging

Ayrıca, rsyslog’u merkezi bir log sunucusu olarak kullanmak istemeniz durumunda, başka sistemlerden logları alabilmesi için network desteğini aktif hale getirin. Gene aynı dosya içerisine, yukarıda verilen satırların hemen altında şu ibareleri ekleyin:

Çıktı
# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

Satır açıklamalarından da anlaşılacağı üzere, üstteki kısım rsyslog’un udp 514. portu dinlemesi için imudp isimli modülü devreye alıyor. Aynı şey tcp 514. port için de imtcp modülü ile yapılıyor. Yani artık uzak sunuculardan bu rsyslog sunucusuna udp 514 ya da tcp 514 üzerinden log gönderilebilir.

Dosyayı kaydedip çıktıktan sonra rsyslog’u başlatıyoruz.

Komut
# /usr/local/etc/rc.d/rsyslog start

Herşey yolunda gittiyse rsyslog sunucusu çalışıyor demektir.

Rsyslog’un Test Edilmesi

Düzgün çalıştığını doğrulamak için, logger komutu ile bir log üretilebilir ve messages isimli log dosyasına yazılıp yazılmadığu test edilebilir.

Komut
# logger "Bu log'un, /var/log/messages dosyasına yazılması gerekir."

komutu verdikten sonra tail ile messages dosyasını kontrol edelim.

Komut
# tail /var/log/messages

Rsyslog’unuz düzgün çalışıyorsa, messages dosyasında aşağıdakine benzer bir satır görmeniz gerekir.

Çıktı
2009-08-30T21:46:55.921355+03:00 test-bsd cagri: Bu log'un, /var/log/messages dosyasna yazlmas gerekir.

Ayrıca, rsyslog’un tcp ve udp 514. portu dinleyip dinlemediğini anlamak için netstat komutundan yararlanılabilir:

Komut
# netstat -an |grep 514

Çıktı şu şekilde olmalıdır:

Çıktı
tcp4       0      0 *.514                  *.*                    LISTEN
tcp6       0      0 *.514                  *.*                    LISTEN
udp4       0      0 *.514                  *.*
udp6       0      0 *.514                  *.*

Evet görüldüğü gibi portlar dinleniyor, bu durumda rsyslog uzak sistemlerden gönderilecek logları da alabilecektir. Bu işlemin nasıl yapıldığını, Rsyslog ile Merkezi Log Sunucusu Kurulumu başlıklı yazıda bulabilirsiniz.

Ayrıca, herhangi bir tersliğe karşı rsyslog’u debub etmek için şu adımları izleyebilirsiniz.

Rsyslog’un Debug Edilmesi

Önce rsyslog’u stop edin.

Komut
# /usr/local/etc/rc.d/rsyslogd stop

ve komut satırından, debug parametresi ile start edin:

Komut
# /usr/local/sbin/rsyslogd -c3 -i /var/run/syslog.pid -f /usr/local/etc/rsyslog.conf -d

Bu şekilde rsyslog ile ilgili detaylı bilgi ekrana basılacaktır.

Genel olarak sistemlerde, rsyslog kurulumu bundan ibarettir.

  • Google Bookmarks
  • Twitter
  • FriendFeed
  • LinkedIn
  • Digg
  • Technorati
  • Facebook
  • del.icio.us
  • Add to favorites
  • Yahoo! Bookmarks
  • Live
  • Reddit
  • StumbleUpon
  • MySpace
  • Print
  • PDF
  • email
Tags: , , ,

Belki şu konular da ilginizi çeker
Kategori: *nix | |

YORUMLAR


Trackbacks

Yorumda bulunun.