KernelPunk

root
Forum yöneticisi
Linux sunucularında log dosyaları, sistemin işleyişini anlamak, hata ayıklamak, güvenlik tehditlerini tespit etmek ve performansı analiz etmek için kritik öneme sahiptir. Doğru bir log yönetimi ve analizi, sistem yöneticilerine sunucunun durumu hakkında derinlemesine bilgi sunar ve olası sorunları önceden tespit etmelerini sağlar.

1. Linux’ta Log Dosyaları Nedir ve Neden Önemlidir?​

Log dosyaları, sistemdeki olayları ve işlemleri kayıt altına alan metin dosyalarıdır. Bu dosyalar, sistem yöneticilerine aşağıdaki konularda yardımcı olur:
  • Hata ayıklama: Uygulama veya sistem hatalarını tespit etmek
  • Güvenlik izleme: Yetkisiz erişim ve saldırıları tespit etmek
  • Performans izleme: Sunucu kaynaklarının kullanımını analiz etmek
  • Uygulama takibi: Çalışan servislerin ve süreçlerin durumunu gözlemlemek
Linux sistemlerinde log dosyaları genellikle /var/log/ dizininde saklanır ve farklı bileşenler için çeşitli log dosyaları oluşturulur.

2. Önemli Linux Log Dosyaları ve İşlevleri​

Linux sunucularında en sık karşılaşılan log dosyaları şunlardır:
Log DosyasıAçıklama
/var/log/syslogGenel sistem olaylarını kaydeder (Ubuntu/Debian).
/var/log/messagesGenel sistem olaylarını kaydeder (RHEL/CentOS).
/var/log/auth.logKullanıcı giriş-çıkış ve kimlik doğrulama olaylarını içerir.
/var/log/dmesgSistem açılışı sırasında yüklenen donanım ve sürücü bilgilerini içerir.
/var/log/apache2/Apache web sunucusu logları burada bulunur.
/var/log/nginx/Nginx web sunucusu logları burada bulunur.
/var/log/secureGüvenlik olayları ve yetkilendirme işlemlerini içerir.
/var/log/boot.logSistem açılışı ile ilgili bilgileri saklar.

Bu log dosyaları, sistemde olup bitenleri anlamak için kritik bilgiler içerir ve düzenli olarak analiz edilmelidir.

3. Linux Log Yönetimi ve Döngüsel Loglama (Log Rotation)​

Sistem loglarının boyutu zamanla büyüyebilir ve disk alanı dolabilir. Bu nedenle, log dosyalarını düzenli olarak döndürmek (rotate) ve arşivlemek gereklidir.

3.1. Logrotate ile Log Döndürme​

Linux sistemlerinde log dosyalarının yönetimini logrotate aracı sağlar. Logrotate, belirli periyotlarda logları sıkıştırarak eski logları arşivler ve gereksiz büyümeyi önler.

Logrotate’in çalışma mantığı:
  • Belirli aralıklarla eski logları yeni bir dosyaya taşır.
  • İstenirse logları sıkıştırarak saklar.
  • Belirli sayıda eski log dosyasını saklar.
Logrotate Konfigürasyonu:
Logrotate’in yapılandırma dosyası /etc/logrotate.conf yolunda bulunur. Örneğin, günlük log döndürme ve 7 gün saklama işlemi için aşağıdaki yapılandırma kullanılabilir:
Bash:
/var/log/syslog {
    daily
    rotate 7
    compress
    missingok
    notifempty
}
Bu konfigürasyon:
  • Log dosyalarını günlük olarak döndürür.
  • 7 günlük log saklar.
  • Eski logları sıkıştırır.
  • Eksik dosya varsa hata vermez (missingok).
  • Boş log dosyalarını siler (notifempty).

4. Linux Log Dosyalarını Okuma ve Analiz Etme​

Log dosyalarını incelemek için birçok Linux komutu ve araç kullanılabilir.

4.1. Temel Log Okuma Komutları​

  1. Son 10 satırı görüntüleme:
    Bash:
    tail -n 10 /var/log/syslog
  2. Log dosyasını anlık izleme:
    Bash:
    tail -f /var/log/syslog
  3. Belirli bir terimi içeren satırları filtreleme:
    Bash:
    grep "error" /var/log/syslog
  4. Log dosyasında belirli bir tarihi içeren satırları bulma:
    Bash:
    grep "2025-02-12" /var/log/syslog

4.2. Journalctl ile Sistem Loglarını Görüntüleme

Systemd kullanan sistemlerde, logları görüntülemek için journalctl aracı kullanılır.
  • Tüm logları göster:
    Bash:
    journalctl
  • En son 50 log satırını göster:
    Bash:
    journalctl -n 50
  • Belirli bir servise ait logları göster:
    Bash:
    journalctl -u nginx

4.3. Otomatik Log Analiz Araçları​

Log analizinde kullanılan popüler araçlar:
  • GoAccess: Gerçek zamanlı web log analizi yapar.
  • ELK Stack (Elasticsearch, Logstash, Kibana): Büyük ölçekli log analizi ve görselleştirme için kullanılır.
  • Graylog: Merkezi log yönetimi ve analiz imkanı sunar.

5. En İyi Log Yönetimi ve Analiz Uygulamaları​

  • Gereksiz logları saklamaktan kaçının.
  • Log döndürme işlemlerini düzenli olarak yapılandırın.
  • Yetkisiz erişimlere karşı log dosyalarına erişimi sınırlayın.
  • Otomatik analiz araçlarını kullanarak anormallikleri tespit edin.
  • Güvenlik loglarını detaylı inceleyerek siber tehditleri önleyin.
Linux sunucularında log dosyalarının yönetimi ve analizi, sistemin stabil ve güvenli çalışmasını sağlamak için kritik bir adımdır. Doğru yapılandırılmış log yönetimi, hem performans sorunlarını tespit etmeye hem de güvenlik ihlallerini önlemeye yardımcı olur. Logrotate, journalctl, grep gibi temel araçlar ve ELK, Graylog gibi ileri düzey analiz çözümleri kullanarak sunucularınızı daha verimli yönetebilirsiniz.
 
Back
Top