Merhaba ,
Bu yazıda Linux Sistemlerde Log olaylarından bahsedeceğim .Öncelikle kullandığımız Linux sistemlerde loglama olayı syslog aracılığı ile yapılmaktadır.Syslog’ u ise şöyle açıklayabiliriz : Linux sistemimizde arka planda neler olup bittiğini öğrenmek ve geriye yönelik uyarı,durum ya da hata,rapor kayıtlarına ulaşmak sistem yöneticileri için büyük önem taşır.İşte bu durumlarda bu kayıtlara ulaşabilmemiz syslogd(syslog deamon) ile mümkün olabilmektedir.
Konuya geçmeden bizim bu noktada bilmemiz gereken birden fazla Linux sistem syslog’a log gönderebilir ya da uzaktan log çekebilir.Ayrıca eski klasik linux sistemlerde biz /etc/syslog.conf şeklinde syslog’u görüntüleyebiliyorduk ancak yeni modern linux sistemlerde işi bir adım öne götürerek rsyslogd geliştirilmiştir.
Syslogd ve /etc/rsyslog.conf dosyaları log olayında bilinmesi gereken iki kavramdır.Aşağıdaki örneklerde bu dosyaların ekran görüntülerini paylaşacağım.
Öncelikle rsyslog.conf dosyasından başlayalım.Terminalde cat /etc/rsyslog.conf komutunu çalıştırdığımda şöyle bir sonuç alıyorum.
Yukarıdaki görüntüde kırmızı ok ile belirttiğim yerlerde hangi log dosyasının nerede tutulacağı belirlenir. Burdaki log dosyaları , kullanılan Linux işletim sistemi dağıtımına göre değişsede tüm Linux sistemlerde önemli loğlar aynı addadır ve yerleri rsyslog.conf dosyasında belirtilir.
Diğer bir önemli dizin ise /var/log dizinidir. Bu dizin, Syslog aracılığı ile logların tutulduğu dizin olarak adlandırılır. O yüzden güvenliği büyük önem arz etmektedir.Örnek ekran görüntüsünü aşağıda verdim
Sistemin Giriş Çıkış Logları
Bu loğlar sistemde /var/log/auth.log dosyasında saklanır.Kim hangi user’la ne zaman bağlanmış görebiliriz.
Sisteme Son Giren Kullanıcı Logu
Sisteme en son hangi kullanıcının girdiği bilgisi /var/log/lastlog ‘ da görüntülenebilir. Ancak bu dosya ikili dosya formatında bir dosya olduğu için doğrudan okunamaz.
last komutu ile bu dosyanın içeriğini okunabilir hale getirebiliriz.Resimde de görülebildiği üzere sisteme son giren kişinin bilgisi ve hala login olup olmadığı görüntülenebilir.
Sisteme ait Genel Loglar
Sisteme ait tüm hareketler(aktiviteler) /var/log/messages dosyasında tutulur.
Benzer şekilde uygulama loğlarını da burdan takip edebiliriz. Örnek olarak sistemde apache sunucusu kurulu ise loglarını /var/log/apache2/access.log ile erişim loglarını /var/log/apache2/error.log ile hata loglarını görüntüleyebiliriz.Nitekim Kernel loglarına /var/log/kern.log ile erişebiliriz.
Loglar’ın arşivlenmesi(Log Rotasyonu)
Logların aşırı büyümesini önlemek ve sonradan ihtiyacımız olduğunda kolayca erişebilmemiz için logları rotasyona tabi tutuyoruz. Arşivleme /etc/ altında logrotate.conf dosyasından yapılır.
Burda rotasyon sıklığı (weekly,daily veya monthly olarak belirlenebilir)
Son kaç rotasyonun saklanacağı örnekte rotate 4 ile belirlenmiş.Yani bu örnekte haftalık olarak rotasyon yapacak ve son 4 haftanın loglarını compress ile sıkıştırarak saklayacak.