Auteur de la discussion #1
grep ile işlem geçmişini inceleme

Günlükler veya işlem geçmişini analiz etmek, sistem güvenliği ve performans takibi açısından temel bir beceridir. Özellikle merkezi loglar veya kullanıcı oturumlarının kaydedildiği dosyalarda, hangi komutların ne zaman çalıştırıldığını anlamak için basit ama etkili bir yol olarak grep kullanılır. Aşağıdaki yaklaşımlar, pratik ve güvenli bir başlangıç sunar.

  • Basit arama: Belirli bir kullanıcı veya süreç için kayıtları filtrelemek. Örneğin bash geçmişi veya komut üretimini içeren loglar üzerinde, belirli bir kullanıcıyı veya komut desenini aramak için grep kullanılabilir. Örnek:
    CODE
    1grep -i "kullaniciadi" /var/log/auth.log
    veya
    CODE
    1grep -i "sudo" /var/log/auth.log

  • Zaman damgası ile daraltma: Log dosyaları çoğu zaman ISO veya geleneksel zaman damgaları içerir. Tarihe göre arama yapmak için tarihle eşleşen desenler kullanılır. Örnek:
    CODE
    1grep '^2024-07' /var/log/syslog
    veya
    CODE
    1grep 'Aug 12' /var/log/syslog

  • Çok satırlı veya zor desenler: İşlem geçmişi bazen birden çok satıra yayılır. GNU grep’in -P (Perl regex) ve -z (nul-terminated) benzetmeleriyle daha karmaşık desenler yakalanabilir. Ayrıca -e ile birden çok deseni aynı anda arama yapabilirsiniz. Örnek:
    CODE
    1grep -P -i 'session|user|command' /var/log/auth.log

  • Dosya boyutu ve günlük dönemiyle arama: Eski günlükler arşivlenmiş olabilir. Belirli bir aralığı hedeflemek için log rotasyonu ve tarih etiketlerini birlikte kullanmak önemlidir. Örnek:
    CODE
    1grep -R --include='*.log' -i 'session opened' /var/log/

  • Güvenlik odaklı uygulamalar: Komut geçmişini analiz ederken kullanıcı adları, sudo yetkileri veya SSH oturum açma denemeleri gibi kritik olayları izlemek için kısa anahtar kelimeler hedeflenir. Örnek:
    CODE
    1grep -i -E 'sudo|ssh|failed|invalid' /var/log/auth.log

  • Sonuçları anlamlı hale getirmek: Çıktıyı daha okunabilir kılmak için grep ile birlikte awk veya cut kullanmak, alanları ayırıp özet bilgi çıkarmayı kolaylaştırır. Örnek:
    CODE
    1grep -i "sudo" /var/log/auth.log | awk '{print $1, $2, $3, $11}'



Güvenlik ve performans bağlamında dikkat edilmesi gerekenler: log dosyalarının konumları ve erişim izinleri sistemden sisteme değişir. Özellikle /var/log dizini, log rotasyonu ve tamponlama politikaları ile şekillenir. Desenleri net tutmak için mümkün olduğunca özel ifadeler kullanın; geniş desenler çoğu zaman gereksiz çoklu sonuçlara yol açar. Ayrıca büyük log dosyalarında performans kaygısı olabilir; bu durumda grep yerine zgrep (gzipped loglar için) veya rg gibi modern araçlar daha hızlı sonuç verebilir.

Bu alandaki kişisel deneyimleriniz veya karşılaştığınız sık karşılaşılan desenler nelerdir? Özellikle hangi log kaynaklarını hangi desenlerle taradığınızı ve elde ettiğiniz değerli ipuçlarını paylaşır mısınız?

Vous devez être connecté pour répondre.

Utilisateurs qui consultent cette discussion (Total: 1, Membres: 1, Invités: 0)
Total: 1 (membres: 1, invités: 0)
0 citations sélectionnées