Graves
- 9 Eki 2024
- 10,472 Mesaj
- TIM Görevleri
- 2
Aktiflik
Seviye
Deneyim
SELinux politikaları ile erişim kontrolü
Merhabalar Ben @Phobos Lojistik grup adına paylaşılan SELinux politikaları ile erişim kontrolü makalesinde sizi görmekten mutluyum.
SELinux, 2000’li yılların başında NSA (Amerikan Ulusal Güvenlik Ajansı) tarafından geliştirilmiş, Linux sistemlerde Mandatory Access Control (Zorunlu Erişim Kontrolü - MAC) sağlayan bir güvenlik altyapısıdır. Geleneksel Discretionary Access Control (DAC) sistemlerinin ötesinde, daha ayrıntılı ve katı kurallar tanımlar.
Bu bağlam dört parçadan oluşur
Erişim kuralları, tipler (domain-type modeli) üzerinden belirlenir.
Yaygın çözüm yolları
SELinux, Linux sistemlerinde güçlü bir erişim kontrolü sağlar. Özellikle sunucu ortamlarında yanlış yapılandırmalara veya zararlı yazılımlara karşı ikinci bir güvenlik katmanı oluşturur. Ancak doğru yapılandırılmazsa erişim sorunlarına yol açabilir. Bu nedenle, SELinux politikalarının ve güvenlik bağlamlarının doğru anlaşılması ve yönetilmesi hayati önem taşır.
Merhabalar Ben @Phobos Lojistik grup adına paylaşılan SELinux politikaları ile erişim kontrolü makalesinde sizi görmekten mutluyum.
SELinux, 2000’li yılların başında NSA (Amerikan Ulusal Güvenlik Ajansı) tarafından geliştirilmiş, Linux sistemlerde Mandatory Access Control (Zorunlu Erişim Kontrolü - MAC) sağlayan bir güvenlik altyapısıdır. Geleneksel Discretionary Access Control (DAC) sistemlerinin ötesinde, daha ayrıntılı ve katı kurallar tanımlar.
SELinux’un Erişim Kontrol Modeli
SELinux, erişim kontrolünü üç temel bileşen üzerinden yürütür- Kullanıcı (SELinux User)
- Rol (Role)
- Tip (Type ya da Domain)
Kod:
system_u:system_r:httpd_t:s0
Bu bağlam dört parçadan oluşur
- Kullanıcı (system_u): SELinux kullanıcı adı
- Rol (system_r): Hangi rolü üstlendiği
- Tür (httpd_t): Tip ya da domain
- Seviye (s0): MLS/MCS seviyeleri (çoğu sistemde sadece s0)
Erişim kuralları, tipler (domain-type modeli) üzerinden belirlenir.
SELinux Politikaları
1. Hedefli Politika (Targeted Policy)
En yaygın kullanılan SELinux politikasıdır. Yalnızca belirli servis ve süreçler için güvenlik kontrolleri uygular (örneğin httpd, sshd, named gibi).2. Katı Politika (Strict Policy)
Tüm süreçler ve kullanıcılar üzerinde sıkı kontrol uygular. Genellikle daha fazla yönetim bilgisi gerektirir.3. MLS/MCS Politikaları
Gizlilik seviyeleri içeren sistemlerde kullanılır. Multilevel Security (MLS) ve Multi-Category Security (MCS) yapılarını kapsar. Örneğin, askeri sistemlerde "gizli", "çok gizli" gibi etiketler kullanılabilir.Erişim Kontrolü Nasıl Uygulanır?
SELinux, her erişim talebinde aşağıdaki adımları izler- Kullanıcı veya süreç, bir dosyaya ya da başka bir kaynağa erişim talebinde bulunur.
- Kernel, talepte bulunan sürecin ve kaynağın güvenlik bağlamlarını karşılaştırır.
- Politika dosyasında tanımlı kurallar, bu talebe izin verilip verilmeyeceğini belirler.
- Eğer izin yoksa, işlem engellenir ve audit.log dosyasına kayıt düşülür.
SELinux Komutları
- Durumu kontrol etme:
Kod:sestatus - Durum değiştirme (geçici):
Kod:setenforce 0 # Permissive setenforce 1 # Enforcing - Kalıcı ayar:
dosyasında SELINUX=enforcing satırıyla belirlenir.Kod:/etc/selinux/config - Dosya bağlamı görüntüleme:
Kod:ls -Z - Bağlam değiştirme:
Kod:chcon -t httpd_sys_content_t /var/www/html/index.html
Politika İhlallerinin Teşhisi ve Çözümü
SELinux erişimi engellediğinde genellikle audit.log dosyasına kayıt düşer
Kod:
ausearch -m avc -ts recent
Yaygın çözüm yolları
- Uygun booleans etkinleştirme
Kod:setsebool -P httpd_can_network_connect on - restorecon ile doğru bağlamların geri yüklenmesi
Kod:restorecon -Rv /var/www/html - Gerekirse özel politika modülü oluşturma:
Kod:grep httpd /var/log/audit/audit.log | audit2allow -M mypol semodule -i mypol.pp
Avantajları
- Geleneksel Linux DAC sistemine ek olarak detaylı denetim
- Hatalı yapılandırmaları veya sıfır-gün açıklarını etkisiz hale getirme potansiyeli
- Güvenlik duvarına benzer şekilde davranarak süreçler arası izolasyon sağlar
SELinux, Linux sistemlerinde güçlü bir erişim kontrolü sağlar. Özellikle sunucu ortamlarında yanlış yapılandırmalara veya zararlı yazılımlara karşı ikinci bir güvenlik katmanı oluşturur. Ancak doğru yapılandırılmazsa erişim sorunlarına yol açabilir. Bu nedenle, SELinux politikalarının ve güvenlik bağlamlarının doğru anlaşılması ve yönetilmesi hayati önem taşır.
LOJİSTİK TİM SUNDU



