Her geçen gün yeni açıklar ve güvenlik açıkları ortaya çıkıyor, siber suç raporları ise artmaya devam ediyor. Sistem güvenliğini artırmanın birden fazla yolu var. Bir CentOS veya Fedora sunucu kullanıyorsanız ya da kullanmayı planlıyorsanız, SELinux iyi bir başlangıç noktasıdır. SELinux, sistemdeki kullanıcıları, dosyalara ve uygulamalara erişim düzeylerini denetlemenizi sağlayan hızlı ve güvenilir bir güvenlik protokolü ve uygulamasıdır. Bu makalede SELinux'yi kısaca tanıtacak, ardından CentOS 7 üzerinde nasıl etkinleştireceğinizi göstereceğim.
SELinux nedir?
Security-Enhanced Linux (SELinux), Linux sistem yöneticilerine sisteme erişen kullanıcılar üzerinde daha fazla denetim sağlamak amacıyla tasarlanmış bir güvenlik mimarisidir. Başlangıçta ABD Ulusal Güvenlik Ajansı (NSA) tarafından, Linux Security Modules (LSM) kullanılarak Linux çekirdeğine yönelik bir dizi yama ve iyileştirme olarak geliştirilmiştir. SELinux, 2000 yılında açık kaynaklı bir araç olarak yayımlanmış ve 2003'te tüm Linux Kernel ile bütünleştirilmiştir.
SELinux Nasıl Çalışır?
SELinux, sisteminizdeki tüm dosyalara, süreçlere ve uygulamalara erişimi denetler. Güvenlik politikaları olarak tanımlanmış kurallar bütünü sayesinde SELinux, güvenli ve tutarlı bir erişim politikası oluşturabilir. Bu sayede sistemi korur ve yetkisiz erişim girişimlerini engeller. Bu yaklaşımda "en az ayrıcalık" ilkesi geçerlidir: bir programın kullanıcısına, dosyalara, dizinlere, soketlere ve diğer servislere erişim için açıkça izin verilmesi gerekir.
Bir uygulama ya da süreç ("konu" olarak adlandırılır) bir dosyaya nesne olarak erişmek istediğinde, SELinux bu erişimi değerlendirmek için Access Vector Cache (AVC) mekanizmasını kullanır. Bu önbellek, konulara ve nesnelere ait tüm izin kayıtlarını, yani süreçleri ve neye erişmeye çalıştıklarını saklar. Önbellekte herhangi bir izin kaydı bulunmadığında SELinux karar veremez; bu durumda güvenlik sunucusuyla iletişime geçerek erişim isteğini değerlendirmek için gereken bilgileri alır. Güvenlik sunucusu, SELinux politikasını uygulayarak isteği onaylar ya da reddeder. Hangi isteklerin kabul ya da reddedildiğini görmek için her zaman "/var/log.messages" konumundaki mesaj günlüklerine bakabilirsiniz.
SELinux Modları Nelerdir?
SELinux, yöneticilerin aşağıdaki üç moddan birini seçmesine olanak tanır. Her modun farklı güvenlik kısıtlamaları ve kullanım alanları vardır:
Zorlama modu: Bu varsayılan moddur. Politika standartlarını karşılamayan işlemleri engeller ve günlüğe kaydeder.
İzin verici mod: Bu mod, günlükleri ve olayları ayrıntılı biçimde incelemenizi sağlar. Özellikle SELinux özelliğini test etmek için kullanışlıdır. Bu modda, zorlamalı (enforcing) ve izin veren (permissive) modlar arasında geçiş yapmak için sistem yeniden başlatması gerekmez.
Devre dışı bırakılan mod: Bu mod, tüm işlemleri gerçekleştirmenize izin verir ve hiçbirini günlüğe kaydetmez. Bu moda geçiş yapmak için sistemin yeniden başlatılması gerekir.
CentOS 7'de SElinux Nasıl Etkinleştirilir
-
SELinux Durumunu Kontrol Edin:
Adım 1: SELinux Açık/Kapalı Durumunu Kontrol Edin
SELinux'yi etkinleştirmeye çalışmadan önce zaten devre dışı olup olmadığını kontrol edin.
Terminalinizde ayarları kontrol etmek için şu komutu girin:
sestatus
Çıktı, SELinux'nin sisteminizde şu an devre dışı olduğunu göstermektedir.
Adım 2: SELinux'yi Etkinleştirmek İçin Gereksinimlerinizi Kontrol Edin
- sudo ayrıcalıklarına sahip bir kullanıcı hesabı
- Bir terminale/konsola erişim
- CentOS 7 tabanlı RHEL benzeri bir sistem
- Bir metin editörü: nano
Linux Hosting, Kolaylaştırıldı
Web sitelerinizi ve web uygulamalarınızı daha iyi bir ortamda barındırmak mı istiyorsunuz? Yeni bir şeyler mi geliştiriyorsunuz? Ya da Windows'den memnun değil misiniz? İşte bunun için Linux VPS sunuyoruz.
Linux VPS'nizi Edinin-
SELinux başlatılıyor :
3. Adım: Config dosyasını nano editörde açın
Servisin SELinux durumunu ayarlayın. Bunun için şuraya gidin: /etc/selinux/config bir dosya oluşturun ve Nano gibi bir metin düzenleyici kullanın.
sudo nano /etc/selinux/config
Adım 4: SELinux Modunu Değiştirin
Artık SELinux modunu şu seçeneklerden birine değiştirebilirsiniz: izin verici or enforcing.
İşaretli satırı ihtiyacınıza göre buradan değiştirebilirsiniz.

