- Katılım
- 17 Eki 2024
- Mesajlar
- 2
- Tepkime puanı
- 0
- Puanları
- 1
Linux Güvenliğin Zaferi: LSM, AppArmor ve SELinux'un Derinlikleri
1. LSM Nedir?
Linux Security Modules (LSM), çekirdeğin güvenlik politikalarını yöneten esnek, modüler bir sistemdir. LSM sayesinde güvenlik eklentileri doğrudan çekirdek seviyesinde işleyerek izinsiz erişimleri engeller.2. LSM'in Çalışma Prensibi
* Bir sistem çağrısı yapılırken, LSM ilk olarak kontrol modüllerine bir veto seçeneği verir.
* Modül, çağrıyı izinlemi veda edici mi karar verir.
* Kararlar `security_hook()` aracılığıyla işlenir.
Kod:
// Örnek LSM callback ilüstrasyonu
int my_lsm_secfile_open(struct file *file){
if (!has_access(file))
return -EACCES; // Veto
return 0; // İzin
}
3. Öne Çıkan LSM Modülleri
* **SELinux** – Zorlayıcı politika diline sahip; `enforced` ve `permissive` modları.
* **AppArmor** – Profil tabanlı; dosya yolları ile sınırlama.
* **Tomoyo**, **Smack**, **iAppArmor** gibi alternatifler.
#### SELinux
| Özellik | Açıklama |
|---|---|
| Politikalar | XML/SEL ingilizcesi, `setroubleshoot` ile hata ayıklama |
| Modlar | Enforced / Permissive |
| Yönetim | `semanage`, `semanage fcontext`, `audit2allow` |
| Avantaj | Büyük güvenlik, tüm sistem kapsama |
| Dezavantaj | Yüksek yapılandırma karmaşıklığı |
#### AppArmor
| Özellik | Açıklama |
|---|---|
| Profil Türü | `path`, `capability` |
| Yönetim | `aa-status`, `aa-complain` |
| Avantaj | Kullanıcı dostu, dinamik profil oluşturma |
| Dezavantaj | Dosya yolları değiştiğinde yeniden yapılandırma gerekir |
4. LSM'in Geleceği ve Gelişmeler
* **KVS (Kerbal Virtual Security)**: Şu andaki LSM altyapısına ek olarak çekirdek modüllerini tamamen izole eden bir tasarım önerisi.
* **Docker ve LSM**: Container ortamlarında LSM modülleri, izole işlemlerde "containership" seviyesini artırıyor.
5. Kapanış
Kısaca; LSM, modern Linux dağıtımlarında iki büyük güvenlik modülünün (SELinux ve AppArmor) temelini atar. Her iki modül de farklı kullanım senaryolarında üstünlük sağlar. Yetersiz yapılandırılan bir sistem, LSM'in sunduğu güvenlik katmanlarını boşluk bırakır. Bu nedenle, sistem yöneticileri için LSM yapısını anlama, profil yönetimini rutine dönüştürme oldukça kritik bir adımdır.
[NOTE]Yönetici ipucu: `/etc/selinux/targeted/contexts/files/file_contexts` dosyası ile dosya etiketlerini gözden geçirin. AppArmor users: `aa-status` ile aktif profilleri kontrol edin.[/NOTE]







