Konuyu Açan #1
lsof ile kullanıcıya göre açık dosyalar

[lsof] komut satırını kullanarak hangi kullanıcının hangi dosyaları veya ağ bağlantılarını açtığını hızlıca görmek, sistem yönetimi ve güvenlik için sık karşılaşılan bir ihtiyaçtır. Bu yazıda, temel ve pratik kullanımlarıyla kullanıcıya göre açık dosyaları nasıl filtreleyeceğinizi adım adım ele alacağım, yüzeysel filtrelerden kaçınarak, gerçek dünyadaki senaryolara odaklanacağım.

Neden kullanıcı bazlı filtreleme gerekir?
  • Çok kullanıcılı bir sunucuda hangi kullanıcıların hangi kaynakları kullandığını belirlemek.
  • Şu anda hangi dosyaların kilitli veya erişim beklediğini tespit etmek.
  • Güvenlik için kötücül süreçlerin hangi kullanıcı hesabıyla çalıştığını doğrulamak.


[list]
  • Temel kullanım: Bir kullanıcının açık dosyalarını listeler
    KOD
    1lsof -u kullanici_adi

    Bu komut, belirtilen kullanıcının süreçleri tarafından açılan tüm dosyaları, soketler ve ağ bağlantıları dahil olmak üzere gösterir. Çıktı, PID, kullanıcı, dosya tipleri, dosya yolları ve açık olan işlemlerin durumunu içerir.

  • Belirli bir klasördeki açık dosyalar
    KOD
    1lsof -u kullanici_adi +D /var/log

    Kullanıcının belirli bir dizin altında hangi dosyaları açtığını daraltır. Büyük dizinlerde performans kaygısı olabilir; o yüzden gerekirse yeniden yönlendirme ile daha dar bir yol kullanmak daha verimlidir.

  • Ağ bağlantıları ve dosyalarla ilgili ayrıntı
    KOD
    1lsof -u kullanici_adi -i

    Bu varyant, kullanıcının sahip olduğu ağ bağlantıları ile ilgili bilgiler verir. Hangi portlar üzerinde dinlediği veya bağlandığı gibi ayrıntılar hızlıca görünür.

  • Belirli dosya tipi veya durumuna göre filtreleme
    KOD
    1lsof -u kullanici_adi -a -d 0-1024

    • -a birleşik filtre anlamına gelir, -d dosya descriptor aralığını sınırlar. Örneğin 0-1024 arası descriptor’lar hızlıca taranır.


  • Çıktıyı daha yönetilebilir kılmak
    KOD
    1lsof -u kullanici_adi | grep -E 'REG|DEL|DIR'

    REG, DEL, DIR gibi dosya türleriyle ilgili özet bilgi almak için çıktı üzerinde basit filtreler uygulanabilir.

    Dikkat edilmesi gereken noktalar
    • lsof bazı sistemlerde kök yetkisi gerektirebilir; özellikle tüm kullanıcılar için kapsamlı bir liste almak istiyorsanız sudo kullanın.
    • Büyük sistemlerde tüm kullanıcılar için tarama her zaman hızlı olmayabilir; ihtiyaca göre -u, -i veya dizin tabanlı filtrelerle hedef odaklı yürütmek performansı artırır.
    • Güvenlik açısından, çıktıyı paylaşılan ortamlarda dikkatli şekilde ele alın; kullanıcı başına hangi dosyaların açık olduğunu bilmek, hassas verileri doğrudan gösterebilir.


    Bu konuya dair kendi üretim senaryolarınız veya karşılaştığınız özel durumlar varsa paylaşabilir misiniz? Hangi filtrelemeler sizin için en yararlı oluyor, ve lsof dışında hangi araçlarla destekliyorsunuz?
  • Yanıt vermek için giriş yapmış olmalısınız.

    0 alıntı seçildi