Adım 5: Değişiklikleri Kaydet
Ardından basın CTRL + X uygulamak ve kaydetmek için. Ardından, y, sonra Enter tüm süreci onaylamak için
Adım 6: Sunucunuzu Yeniden Başlatın
Şimdi sistemi yeniden başlatmanız gerekiyor. Bunun için aşağıdaki komutu girin ve <Enter> tuşuna basın:
sudo reboot
Adım 7: SELinux Durumunu Yeniden Kontrol Et
SELinux'nin durumunu kontrol etmek istiyorsanız, "" girinsestatus" yine komut satırında.
Sonuç, sistemde zorlama modunu zaten etkinleştirdiğinizi doğruluyor.
CentOS 7'de SELinux Nasıl Devre Dışı Bırakılır
SELinux modunu geçici olarak targeted'dan permissive'e geçirmek için aşağıdaki komutu çalıştırın:
sudo setenforce
Ancak bu değişikliğin yalnızca mevcut çalışma oturumu için geçerli olduğunu unutmayın.
CentOS 7 sisteminizde SELinux'yi kalıcı olarak devre dışı bırakmak için şu adımları izleyin:
Adım 1: SELinux modunu "disabled" olarak ayarlayın
Open the /etc/selinux/config file, then you should set the SELINUX mode to “disabled”
Adım 2: Değişiklikleri Kaydedin ve Yeniden Başlatın
Şimdi dosyayı kaydedin ve ardından aşağıdaki komutla CentOS sisteminizi yeniden başlatın:
sudo shutdown -r now
Adım 3: SELinux Durumunu Tekrar Kontrol Edin
Sistem başladığında, değişikliği şu komutu çalıştırarak doğrulayın: sestatus komut:
sestatus
SELinux Modu Nasıl Değiştirilir
SELinux'yi tamamen devre dışı bırakmak yerine, modunu izin verici olarak değiştirirsiniz. Gerçekleştirilen işlemler log dosyasında iz bırakır.
SELinux modunu değiştirmek için aşağıdaki adımları izleyin: enforcing to izin verici yazı:
sudo setenforce 0
Şimdi enforcing modunu açmanız gerekiyor. Bunun için aşağıdaki komutu çalıştırın:
sudo setenforce 1
Bu değişiklikler yalnızca mevcut oturum için geçerlidir. Sistem yeniden başlatıldığında varsayılan değerlere dönecektir. Değişiklikleri kalıcı hale getirmek için yapılandırma dosyasını bir metin düzenleyiciyle (örneğin nanoÖrneğin).
Linux Hosting, Kolaylaştırıldı
Web sitelerinizi ve web uygulamalarınızı daha iyi bir ortamda barındırmak mı istiyorsunuz? Yeni bir şeyler mi geliştiriyorsunuz? Ya da Windows'den memnun değil misiniz? İşte bunun için Linux VPS sunuyoruz.
Linux VPS'nizi EdininCentOS 7 Sunucunuzu SELinux'nin Ötesinde Güvence Altına Almak
SELinux'yi CentOS 7'ye yüklediniz; artık sisteminizin öncekinden daha güvenli olduğunu bilerek rahat edebilirsiniz. Elbette hiçbir sistemin tamamen güvenli olduğunu garanti etmek mümkün değildir. Yapılacak daha çok şey var; örneğin şu Linux VPS güvenliğini sağlama kılavuzundaki maddelere göz atabilirsiniz. Üstelik SELinux ile yalnızca en temel güvenlik önlemlerini uyguladık. Bütün bu önlemler, sunucunuzun barındırma sağlayıcısı yeterince güvenli değilse hiçbir işe yaramaz. Bu nedenle Cloudzy olarak en yüksek güvenlik standartlarını koruyoruz: donanım ve AI tabanlı güvenlik duvarları, akıllı DDoS koruması ve özel güvenlik önlemleri sunuyoruz. CentOS VPS çözümleri mizi kullanın ve gerçekten güvenli bir sunucu çalıştırın.
