Linux sunucularında güvenlik ve uyumluluk gereksinimleri giderek artmaktadır.
Linux sunucularında güvenlik ve uyumluluk gereksinimleri giderek artmaktadır. Auditd, sistem çağrılarını, dosya erişimlerini ve kullanıcı etkinliklerini detaylı bir şekilde izleyerek olası güvenlik ihlallerini tespit etmenize olanak tanır. Bu araç, kernel seviyesinde auditing sağlayarak forensic analizler için vazgeçilmez bir bileşendir. Özellikle kurumsal ortamlarda PCI-DSS, HIPAA gibi standartlara uyum için auditd kurulumu standart bir uygulamadır. Bu makalede, Linux sunucularınıza auditd’yi adım adım kurma, yapılandırma ve etkin kullanma süreçlerini ele alacağız. Pratik adımlar ve örneklerle, sistem yöneticilerinin hızlıca uygulayabileceği bir rehber sunuyoruz.
Auditd, Linux Audit Daemon’un kısaltmasıdır ve Advanced Linux Security modülüyle entegre çalışır. Sistemdeki her türlü dosya erişimi, komut çalıştırma ve ağ etkinliğini loglar. Bu sayede, bir güvenlik olayı yaşandığında “kim, ne zaman, ne yapmış” sorularına somut cevaplar verir. Kurumsal sunucularda, yetkisiz erişimleri erken tespit etmek ve yasal uyumluluk raporları üretmek için idealdir. Auditd, SELinux ile uyumlu olup, düşük overhead ile çalışır; tipik bir sunucuda CPU kullanımını %1’in altında tutar.
Auditd’nin avantajları arasında esnek kural tanımlama, merkezi log yönetimi ve ausearch gibi güçlü sorgu araçları yer alır. Örneğin, bir dosya silinme girişimini izlemek için özel kurallar yazabilirsiniz. Bu, brute-force saldırılarını veya insider tehditlerini önlemede kritik rol oynar. Kurulum öncesi, sunucunuzun dağıtımına göre paket yöneticisini hazırlayın; auditd, çoğu modern Linux dağıtımında varsayılan depolarında bulunur.
Debian veya Ubuntu sunucularda auditd kurmak oldukça basittir. Öncelikle paket listesini güncelleyin: sudo apt update. Ardından auditd ve yardımcı araçları yükleyin: sudo apt install auditd audispd-plugins. Bu komut, auditd daemon’unu, plug-in’leri ve ausearch gibi araçları getirir. Kurulum tamamlandıktan sonra servisi etkinleştirin: sudo systemctl enable auditd ve başlatın: sudo systemctl start auditd. Durumunu kontrol etmek için sudo systemctl status auditd kullanın; active (running) durumunda olmalıdır. Varsayılan kurallar /etc/audit/audit.rules dosyasında bulunur ve yeniden yüklemek için sudo augenrules --load komutunu çalıştırın. Bu adımlar, 5 dakikada tamamlanır ve sunucunuzu hemen auditing’e hazır hale getirir.
CentOS, RHEL veya Fedora gibi RPM tabanlı sistemlerde, önce depoları etkinleştirin: sudo dnf update veya sudo yum update. Auditd’yi yükleyin: sudo dnf install audit audit-libs. Servis yönetimi için sudo systemctl enable auditd ve sudo systemctl start auditd komutlarını kullanın. Firewall ayarlarında audit trafiğini açmayı unutmayın; SELinux etkinse, permissive moda geçici olarak ayarlayın. Kurulum sonrası, sudo auditctl -l ile yüklü kuralları listeleyin. Bu süreç, dağıtım farkı gözetmeksizin standarttır ve yüksek erişilebilirlik sağlar.
Kurulumun her iki senaryoda da共通 noktası, servis kalıcılığını sağlamak ve log dizinini (/var/log/audit/) kontrol etmektir. Disk alanı yeterli olmalı; yoğun sunucularda günlük 100MB+ log üretilebilir. Test için sudo auditctl -w /etc/passwd -p wa -k identity gibi bir kural ekleyin ve dosyaya erişerek logları doğrulayın.
/etc/audit/rules.d/ dizinine .rules uzantılı dosyalar oluşturun. Örneğin, kritik dosyaları izlemek için: -w /etc/passwd -p wa -k passwd_changes. Bu, yazma ve okuma değişikliklerini “passwd_changes” anahtarıyla loglar. Kuralları yükleyin: sudo augenrules --load. Performansı optimize etmek için imkvp kurallarını sınırlayın; -a always,exit ile syscall bazlı izleme yapın. Örnek: -a always,exit -F arch=b64 -S execve -k process_exec tüm execve çağrılarını yakalar. Kuralları test edin ve /etc/audit/audit.rules’e derleyin.
Logları incelemek için ausearch kullanın: ausearch -k passwd_changes belirli anahtar kelimeleri filtreler. aureport ile özet raporlar alın: aureport -a dosya erişimlerini listeler. Log rotasyonu için /etc/audit/auditd.conf’te max_log_file ve num_logs ayarlarını yapılandırın; varsayılan 6 dosya, 128MB sınırı uygundur. Uzaktaki loglama için rsyslog veya auditd dispatcher’ını entegre edin. Günlük bakımda, eski logları arşivleyin ve ausearch –start recent ile son etkinlikleri sorgulayın. Bu araçlar, forensic incelemelerde saatler kazandırır.
Auditd’yi kurumsal düzeyde kullanmak, proaktif güvenlik sağlar. Düzenli kural güncellemeleri ve log incelemeleriyle, tehditleri minimize edin. Uygulama sonrası, sistem performansını izleyin ve gerekirse kuralları ince ayarlayın. Bu rehberle, Linux sunucularınızı güvenli bir auditing altyapısına kavuşturabilirsiniz.