Syslog, Linux işletim sistemimiz üzerinde neler olup bittiğini öğrenmek ve geriye yönelik sisteme giriş, uyarı, durum, hata ve rapor gibi kayıtların tutulduğu sistemlerdir. Bu sayede sistem yöneticileri için büyük önem taşır. Syslog sistem hatalarının, saldırıları veya işletim sisteminde oluşan problemler gibi durumları kayıt altında tutar. Bu gibi durumları tespit edebilmemiz için SysLog kayıtlarını geçmişe yönelik olarak incelememiz yeterli olacaktır. Bu kayıtlar sayesinde sistem yöneticileri sistem üzerindeki anormalileri tespit ederek sistemin verimli veya güvenli çalışmasını sağlar, olası hata durumlarında çözüm üretebilirler.
Syslog sistemlerinin bir diğer özelliği de başka bir sisteme bu kayıtların aktarılabilmesidir. Bu sayede uzaktan log kayıtlarınıza erişebilir ve yönetim sağlayabilirsiniz. Klasik linux sistemlerde bu kayıtlar /etc/syslog.conf şeklinde ayarlanabilir. Ancak modern Linux sistemlerde SysLog’a yeni özellikler eklenerek rsyslogd servisi geliştirilmiştir.
Klasik Linux sistemlerde log kayıtları /var/log dizini altında tutulmaktadır. Bu dizin SysLog aracılığı ile ortak bir şekilde log kayıtların tutulduğu önemli bir dizindir.
SysLog Örnekleri
Sisteme Giriş Kayıtları
Sisteme en son hangi kullanıcının bağlantı sağladığı bilgisi /var/log/lastlog dosyası içeriğinde görüntülenebilir. Bu dosyayı tail veya nano gibi bir editörle açmaya kalkarsanız anlamsız karakterler karşınıza gelir. Bu dosya içeriğini okumak için Linux terminalde “Last” komutunu vermeniz yeterli olacaktır.
root pts/0 192.168.XX.XX Wed Aug 15 13:09 - 23:10 (3+10:00)
reboot system boot 3.x.x.x.x Wed Aug 15 13:08 - 01:30 (30+12:21)
Last komutunu terminalde çalıştırdığınız zaman yukarıdaki gibi bir çıktı karşınıza gelecektir. Bu çıktı üzerinde sisteme giriş yapan kullanıcıların hangi ip adresinden bağlandığı ile birlikte, tarih ve saat bilgisini de görebilirsiniz.
Sistem Üzerindeki Son Durum
Linux işletim sistemine ait olan tüm hareketler ve aktiviteler /var/log/messages log dosyası içerisinde yer almaktadır. Tailf veya Nano gibi bir editörle bu dosyayı açarak içeriğini okuyabilirsiniz.
[root@domain log]# tailf /var/log/messages
Mar 2 19:29:01 domain systemd: Started Session 500679 of user root.
Mar 2 19:30:01 domain systemd: Created slice User Slice of admin.
Mar 2 19:30:01 domain systemd: Started Session 500681 of user admin.
Mar 2 19:30:01 domain systemd: Started Session 500680 of user root.
Mar 2 19:30:01 domain systemd: Started Session 500682 of user root.
Mar 2 19:30:01 domain systemd: Started Session 500683 of user admin.
Sunucunuz üzerindeki Apache Kayıtları
Sunucunuz üzerine kurmuş olduğunuz bir Apache veya benzeri yorumlayıcının kayıtları da /var/log dizini içerisinde yer almaktadır. Bu kayıtlar genel olarak /var/log/httpd klasörü içerisindedir. Ancak Nginx veya benzeri bir sistemde /var/log/ngix gibi farklı klasörlere de yazılabilir.
Nginx üzerinde yayın yaptığınız domain.com gibi internet sayfanızın hata mesajlarına ulaşmak için Linux terminalinde aşağıdaki komutu uygulayarak okuyabilirsiniz.
Sunucunuz üzerindeki hatalı giriş veya benzeri aktivitelere de bu dizinden ulaşarak bilgi alabilirsiniz /var/log/secure dosyasını bir editör ile açarak bu kayıtları görebilirsiniz.
[root@domain log]# tailf /var/log/secure
Mar 2 19:30:01 domain sudo: pam_unix(sudo:session): session closed for user root
Mar 2 19:30:02 domain sudo: pam_unix(sudo:session): session closed for user root
Mar 2 19:35:01 domain sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Mar 2 19:35:01 domain sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Sunucunuz üzerindeki kayıtlar genel olarak aşağıdaki arşivlenmektedir.
Log kayıtlarının arşivlenmesi
Log dosyaları bir süre sonra aşırı şekilde büyüyecek ve sisteminizde yer kaplayacaktır. Bu durumu önlemek ve sistemi daha rahat kontrol edebilmek için log dosyalarının arşivlenmesini tavsiye ederiz. Bu işleme log rotasyonu denilir. Arşivleme genel olarak /etc/logrotate.conf dosyası içerisinden belirlenir. Bu dosyanın içeriğini açtığınız zaman loglama döngüsünü “Daily”, “Weekly” veya “Monthly” şeklinde belirleyebilirsiniz. Log döngüsü varsayılan olarak Rotate 4 ile belirlenmiştir yani geriye yönelik 4 hafta log kayıtları tutulabilir. İhtiyacınıza göre bu döngüyü artırıp, azaltabilirsiniz. Bu döngü de arşivleme yapılarak (dosya sıkıştırması) saklanır.