{"id":16433,"date":"2026-08-23T23:29:52","date_gmt":"2026-08-23T20:29:52","guid":{"rendered":"https:\/\/www.ihs.com.tr\/blog\/?p=16433"},"modified":"2026-08-23T23:29:52","modified_gmt":"2026-08-23T20:29:52","slug":"vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz","status":"publish","type":"post","link":"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/","title":{"rendered":"VPS&#8217;te SELinux Nedir? Kapatmal\u0131 m\u0131y\u0131z, Yoksa Nas\u0131l Yap\u0131land\u0131rmal\u0131y\u0131z?"},"content":{"rendered":"<p>Linux tabanl\u0131 sunucularda g\u00fcvenlik, sistem y\u00f6neticilerinin en \u00f6nemli \u00f6nceliklerinden biridir. \u00d6zellikle bir Sanal \u00d6zel Sunucu (VPS) y\u00f6netiyorsan\u0131z, sisteminizi yetkisiz eri\u015fimlere, zararl\u0131 yaz\u0131l\u0131mlara ve siber sald\u0131r\u0131lara kar\u015f\u0131 korumak hayati \u00f6nem ta\u015f\u0131r. Bu noktada, standart izin mekanizmalar\u0131n\u0131n \u00f6tesinde daha gran\u00fcler ve katmanl\u0131 bir g\u00fcvenlik sa\u011flayan SELinux (Security-Enhanced Linux) devreye girer. Ancak SELinux, yap\u0131land\u0131rma karma\u015f\u0131kl\u0131\u011f\u0131 nedeniyle s\u0131k\u00e7a devre d\u0131\u015f\u0131 b\u0131rak\u0131lan bir ara\u00e7t\u0131r. Peki, bu do\u011fru bir yakla\u015f\u0131m m\u0131d\u0131r? Bu makalede, SELinux&#8217;\u00fcn ne oldu\u011funu, geleneksel g\u00fcvenlik modellerinden fark\u0131n\u0131, onu kapatman\u0131n risklerini, aktif tutman\u0131n avantajlar\u0131n\u0131 ve temel yap\u0131land\u0131rma ad\u0131mlar\u0131n\u0131 A&#8217;dan Z&#8217;ye ele alaca\u011f\u0131z. Amac\u0131m\u0131z, VPS&#8217;inizde SELinux&#8217;\u00fc bir engel olarak de\u011fil, g\u00fc\u00e7l\u00fc bir g\u00fcvenlik m\u00fcttefiki olarak nas\u0131l kullanabilece\u011finizi g\u00f6stermektir.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_77 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0130\u00e7erik Tablosu<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-6a8b747f127d6\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\" id=\"ez-toc-cssicon-toggle-item-6a8b747f127d6\" aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinuxe-Giris\" >SELinux&#8217;e Giri\u015f<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Nedir\" >SELinux Nedir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Geleneksel-Guvenlik-Modellerinden-Farki-DAC-ve-MAC-Karsilastirmasi\" >Geleneksel G\u00fcvenlik Modellerinden Fark\u0131: DAC ve MAC Kar\u015f\u0131la\u015ft\u0131rmas\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Temel-Kavramlar-ve-Terminoloji\" >Temel Kavramlar ve Terminoloji<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#VPS-Guvenligindeki-Yeri-ve-Onemi\" >VPS G\u00fcvenli\u011findeki Yeri ve \u00d6nemi<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Karsilastirma-SELinuxu-Acik-Tutmak-mi-Kapatmak-mi\" >Kar\u015f\u0131la\u015ft\u0131rma: SELinux&#8217;u A\u00e7\u0131k Tutmak m\u0131, Kapatmak m\u0131?<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinuxu-Kapatmanin-Yaygin-Nedenleri\" >SELinux&#8217;u Kapatman\u0131n Yayg\u0131n Nedenleri<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinuxu-Kapatmanin-Potansiyel-Riskleri\" >SELinux&#8217;u Kapatman\u0131n Potansiyel Riskleri<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinuxu-Aktif-Tutmanin-Avantajlari\" >SELinux&#8217;u Aktif Tutman\u0131n Avantajlar\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Son-Karar-Hangi-Senaryo-Sizin-Icin-Uygun\" >Son Karar: Hangi Senaryo Sizin \u0130\u00e7in Uygun?<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Durumunu-Yonetme-ve-Modlari-Degistirme\" >SELinux Durumunu Y\u00f6netme ve Modlar\u0131 De\u011fi\u015ftirme<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Mevcut-SELinux-Durumunu-Kontrol-Etme-sestatus\" >Mevcut SELinux Durumunu Kontrol Etme: `sestatus`<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Modlarini-Anlama\" >SELinux Modlar\u0131n\u0131 Anlama<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Calisma-Zamaninda-Mod-Degistirme-setenforce-Komutu\" >\u00c7al\u0131\u015fma Zaman\u0131nda Mod De\u011fi\u015ftirme: `setenforce` Komutu<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Sistemin-Yeniden-Baslatilmasinda-Kalici-Olacak-Sekilde-Mod-Degistirme\" >Sistemin Yeniden Ba\u015flat\u0131lmas\u0131nda Kal\u0131c\u0131 Olacak \u015eekilde Mod De\u011fi\u015ftirme<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Temel-SELinux-Yapilandirma-Adimlari\" >Temel SELinux Yap\u0131land\u0131rma Ad\u0131mlar\u0131<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Baglamlari-Contexts-ile-Calisma\" >SELinux Ba\u011flamlar\u0131 (Contexts) ile \u00c7al\u0131\u015fma<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Booleanlari-ile-Politikalari-Ozellestirme\" >SELinux Boolean&#8217;lar\u0131 ile Politikalar\u0131 \u00d6zelle\u015ftirme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Ag-Portu-Baglamlarini-Yonetme-semanage-port\" >A\u011f Portu Ba\u011flamlar\u0131n\u0131 Y\u00f6netme: `semanage port`<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Sorunlarini-Giderme-Troubleshooting\" >SELinux Sorunlar\u0131n\u0131 Giderme (Troubleshooting)<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#SELinux-Hata-Kayitlarini-Loglarini-Okuma-ve-Yorumlama\" >SELinux Hata Kay\u0131tlar\u0131n\u0131 (Loglar\u0131n\u0131) Okuma ve Yorumlama<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Sorun-Giderme-Yardimci-Araclari\" >Sorun Giderme Yard\u0131mc\u0131 Ara\u00e7lar\u0131<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Sik-Karsilasilan-SELinux-Hatalari-ve-Cozumleri\" >S\u0131k Kar\u015f\u0131la\u015f\u0131lan SELinux Hatalar\u0131 ve \u00c7\u00f6z\u00fcmleri<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/www.ihs.com.tr\/blog\/vps-te-selinux-nedir-kapatmali-miyiz-yoksa-nasil-yapilandirmaliyiz\/#Guvenli-ve-Yonetilebilir-Bir-VPS-Altyapisi-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\" >G\u00fcvenli ve Y\u00f6netilebilir Bir VPS Altyap\u0131s\u0131 \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"SELinuxe-Giris\"><\/span>SELinux&#8217;e Giri\u015f<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Modern sunucu altyap\u0131lar\u0131nda g\u00fcvenlik, yaln\u0131zca d\u0131\u015f tehditlere kar\u015f\u0131 bir savunma hatt\u0131 olu\u015fturmakla kalmaz, ayn\u0131 zamanda sistem i\u00e7indeki s\u00fcre\u00e7lerin ve uygulamalar\u0131n yetkilerini kontrol alt\u0131nda tutmay\u0131 da gerektirir. SELinux, bu derinlemesine g\u00fcvenlik felsefesini benimseyen, Linux \u00e7ekirde\u011fine entegre edilmi\u015f g\u00fc\u00e7l\u00fc bir g\u00fcvenlik mod\u00fcl\u00fcd\u00fcr. Onu anlamak, <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/vps-server.html\" target=\"_blank\">VPS<\/a> g\u00fcvenli\u011finde proaktif bir yakla\u015f\u0131m sergilemenin ilk ad\u0131m\u0131d\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinux-Nedir\"><\/span>SELinux Nedir?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux (Security-Enhanced Linux), Amerika Birle\u015fik Devletleri Ulusal G\u00fcvenlik Ajans\u0131 (NSA) taraf\u0131ndan geli\u015ftirilen ve Linux \u00e7ekirde\u011fine entegre edilen bir Zorunlu Eri\u015fim Kontrol\u00fc (Mandatory Access Control &#8211; MAC) sistemidir. Temel amac\u0131, bir s\u00fcrecin (\u00f6rne\u011fin bir web sunucusu) eri\u015febilece\u011fi dosyalar\u0131, portlar\u0131 ve di\u011fer sistem kaynaklar\u0131n\u0131 kat\u0131 bir \u015fekilde tan\u0131mlanm\u0131\u015f politikalar arac\u0131l\u0131\u011f\u0131yla s\u0131n\u0131rlamakt\u0131r. Bir sald\u0131rgan sistemdeki bir uygulamada zafiyet bulsa bile, SELinux sayesinde bu zafiyeti kullanarak sistemin di\u011fer b\u00f6l\u00fcmlerine s\u0131zmas\u0131 ve hasar vermesi engellenir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Geleneksel-Guvenlik-Modellerinden-Farki-DAC-ve-MAC-Karsilastirmasi\"><\/span>Geleneksel G\u00fcvenlik Modellerinden Fark\u0131: DAC ve MAC Kar\u015f\u0131la\u015ft\u0131rmas\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Linux sistemleri varsay\u0131lan olarak \u0130ste\u011fe Ba\u011fl\u0131 Eri\u015fim Kontrol\u00fc (Discretionary Access Control &#8211; DAC) modelini kullan\u0131r. Bu modelde, bir dosyan\u0131n veya kayna\u011f\u0131n sahibi, ona kimin (kullan\u0131c\u0131, grup, di\u011ferleri) hangi yetkilerle (okuma, yazma, \u00e7al\u0131\u015ft\u0131rma) eri\u015febilece\u011fini belirler. SELinux ise bu modelin \u00fczerine Zorunlu Eri\u015fim Kontrol\u00fc (MAC) katman\u0131n\u0131 ekler. MAC modelinde eri\u015fim kararlar\u0131, sistem y\u00f6neticisi taraf\u0131ndan merkezi olarak tan\u0131mlanan ve \u00e7ekirdek taraf\u0131ndan zorla uygulanan g\u00fcvenlik politikalar\u0131na dayan\u0131r. Kullan\u0131c\u0131lar veya s\u00fcre\u00e7ler, bu politikalar\u0131 esnetemez veya de\u011fi\u015ftiremez.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<thead>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>DAC (Geleneksel Linux \u0130zinleri)<\/th>\n<th>MAC (SELinux)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Kontrol Mekanizmas\u0131<\/strong><\/td>\n<td>Dosya sahibi izinleri belirler (chmod, chown).<\/td>\n<td>Merkezi bir politika t\u00fcm eri\u015fimi y\u00f6netir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Esneklik<\/strong><\/td>\n<td>Y\u00fcksek. Kullan\u0131c\u0131lar kendi dosyalar\u0131 i\u00e7in izinleri de\u011fi\u015ftirebilir.<\/td>\n<td>D\u00fc\u015f\u00fck. Sadece y\u00f6netici politikay\u0131 de\u011fi\u015ftirebilir.<\/td>\n<\/tr>\n<tr>\n<td><strong>G\u00fcvenlik Odakl\u0131l\u0131k<\/strong><\/td>\n<td>Kullan\u0131c\u0131 odakl\u0131d\u0131r. Bir kullan\u0131c\u0131n\u0131n hesab\u0131 ele ge\u00e7irilirse, o kullan\u0131c\u0131n\u0131n t\u00fcm dosyalar\u0131 risk alt\u0131na girer.<\/td>\n<td>Sistem odakl\u0131d\u0131r. Bir s\u00fcre\u00e7 ele ge\u00e7irilse bile, yaln\u0131zca politika taraf\u0131ndan izin verilen kaynaklara eri\u015febilir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Karma\u015f\u0131kl\u0131k<\/strong><\/td>\n<td>D\u00fc\u015f\u00fck, anla\u015f\u0131lmas\u0131 ve y\u00f6netimi kolayd\u0131r.<\/td>\n<td>Y\u00fcksek, \u00f6\u011frenme e\u011frisi ve yap\u0131land\u0131rma gerektirir.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"Temel-Kavramlar-ve-Terminoloji\"><\/span>Temel Kavramlar ve Terminoloji<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux&#8217;\u00fc etkili bir \u015fekilde kullanabilmek i\u00e7in baz\u0131 temel kavramlar\u0131 bilmek gerekir. Bu terimler, SELinux&#8217;\u00fcn nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131n ve yap\u0131land\u0131r\u0131ld\u0131\u011f\u0131n\u0131n anahtar\u0131d\u0131r.<\/p>\n<h4>Politikalar (Policies)<\/h4>\n<p>Politikalar, sistemdeki t\u00fcm etkile\u015fimleri y\u00f6neten kurallar b\u00fct\u00fcn\u00fcd\u00fcr. Bir politikan\u0131n i\u00e7inde, hangi s\u00fcrecin (\u00f6rne\u011fin, httpd) hangi t\u00fcrdeki dosyaya (\u00f6rne\u011fin, httpd_sys_content_t) hangi izinlerle (\u00f6rne\u011fin, okuma) eri\u015febilece\u011fi gibi binlerce kural bulunur. CentOS\/RHEL tabanl\u0131 sistemlerde varsay\u0131lan olarak &#8220;targeted&#8221; (hedeflenmi\u015f) politika kullan\u0131l\u0131r. Bu politika, belirli a\u011f servislerini hedefler ve sistemin geri kalan\u0131na kar\u0131\u015fmaz, bu da y\u00f6netimi kolayla\u015ft\u0131r\u0131r.<\/p>\n<h4>Ba\u011flamlar (Contexts)<\/h4>\n<p>SELinux&#8217;\u00fcn temel ta\u015f\u0131 ba\u011flamlard\u0131r. Sistemdeki her dosya, s\u00fcre\u00e7, port ve kullan\u0131c\u0131 bir SELinux ba\u011flam\u0131 ile etiketlenir. Bu etiket, &#8220;kullan\u0131c\u0131:rol:t\u00fcr:seviye&#8221; format\u0131nda bir dizedir. En \u00f6nemli k\u0131sm\u0131 &#8220;t\u00fcr&#8221; (type) bilgisidir. \u00d6rne\u011fin, Apache web sunucusunun dosyalar\u0131 genellikle `httpd_sys_content_t` t\u00fcr\u00fcne sahipken, Apache s\u00fcrecinin kendisi `httpd_t` t\u00fcr\u00fcyle \u00e7al\u0131\u015f\u0131r. Politika, `httpd_t` s\u00fcrecinin `httpd_sys_content_t` t\u00fcr\u00fcndeki dosyalara eri\u015fimine izin verir.<\/p>\n<h4>Modlar (Modes)<\/h4>\n<p>SELinux \u00fc\u00e7 ana modda \u00e7al\u0131\u015fabilir: Enforcing (Zorlay\u0131c\u0131), Permissive (\u0130zin Verici) ve Disabled (Devre D\u0131\u015f\u0131). Bu modlar, politikalar\u0131n ne kadar kat\u0131 uygulanaca\u011f\u0131n\u0131 belirler ve makalenin ilerleyen b\u00f6l\u00fcmlerinde detayl\u0131ca incelenecektir.<\/p>\n<h4>Boolean&#8217;lar (Booleans)<\/h4>\n<p>Boolean&#8217;lar, SELinux politikalar\u0131n\u0131 yeniden derlemeye gerek kalmadan an\u0131nda \u00f6zelle\u015ftirmeyi sa\u011flayan a\u00e7ma\/kapama anahtarlar\u0131d\u0131r. \u00d6rne\u011fin, `httpd_can_network_connect` boolean&#8217;\u0131 `on` olarak ayarlan\u0131rsa, web sunucusunun a\u011f ba\u011flant\u0131lar\u0131 kurmas\u0131na izin verilir. Bu, belirli senaryolar i\u00e7in politikay\u0131 esnetmenin en kolay yoludur.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"VPS-Guvenligindeki-Yeri-ve-Onemi\"><\/span>VPS G\u00fcvenli\u011findeki Yeri ve \u00d6nemi<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Bir VPS ortam\u0131nda, genellikle birden fazla servis (web sunucusu, veritaban\u0131, e-posta sunucusu vb.) ayn\u0131 sistem \u00fczerinde \u00e7al\u0131\u015f\u0131r. Bu servislerden birinde ortaya \u00e7\u0131kacak bir g\u00fcvenlik zafiyeti, di\u011fer servisleri ve t\u00fcm sistemi tehdit edebilir. SELinux, bu servisleri birbirinden izole ederek hasar s\u0131n\u0131rlamas\u0131 (damage confinement) sa\u011flar. \u00d6rne\u011fin, web sunucunuzda bir &#8220;zero-day&#8221; zafiyeti istismar edilse bile, SELinux sald\u0131rgan\u0131n veritaban\u0131 dosyalar\u0131n\u0131 okumas\u0131n\u0131 veya sisteme bir rootkit kurmas\u0131n\u0131 engelleyebilir. Bu, geleneksel izinlerin tek ba\u015f\u0131na sa\u011flayamayaca\u011f\u0131 kritik bir koruma katman\u0131d\u0131r.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Karsilastirma-SELinuxu-Acik-Tutmak-mi-Kapatmak-mi\"><\/span>Kar\u015f\u0131la\u015ft\u0131rma: SELinux&#8217;u A\u00e7\u0131k Tutmak m\u0131, Kapatmak m\u0131?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>SELinux, sundu\u011fu \u00fcst\u00fcn g\u00fcvenli\u011fe ra\u011fmen sistem y\u00f6neticileri aras\u0131nda s\u0131k\u00e7a tart\u0131\u015f\u0131lan bir konudur. Bir\u00e7ok y\u00f6netici, kar\u015f\u0131la\u015ft\u0131klar\u0131 ilk sorunda \u00e7\u00f6z\u00fcm\u00fc SELinux&#8217;\u00fc devre d\u0131\u015f\u0131 b\u0131rakmakta bulur. Ancak bu karar\u0131 vermeden \u00f6nce, her iki senaryonun da avantajlar\u0131n\u0131 ve dezavantajlar\u0131n\u0131 dikkatlice tartmak gerekir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinuxu-Kapatmanin-Yaygin-Nedenleri\"><\/span>SELinux&#8217;u Kapatman\u0131n Yayg\u0131n Nedenleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux&#8217;\u00fcn kapat\u0131lmas\u0131n\u0131n ard\u0131nda genellikle \u00fc\u00e7 temel neden yatar: uyumluluk, karma\u015f\u0131kl\u0131k ve sorun giderme zorluklar\u0131.<\/p>\n<h4>Uygulama Uyumluluk Sorunlar\u0131<\/h4>\n<p>Baz\u0131 \u00fc\u00e7\u00fcnc\u00fc parti uygulamalar veya \u00f6zel olarak geli\u015ftirilmi\u015f yaz\u0131l\u0131mlar, SELinux politikalar\u0131yla uyumlu olmayabilir. Bir uygulama, standart d\u0131\u015f\u0131 bir dizine dosya yazmaya veya beklenmedik bir porta ba\u011flanmaya \u00e7al\u0131\u015ft\u0131\u011f\u0131nda, SELinux bu i\u015flemleri engelleyerek uygulaman\u0131n d\u00fczg\u00fcn \u00e7al\u0131\u015fmas\u0131n\u0131 \u00f6nleyebilir. Bu durum, \u00f6zellikle acil durumlarda, y\u00f6neticileri h\u0131zl\u0131 bir \u00e7\u00f6z\u00fcm olarak SELinux&#8217;\u00fc kapatmaya itebilir.<\/p>\n<h4>Yap\u0131land\u0131rma Karma\u015f\u0131kl\u0131\u011f\u0131 ve \u00d6\u011frenme E\u011frisi<\/h4>\n<p>SELinux&#8217;\u00fcn kendine \u00f6zg\u00fc terminolojisi, ba\u011flamlar\u0131, boolean&#8217;lar\u0131 ve politika kurallar\u0131, ilk ba\u015fta g\u00f6z korkutucu gelebilir. Standart Linux izin sistemine al\u0131\u015fk\u0131n bir y\u00f6netici i\u00e7in SELinux&#8217;\u00fc anlamak ve do\u011fru \u015fekilde yap\u0131land\u0131rmak zaman ve \u00e7aba gerektirir. Bu \u00f6\u011frenme e\u011frisi, bir\u00e7ok ki\u015finin onu kullanmaktan ka\u00e7\u0131nmas\u0131na neden olur.<\/p>\n<h4>Sorun Giderme Zorluklar\u0131<\/h4>\n<p>Bir uygulama beklendi\u011fi gibi \u00e7al\u0131\u015fmad\u0131\u011f\u0131nda, sorunun kayna\u011f\u0131n\u0131n SELinux olup olmad\u0131\u011f\u0131n\u0131 anlamak bazen zor olabilir. Hata kay\u0131tlar\u0131n\u0131 (audit logs) okumak ve yorumlamak, do\u011fru ara\u00e7lar\u0131 (`audit2why`, `ausearch`) kullanmay\u0131 gerektirir. Bu s\u00fcre\u00e7, standart sorun giderme y\u00f6ntemlerine g\u00f6re daha karma\u015f\u0131k oldu\u011fu i\u00e7in y\u00f6neticiler taraf\u0131ndan bir angarya olarak g\u00f6r\u00fclebilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinuxu-Kapatmanin-Potansiyel-Riskleri\"><\/span>SELinux&#8217;u Kapatman\u0131n Potansiyel Riskleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Kolay bir \u00e7\u00f6z\u00fcm gibi g\u00f6r\u00fcnse de, SELinux&#8217;\u00fc devre d\u0131\u015f\u0131 b\u0131rakmak, sunucunuzu ciddi g\u00fcvenlik risklerine maruz b\u0131rak\u0131r. Bu, \u00f6zellikle internete a\u00e7\u0131k bir <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/\" target=\"_blank\">sunucu<\/a> i\u00e7in tehlikeli bir ad\u0131md\u0131r.<\/p>\n<h4>&#8220;Zero-Day&#8221; Zafiyetlerine Kar\u015f\u0131 Savunmas\u0131zl\u0131k<\/h4>\n<p>Yaz\u0131l\u0131mlarda hen\u00fcz bilinmeyen ve yamas\u0131 yay\u0131nlanmam\u0131\u015f g\u00fcvenlik a\u00e7\u0131klar\u0131na &#8220;zero-day&#8221; zafiyetleri denir. Bir sald\u0131rgan, Apache veya Nginx gibi pop\u00fcler bir yaz\u0131l\u0131mda b\u00f6yle bir a\u00e7\u0131k bulursa, SELinux kapal\u0131yken bu a\u00e7\u0131\u011f\u0131 kullanarak sistemde kolayca komut \u00e7al\u0131\u015ft\u0131rabilir. SELinux a\u00e7\u0131k oldu\u011funda ise, web sunucusu s\u00fcrecinin yetkileri o kadar k\u0131s\u0131tl\u0131d\u0131r ki, sald\u0131rgan\u0131n sistemin di\u011fer b\u00f6l\u00fcmlerine s\u0131zmas\u0131 ve kal\u0131c\u0131 hasar vermesi neredeyse imkans\u0131z hale gelir.<\/p>\n<h4>Hasar S\u0131n\u0131rlama Yetene\u011finin Kayb\u0131<\/h4>\n<p>SELinux&#8217;\u00fcn en b\u00fcy\u00fck faydalar\u0131ndan biri, bir g\u00fcvenlik ihlali durumunda hasar\u0131 s\u0131n\u0131rlamas\u0131d\u0131r. Bir s\u00fcre\u00e7 (\u00f6rne\u011fin, bir PHP beti\u011fi) ele ge\u00e7irilse bile, yaln\u0131zca kendi SELinux ba\u011flam\u0131n\u0131n izin verdi\u011fi dosya ve i\u015flemlere eri\u015febilir. SELinux&#8217;\u00fc kapatt\u0131\u011f\u0131n\u0131zda, bu izolasyon ortadan kalkar ve ele ge\u00e7irilen bir s\u00fcre\u00e7, ait oldu\u011fu kullan\u0131c\u0131n\u0131n t\u00fcm yetkilerine sahip olur, bu da felaketle sonu\u00e7lanabilir.<\/p>\n<h4>Ayr\u0131cal\u0131k Y\u00fckseltme Sald\u0131r\u0131lar\u0131na Kar\u015f\u0131 Zay\u0131fl\u0131k<\/h4>\n<p>Ayr\u0131cal\u0131k y\u00fckseltme (privilege escalation), bir sald\u0131rgan\u0131n d\u00fc\u015f\u00fck yetkili bir kullan\u0131c\u0131 hesab\u0131ndan root (y\u00f6netici) hesab\u0131na ge\u00e7meye \u00e7al\u0131\u015fmas\u0131d\u0131r. SELinux, s\u00fcre\u00e7lerin \u00e7ekirdekle nas\u0131l etkile\u015fime girece\u011fini s\u0131k\u0131 bir \u015fekilde kontrol ederek bu t\u00fcr sald\u0131r\u0131lar\u0131n bir\u00e7o\u011funu engeller. Bu koruma katman\u0131n\u0131 kald\u0131rmak, sunucunuzu daha savunmas\u0131z b\u0131rak\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinuxu-Aktif-Tutmanin-Avantajlari\"><\/span>SELinux&#8217;u Aktif Tutman\u0131n Avantajlar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Yap\u0131land\u0131rma zorluklar\u0131na ra\u011fmen, SELinux&#8217;\u00fc aktif ve do\u011fru yap\u0131land\u0131r\u0131lm\u0131\u015f bir \u015fekilde tutman\u0131n getirdi\u011fi g\u00fcvenlik avantajlar\u0131 yads\u0131namaz.<\/p>\n<div class=\"karsilastirma\">\n<table>\n<thead>\n<tr>\n<th>Avantajlar (SELinux A\u00e7\u0131k)<\/th>\n<th>Dezavantajlar \/ Riskler (SELinux Kapal\u0131)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><strong>Geli\u015fmi\u015f Sistem G\u00fcvenli\u011fi:<\/strong> &#8220;Zero-day&#8221; ve di\u011fer zafiyetlere kar\u015f\u0131 proaktif koruma sa\u011flar.<\/td>\n<td><strong>Artan G\u00fcvenlik A\u00e7\u0131klar\u0131:<\/strong> Bilinmeyen zafiyetlere kar\u015f\u0131 tamamen savunmas\u0131z kal\u0131n\u0131r.<\/td>\n<\/tr>\n<tr>\n<td><strong>S\u00fcre\u00e7 \u0130zolasyonu:<\/strong> Bir servisteki ihlalin di\u011fer servislere yay\u0131lmas\u0131n\u0131 engeller (hasar s\u0131n\u0131rlama).<\/td>\n<td><strong>Sistem Geneli Risk:<\/strong> Tek bir g\u00fcvenlik a\u00e7\u0131\u011f\u0131 t\u00fcm sistemin ele ge\u00e7irilmesine yol a\u00e7abilir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Ayr\u0131cal\u0131k Y\u00fckseltme Korumas\u0131:<\/strong> K\u00f6t\u00fc niyetli yaz\u0131l\u0131mlar\u0131n root yetkilerine ula\u015fmas\u0131n\u0131 zorla\u015ft\u0131r\u0131r.<\/td>\n<td><strong>Kolay Ayr\u0131cal\u0131k Y\u00fckseltme:<\/strong> Sald\u0131rganlar\u0131n root eri\u015fimi elde etmesi daha kolay hale gelir.<\/td>\n<\/tr>\n<tr>\n<td><strong>Yasal ve Kurumsal Uyum:<\/strong> PCI-DSS, HIPAA gibi standartlar\u0131n gerektirdi\u011fi kat\u0131 g\u00fcvenlik kontrollerini kar\u015f\u0131lamaya yard\u0131mc\u0131 olur.<\/td>\n<td><strong>Uyumsuzluk Riski:<\/strong> Belirli g\u00fcvenlik standartlar\u0131na ve yasal d\u00fczenlemelere uyum sa\u011flamak zorla\u015f\u0131r.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<h4>Geli\u015fmi\u015f Sistem G\u00fcvenli\u011fi ve \u0130zolasyon<\/h4>\n<p>SELinux, her bir servisi kendi &#8220;kum havuzuna&#8221; (sandbox) hapseder. Web sunucusu sadece web dosyalar\u0131na, veritaban\u0131 sunucusu sadece veritaban\u0131 dosyalar\u0131na eri\u015febilir. Bu, sistem b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc koruman\u0131n en etkili yollar\u0131ndan biridir.<\/p>\n<h4>S\u00fcre\u00e7lerin Yetkilerinin S\u0131n\u0131rland\u0131r\u0131lmas\u0131<\/h4>\n<p>En az ayr\u0131cal\u0131k ilkesi (principle of least privilege), bir s\u00fcrecin i\u015fini yapmas\u0131 i\u00e7in gereken minimum yetkilere sahip olmas\u0131 gerekti\u011fini belirtir. SELinux, bu ilkeyi \u00e7ekirdek seviyesinde uygulayarak sistem g\u00fcvenli\u011fini temelden g\u00fc\u00e7lendirir.<\/p>\n<h4>Yasal ve Kurumsal Uyum Gereksinimlerinin Kar\u015f\u0131lanmas\u0131<\/h4>\n<p>PCI-DSS (Kredi Kart\u0131 Sekt\u00f6r\u00fc Veri G\u00fcvenli\u011fi Standard\u0131) veya HIPAA (Sa\u011fl\u0131k Sigortas\u0131 Ta\u015f\u0131nabilirlik ve Sorumluluk Yasas\u0131) gibi s\u0131k\u0131 g\u00fcvenlik standartlar\u0131na uymas\u0131 gereken i\u015fletmeler i\u00e7in SELinux, zorunlu eri\u015fim kontrol\u00fc gibi gereksinimleri kar\u015f\u0131lamada \u00f6nemli bir ara\u00e7t\u0131r. Ayr\u0131ca bir <a href=\"https:\/\/www.ihs.com.tr\/blog\/unmanaged-yonetilmeyen-vps-nedir\/\" target=\"_blank\">y\u00f6netilmeyen vps<\/a> sahibiyseniz bu ayarlamalar\u0131 sizin yapman\u0131z gerekti\u011fini unutmay\u0131n.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Son-Karar-Hangi-Senaryo-Sizin-Icin-Uygun\"><\/span>Son Karar: Hangi Senaryo Sizin \u0130\u00e7in Uygun?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Genel kural olarak, **SELinux&#8217;\u00fc her zaman &#8220;Enforcing&#8221; modunda \u00e7al\u0131\u015ft\u0131rmal\u0131s\u0131n\u0131z.** Kapatmak, yaln\u0131zca k\u0131sa vadeli bir kolayl\u0131k sa\u011flar ancak uzun vadede sunucunuzu b\u00fcy\u00fck risklere atar. E\u011fer bir uygulama uyumluluk sorunu ya\u015f\u0131yorsan\u0131z, do\u011fru yakla\u015f\u0131m SELinux&#8217;\u00fc kapatmak de\u011fil, sorunu anlamak ve uygulama i\u00e7in gerekli olan \u00f6zel politika kurallar\u0131n\u0131 olu\u015fturmakt\u0131r. SELinux&#8217;\u00fc \u00f6\u011frenmek i\u00e7in zaman ay\u0131rmak, sunucunuzun g\u00fcvenli\u011fine yapaca\u011f\u0131n\u0131z en de\u011ferli yat\u0131r\u0131mlardan biridir.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"SELinux-Durumunu-Yonetme-ve-Modlari-Degistirme\"><\/span>SELinux Durumunu Y\u00f6netme ve Modlar\u0131 De\u011fi\u015ftirme<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>SELinux&#8217;\u00fcn davran\u0131\u015f\u0131n\u0131 kontrol etmek, mevcut durumunu anlamak ve gerekti\u011finde modlar aras\u0131nda ge\u00e7i\u015f yapmak, temel SELinux y\u00f6netiminin ilk ad\u0131m\u0131d\u0131r. Bu i\u015flemler, birka\u00e7 basit komutla kolayca ger\u00e7ekle\u015ftirilebilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Mevcut-SELinux-Durumunu-Kontrol-Etme-sestatus\"><\/span>Mevcut SELinux Durumunu Kontrol Etme: `sestatus`<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sisteminizdeki SELinux&#8217;\u00fcn mevcut durumunu \u00f6\u011frenmenin en kolay yolu `sestatus` komutunu kullanmakt\u0131r. Bu komut, size SELinux&#8217;\u00fcn aktif olup olmad\u0131\u011f\u0131n\u0131, hangi modda \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131, hangi politikan\u0131n y\u00fckl\u00fc oldu\u011funu ve di\u011fer \u00f6nemli bilgileri \u00f6zetler.<\/p>\n<p>Terminalde `sestatus` komutunu \u00e7al\u0131\u015ft\u0131rd\u0131\u011f\u0131n\u0131zda \u015funa benzer bir \u00e7\u0131kt\u0131 al\u0131rs\u0131n\u0131z:<\/p>\n<p><code>SELinux status: enabled<br \/>SELinuxfs mount: \/sys\/fs\/selinux<br \/>SELinux root directory: \/etc\/selinux<br \/>Loaded policy name: targeted<br \/>Current mode: enforcing<br \/>Mode from config file: enforcing<br \/>Policy MLS status: enabled<br \/>Policy deny_unknown status: allowed<br \/>Max kernel policy version: 31<\/code><\/p>\n<p>Bu \u00e7\u0131kt\u0131da en \u00f6nemli sat\u0131rlar &#8220;Current mode&#8221; (Mevcut mod) ve &#8220;Mode from config file&#8221; (Yap\u0131land\u0131rma dosyas\u0131ndaki mod) sat\u0131rlar\u0131d\u0131r. &#8220;Current mode&#8221;, SELinux&#8217;\u00fcn \u015fu anki \u00e7al\u0131\u015fma modunu g\u00f6sterirken; &#8220;Mode from config file&#8221;, sistem yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda hangi modda ba\u015flayaca\u011f\u0131n\u0131 belirtir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinux-Modlarini-Anlama\"><\/span>SELinux Modlar\u0131n\u0131 Anlama<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux&#8217;\u00fcn \u00fc\u00e7 temel \u00e7al\u0131\u015fma modu vard\u0131r. Her modun farkl\u0131 bir i\u015flevi bulunur ve do\u011fru modu se\u00e7mek, hem g\u00fcvenlik hem de sorun giderme a\u00e7\u0131s\u0131ndan kritiktir.<\/p>\n<h4>Enforcing (Zorlay\u0131c\u0131) Mod<\/h4>\n<p>Bu, SELinux&#8217;\u00fcn varsay\u0131lan ve en g\u00fcvenli \u00e7al\u0131\u015fma modudur. Bu modda, SELinux politika kurallar\u0131n\u0131 aktif olarak zorlar. Yani, politikaya ayk\u0131r\u0131 olan herhangi bir i\u015flem (\u00f6rne\u011fin, bir web sunucusunun `\/home` dizinindeki bir dosyay\u0131 okumaya \u00e7al\u0131\u015fmas\u0131) engellenir ve bu deneme `\/var\/log\/audit\/audit.log` dosyas\u0131na kaydedilir. \u00dcretim ortam\u0131ndaki sunucular her zaman bu modda \u00e7al\u0131\u015fmal\u0131d\u0131r.<\/p>\n<h4>Permissive (\u0130zin Verici) Mod<\/h4>\n<p>Permissive mod, sorun giderme ve politika geli\u015ftirme i\u00e7in kullan\u0131l\u0131r. Bu modda, SELinux politika ihlallerini engellemez, sadece bir uyar\u0131 olarak hata kay\u0131tlar\u0131na (log) yazar. Politika kurallar\u0131na ayk\u0131r\u0131 bir i\u015flem ger\u00e7ekle\u015fti\u011finde, SELinux bu i\u015fleme izin verir ama &#8220;bunu yapmamal\u0131yd\u0131n&#8221; dercesine bir kay\u0131t olu\u015fturur. Bu mod, yeni bir uygulama kurdu\u011funuzda hangi SELinux kurallar\u0131na ihtiyac\u0131n\u0131z oldu\u011funu anlamak i\u00e7in son derece kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<h4>Disabled (Devre D\u0131\u015f\u0131) Mod<\/h4>\n<p>Bu modda, SELinux \u00e7ekirdekten tamamen devre d\u0131\u015f\u0131 b\u0131rak\u0131l\u0131r. Hi\u00e7bir politika y\u00fcklenmez, hi\u00e7bir i\u015flem kontrol edilmez ve hi\u00e7bir kay\u0131t tutulmaz. Ayr\u0131ca, dosya sistemindeki dosyalara SELinux ba\u011flam etiketleri atanmaz. Bu mod kesinlikle \u00f6nerilmez, \u00e7\u00fcnk\u00fc sisteminizi \u00f6nemli bir koruma katman\u0131ndan mahrum b\u0131rak\u0131r. Disabled moddan tekrar Enforcing veya Permissive moda ge\u00e7mek, t\u00fcm dosya sisteminin yeniden etiketlenmesini gerektirece\u011fi i\u00e7in zahmetli bir s\u00fcre\u00e7tir ve yeniden ba\u015flatma gerektirir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Calisma-Zamaninda-Mod-Degistirme-setenforce-Komutu\"><\/span>\u00c7al\u0131\u015fma Zaman\u0131nda Mod De\u011fi\u015ftirme: `setenforce` Komutu<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Sistemi yeniden ba\u015flatmadan SELinux modunu Enforcing ve Permissive aras\u0131nda de\u011fi\u015ftirebilirsiniz. Bu i\u015flem `setenforce` komutu ile yap\u0131l\u0131r. Bu komut, \u00f6zellikle ge\u00e7ici olarak bir sorunu te\u015fhis etmek i\u00e7in kullan\u0131\u015fl\u0131d\u0131r.<\/p>\n<ul>\n<li><b>Enforcing moda ge\u00e7mek i\u00e7in:<\/b> `setenforce 1`<\/li>\n<li><b>Permissive moda ge\u00e7mek i\u00e7in:<\/b> `setenforce 0`<\/li>\n<\/ul>\n<p>Bu de\u011fi\u015fiklikler sadece mevcut oturum i\u00e7in ge\u00e7erlidir ve sistem yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda kaybolur. `getenforce` komutu ile de mevcut modu h\u0131zl\u0131ca kontrol edebilirsiniz.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Sistemin-Yeniden-Baslatilmasinda-Kalici-Olacak-Sekilde-Mod-Degistirme\"><\/span>Sistemin Yeniden Ba\u015flat\u0131lmas\u0131nda Kal\u0131c\u0131 Olacak \u015eekilde Mod De\u011fi\u015ftirme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux modunu kal\u0131c\u0131 olarak de\u011fi\u015ftirmek i\u00e7in yap\u0131land\u0131rma dosyas\u0131n\u0131 d\u00fczenlemeniz gerekir. Bu dosya `\/etc\/selinux\/config` (veya baz\u0131 sistemlerde `\/etc\/sysconfig\/selinux`) yolunda bulunur.<\/p>\n<p>Dosyay\u0131 bir metin d\u00fczenleyici ile a\u00e7\u0131n (\u00f6rne\u011fin, `nano \/etc\/selinux\/config`) ve `SELINUX=` sat\u0131r\u0131n\u0131 d\u00fczenleyin.<\/p>\n<p><code># This file controls the state of SELinux on the system.<br \/># SELINUX= can take one of these three values:<br \/># enforcing - SELinux security policy is enforced.<br \/># permissive - SELinux prints warnings instead of enforcing.<br \/># disabled - No SELinux policy is loaded.<br \/>SELINUX=enforcing<\/code><\/p>\n<p>Burada `SELINUX=` de\u011ferini `enforcing`, `permissive` veya `disabled` olarak ayarlayabilirsiniz. Bu de\u011fi\u015fikli\u011fin etkili olmas\u0131 i\u00e7in sisteminizi yeniden ba\u015flatman\u0131z gerekir. \u00d6zellikle `disabled` modundan di\u011fer modlara ge\u00e7i\u015f yap\u0131yorsan\u0131z, yeniden ba\u015flatma s\u0131ras\u0131nda dosya sisteminin yeniden etiketlenmesi (auto-relabel) i\u015flemi ger\u00e7ekle\u015fecektir, bu da biraz zaman alabilir.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Temel-SELinux-Yapilandirma-Adimlari\"><\/span>Temel SELinux Yap\u0131land\u0131rma Ad\u0131mlar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>SELinux&#8217;\u00fc sadece aktif tutmak yeterli de\u011fildir; ayn\u0131 zamanda sisteminizdeki uygulamalar\u0131n ve servislerin ihtiya\u00e7lar\u0131na g\u00f6re do\u011fru \u015fekilde yap\u0131land\u0131rmak da gerekir. Bu, ba\u011flamlarla \u00e7al\u0131\u015fmay\u0131, boolean&#8217;lar\u0131 ayarlamay\u0131 ve a\u011f portlar\u0131n\u0131 y\u00f6netmeyi i\u00e7erir. Do\u011fru bir <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/linux-hosting.html\" target=\"_blank\">Linux Hosting<\/a> paketi se\u00e7imi bu ad\u0131mlar\u0131 daha kolay y\u00f6netmenizi sa\u011flar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinux-Baglamlari-Contexts-ile-Calisma\"><\/span>SELinux Ba\u011flamlar\u0131 (Contexts) ile \u00c7al\u0131\u015fma<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Ba\u011flamlar, SELinux&#8217;\u00fcn temelini olu\u015fturur. Bir dosyan\u0131n veya s\u00fcrecin ne yap\u0131p ne yapamayaca\u011f\u0131, onun ba\u011flam etiketine g\u00f6re belirlenir. Yanl\u0131\u015f ba\u011flama sahip bir dosya, en s\u0131k kar\u015f\u0131la\u015f\u0131lan SELinux hatalar\u0131n\u0131n nedenidir.<\/p>\n<h4>Dosya ve Dizinlerin Ba\u011flam\u0131n\u0131 G\u00f6r\u00fcnt\u00fcleme: `ls -Z`<\/h4>\n<p>Bir dosyan\u0131n veya dizinin SELinux ba\u011flam\u0131n\u0131 g\u00f6rmek i\u00e7in standart `ls` komutuna `-Z` bayra\u011f\u0131n\u0131 eklemeniz yeterlidir. \u00d6rne\u011fin, `\/var\/www\/html` dizininin i\u00e7eri\u011fini listelemek i\u00e7in:<\/p>\n<p><code>ls -Z \/var\/www\/html<\/code><\/p>\n<p>\u00c7\u0131kt\u0131, dosyan\u0131n izinleri, sahibi, grubu gibi standart bilgilerin yan\u0131 s\u0131ra SELinux ba\u011flam\u0131n\u0131 da g\u00f6sterecektir. Web sunucusu taraf\u0131ndan eri\u015filebilir dosyalar genellikle `httpd_sys_content_t` ba\u011flam t\u00fcr\u00fcne sahiptir.<\/p>\n<h4>Bir Dosyan\u0131n Ba\u011flam\u0131n\u0131 Ge\u00e7ici Olarak De\u011fi\u015ftirme: `chcon`<\/h4>\n<p>E\u011fer bir dosyan\u0131n ba\u011flam\u0131 yanl\u0131\u015fsa ve bunu ge\u00e7ici olarak d\u00fczeltmek isterseniz `chcon` (change context) komutunu kullanabilirsiniz. \u00d6rne\u011fin, web sunucusunun okuyabilmesi i\u00e7in bir dosyan\u0131n t\u00fcr\u00fcn\u00fc `httpd_sys_content_t` olarak ayarlamak:<\/p>\n<p><code>chcon -t httpd_sys_content_t \/path\/to\/file.html<\/code><\/p>\n<p>Ancak bu de\u011fi\u015fiklik ge\u00e7icidir. E\u011fer sistemde dosya sistemi yeniden etiketlenirse veya `restorecon` komutu \u00e7al\u0131\u015ft\u0131r\u0131l\u0131rsa, bu de\u011fi\u015fiklik kaybolur ve dosya varsay\u0131lan ba\u011flam\u0131na geri d\u00f6ner.<\/p>\n<h4>Dosya Sistemi Etiketlerine G\u00f6re Ba\u011flamlar\u0131 Kal\u0131c\u0131 Olarak Geri Y\u00fckleme: `restorecon`<\/h4>\n<p>Dosyalar\u0131n ba\u011flamlar\u0131n\u0131 kal\u0131c\u0131 olarak d\u00fczeltmenin en do\u011fru yolu `restorecon` komutunu kullanmakt\u0131r. Bu komut, SELinux&#8217;\u00fcn dosya sistemi etiketleme politikalar\u0131n\u0131 okur ve bir dosyan\u0131n veya dizinin olmas\u0131 gereken varsay\u0131lan ba\u011flam\u0131 ne ise onu uygular. \u00d6rne\u011fin, web sitenizin k\u00f6k dizinindeki t\u00fcm dosyalar\u0131n ba\u011flamlar\u0131n\u0131 d\u00fczeltmek i\u00e7in:<\/p>\n<p><code>restorecon -Rv \/var\/www\/html<\/code><\/p>\n<p>`-R` parametresi i\u015flemi yinelemeli (recursive) olarak t\u00fcm alt dizinlere uygular, `-v` ise yap\u0131lan de\u011fi\u015fiklikleri ekranda g\u00f6sterir. Bir dosyay\u0131 yanl\u0131\u015f bir konumdan web dizinine ta\u015f\u0131d\u0131ysan\u0131z (\u00f6rne\u011fin `\/home` dizininden), ba\u011flam\u0131 genellikle yanl\u0131\u015f olacakt\u0131r. `restorecon` \u00e7al\u0131\u015ft\u0131rmak bu sorunu \u00e7\u00f6zmenin en g\u00fcvenli yoludur.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinux-Booleanlari-ile-Politikalari-Ozellestirme\"><\/span>SELinux Boolean&#8217;lar\u0131 ile Politikalar\u0131 \u00d6zelle\u015ftirme<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Boolean&#8217;lar, SELinux politikas\u0131n\u0131n belirli y\u00f6nlerini, politikay\u0131 yeniden yazmaya gerek kalmadan a\u00e7\u0131p kapatman\u0131z\u0131 sa\u011flayan anahtarlard\u0131r. Bu, s\u0131k kar\u015f\u0131la\u015f\u0131lan senaryolar i\u00e7in esneklik sa\u011flar.<\/p>\n<h4>Mevcut Boolean&#8217;lar\u0131 ve Durumlar\u0131n\u0131 Listeleme: `getsebool -a`<\/h4>\n<p>Sisteminizdeki t\u00fcm SELinux boolean&#8217;lar\u0131n\u0131 ve mevcut durumlar\u0131n\u0131 (on\/off) listelemek i\u00e7in `getsebool -a` komutunu kullanabilirsiniz. \u00c7\u0131kt\u0131 olduk\u00e7a uzun olabilir, bu y\u00fczden genellikle `grep` ile filtrelemek daha pratiktir. \u00d6rne\u011fin, HTTPD ile ilgili boolean&#8217;lar\u0131 g\u00f6rmek i\u00e7in:<\/p>\n<p><code>getsebool -a | grep httpd<\/code><\/p>\n<h4>Boolean De\u011ferini De\u011fi\u015ftirme: `setsebool`<\/h4>\n<p>Bir boolean&#8217;\u0131n de\u011ferini de\u011fi\u015ftirmek i\u00e7in `setsebool` komutu kullan\u0131l\u0131r. \u00d6rne\u011fin, web sunucusunun a\u011f \u00fczerinden ba\u015fka servislere ba\u011flanmas\u0131na izin vermek i\u00e7in:<\/p>\n<p><code>setsebool httpd_can_network_connect on<\/code><\/p>\n<p>Bu komutla yap\u0131lan de\u011fi\u015fiklik, yeniden ba\u015flatma sonras\u0131nda kaybolur. De\u011fi\u015fikli\u011fi kal\u0131c\u0131 hale getirmek i\u00e7in `-P` bayra\u011f\u0131n\u0131 eklemeniz gerekir:<\/p>\n<p><code>setsebool -P httpd_can_network_connect on<\/code><\/p>\n<p>Bu i\u015flem biraz daha uzun s\u00fcrebilir \u00e7\u00fcnk\u00fc politika disk \u00fczerine yaz\u0131l\u0131r.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Ag-Portu-Baglamlarini-Yonetme-semanage-port\"><\/span>A\u011f Portu Ba\u011flamlar\u0131n\u0131 Y\u00f6netme: `semanage port`<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux, sadece dosya ve s\u00fcre\u00e7leri de\u011fil, ayn\u0131 zamanda a\u011f portlar\u0131n\u0131 da kontrol eder. Her servisin yaln\u0131zca belirli ba\u011flam t\u00fcr\u00fcne sahip portlar\u0131 dinlemesine izin verilir. \u00d6rne\u011fin, Apache varsay\u0131lan olarak `http_port_t` t\u00fcr\u00fcne sahip portlar\u0131 (80, 443 vb.) dinleyebilir. E\u011fer web sunucunuzu standart d\u0131\u015f\u0131 bir portta (\u00f6rne\u011fin 8080) \u00e7al\u0131\u015ft\u0131rmak isterseniz, SELinux&#8217;e bu portun art\u0131k `http_port_t` t\u00fcr\u00fcne ait oldu\u011funu bildirmeniz gerekir.<\/p>\n<h4>Yeni Bir Port i\u00e7in Politika Tan\u0131mlama<\/h4>\n<p>`semanage` arac\u0131, SELinux politika y\u00f6netiminin temel komutudur. 8080 TCP portunu `http_port_t` olarak tan\u0131mlamak i\u00e7in a\u015fa\u011f\u0131daki komut kullan\u0131l\u0131r:<\/p>\n<p><code>semanage port -a -t http_port_t -p tcp 8080<\/code><\/p>\n<p>Burada `-a` ekleme, `-t` t\u00fcr belirtme ve `-p` protokol belirtme anlam\u0131na gelir.<\/p>\n<h4>Mevcut Port Politikalar\u0131n\u0131 Listeleme<\/h4>\n<p>Sistemde tan\u0131ml\u0131 olan t\u00fcm port ba\u011flamlar\u0131n\u0131 listelemek i\u00e7in `semanage port -l` komutunu kullanabilirsiniz. Belirli bir t\u00fcrle ili\u015fkili portlar\u0131 g\u00f6rmek i\u00e7in `grep` ile filtreleyebilirsiniz:<\/p>\n<p><code>semanage port -l | grep http_port_t<\/code><\/p>\n<p>Bu komutlar, SELinux&#8217;\u00fc y\u00f6netilebilir ve sisteminizin ihtiya\u00e7lar\u0131na uyarlanabilir bir g\u00fcvenlik arac\u0131na d\u00f6n\u00fc\u015ft\u00fcrmenizi sa\u011flar.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"SELinux-Sorunlarini-Giderme-Troubleshooting\"><\/span>SELinux Sorunlar\u0131n\u0131 Giderme (Troubleshooting)<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>SELinux, bir i\u015flemi engelledi\u011finde, bunu sessizce yapmaz. Her engelleme (AVC denial) sistemin denetim (audit) kay\u0131tlar\u0131na detayl\u0131 bir \u015fekilde yaz\u0131l\u0131r. Bu kay\u0131tlar\u0131 okumay\u0131 ve yorumlamay\u0131 \u00f6\u011frenmek, SELinux kaynakl\u0131 sorunlar\u0131 \u00e7\u00f6zmenin anahtar\u0131d\u0131r. Neyse ki bu s\u00fcre\u00e7te size yard\u0131mc\u0131 olacak g\u00fc\u00e7l\u00fc ara\u00e7lar mevcuttur. E\u011fer bir <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/cpanel-hosting.html\" target=\"_blank\">cPanel Hosting<\/a> kullan\u0131yorsan\u0131z, baz\u0131 ayarlar panel \u00fczerinden daha kolay y\u00f6netilebilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"SELinux-Hata-Kayitlarini-Loglarini-Okuma-ve-Yorumlama\"><\/span>SELinux Hata Kay\u0131tlar\u0131n\u0131 (Loglar\u0131n\u0131) Okuma ve Yorumlama<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>SELinux taraf\u0131ndan engellenen her eylem, bir iz b\u0131rak\u0131r. Bu izleri takip ederek sorunun kayna\u011f\u0131n\u0131 ve \u00e7\u00f6z\u00fcm\u00fcn\u00fc bulabilirsiniz.<\/p>\n<h4>Audit Log Dosyas\u0131n\u0131n Yeri: `\/var\/log\/audit\/audit.log`<\/h4>\n<p>T\u00fcm SELinux olaylar\u0131, varsay\u0131lan olarak `\/var\/log\/audit\/audit.log` dosyas\u0131na kaydedilir. Bu dosyay\u0131 do\u011frudan okumak m\u00fcmk\u00fcn olsa da, i\u00e7eri\u011fi olduk\u00e7a karma\u015f\u0131k ve ayr\u0131nt\u0131l\u0131d\u0131r. Genellikle ham log dosyas\u0131n\u0131 okumak yerine, bu loglar\u0131 analiz etmek i\u00e7in tasarlanm\u0131\u015f \u00f6zel ara\u00e7lar kullan\u0131l\u0131r.<\/p>\n<h4>`ausearch` Komutu ile Hata Filtreleme<\/h4>\n<p>`ausearch` komutu, devasa `audit.log` dosyas\u0131 i\u00e7inde belirli olaylar\u0131 aramak i\u00e7in kullan\u0131l\u0131r. \u00d6zellikle SELinux reddetmelerini (AVC denial) bulmak i\u00e7in son derece faydal\u0131d\u0131r. Yaln\u0131zca son zamanlarda meydana gelen AVC reddetmelerini g\u00f6rmek i\u00e7in:<\/p>\n<p><code>ausearch -m avc -ts recent<\/code><\/p>\n<p>Burada `-m avc` mesaj t\u00fcr\u00fcn\u00fc &#8220;AVC&#8221; olarak filtreler, `-ts recent` ise zaman damgas\u0131n\u0131 &#8220;yak\u0131n zaman&#8221; (genellikle son 10 dakika) olarak s\u0131n\u0131rlar. Bu komut, sorunun neden kaynakland\u0131\u011f\u0131na dair ilk ipu\u00e7lar\u0131n\u0131 size verecektir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Sorun-Giderme-Yardimci-Araclari\"><\/span>Sorun Giderme Yard\u0131mc\u0131 Ara\u00e7lar\u0131<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Red Hat tabanl\u0131 da\u011f\u0131t\u0131mlar (CentOS, Fedora, RHEL), SELinux sorunlar\u0131n\u0131 anlamay\u0131 ve \u00e7\u00f6zmeyi kolayla\u015ft\u0131ran `setroubleshoot` paketi ile birlikte gelir. Bu paket, `audit2why` ve `audit2allow` gibi paha bi\u00e7ilmez ara\u00e7lar i\u00e7erir.<\/p>\n<h4>Hata Nedenini Anlama: `audit2why`<\/h4>\n<p>Bir engelleme kayd\u0131 buldu\u011funuzda, bunun neden oldu\u011funu anlamak i\u00e7in `audit2why` arac\u0131n\u0131 kullanabilirsiniz. Bu ara\u00e7, denetim loglar\u0131n\u0131 okur ve size engellemenin nedenini daha anla\u015f\u0131l\u0131r bir dilde a\u00e7\u0131klar.<\/p>\n<p><code>audit2why &lt; \/var\/log\/audit\/audit.log<\/code><\/p>\n<p>\u00c7\u0131kt\u0131 size genellikle sorunun bir boolean&#8217;\u0131 etkinle\u015ftirerek mi yoksa bir dosya ba\u011flam\u0131n\u0131 d\u00fczelterek mi \u00e7\u00f6z\u00fclebilece\u011fini s\u00f6yleyecektir. Hatta bazen, &#8220;Bu engellemeyi \u00e7\u00f6zmek i\u00e7in &#8216;setsebool -P httpd_can_network_connect on&#8217; komutunu \u00e7al\u0131\u015ft\u0131r\u0131n&#8221; gibi do\u011frudan \u00e7\u00f6z\u00fcm \u00f6nerileri sunar.<\/p>\n<h4>Hatalardan Politika Kural\u0131 Olu\u015fturma: `audit2allow`<\/h4>\n<p>Bazen kar\u015f\u0131la\u015ft\u0131\u011f\u0131n\u0131z sorun, mevcut politikada olmayan \u00f6zel bir izni gerektirir. Bu durumda, `audit2allow` arac\u0131 devreye girer. Bu ara\u00e7, denetim loglar\u0131ndaki engelleme kay\u0131tlar\u0131n\u0131 analiz eder ve bu engellemeleri ortadan kald\u0131racak \u00f6zel SELinux politika mod\u00fclleri olu\u015fturur. Bu, ileri d\u00fczey bir tekniktir ve dikkatli kullan\u0131lmal\u0131d\u0131r.<\/p>\n<p>\u00d6nce, mevcut t\u00fcm reddetmelerden bir kural tasla\u011f\u0131 olu\u015fturulur:<\/p>\n<p><code>audit2allow -a<\/code><\/p>\n<p>E\u011fer \u00f6nerilen kural mant\u0131kl\u0131 g\u00f6r\u00fcn\u00fcyorsa, bu kural\u0131 i\u00e7eren bir mod\u00fcl olu\u015fturup sisteme y\u00fckleyebilirsiniz:<\/p>\n<p><code>audit2allow -a -M my_custom_policy<br \/>semodule -i my_custom_policy.pp<\/code><\/p>\n<p>Bu, uygulaman\u0131z\u0131n ihtiya\u00e7 duydu\u011fu \u00f6zel izinleri, ana politikay\u0131 de\u011fi\u015ftirmeden, y\u00f6netilebilir bir mod\u00fcl olarak eklemenizi sa\u011flar.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Sik-Karsilasilan-SELinux-Hatalari-ve-Cozumleri\"><\/span>S\u0131k Kar\u015f\u0131la\u015f\u0131lan SELinux Hatalar\u0131 ve \u00c7\u00f6z\u00fcmleri<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Pratikte, sistem y\u00f6neticilerinin kar\u015f\u0131la\u015ft\u0131\u011f\u0131 SELinux sorunlar\u0131 genellikle birka\u00e7 yayg\u0131n senaryo etraf\u0131nda toplan\u0131r.<\/p>\n<h4>Web Sunucusu (Apache\/Nginx) Eri\u015fim \u0130zni Hatalar\u0131<\/h4>\n<p><b>Sorun:<\/b> Web sitenizin dosyalar\u0131n\u0131 standart `\/var\/www\/html` dizini yerine, \u00f6rne\u011fin `\/srv\/my-website` gibi farkl\u0131 bir dizine koydunuz ve taray\u0131c\u0131da &#8220;403 Forbidden&#8221; hatas\u0131 al\u0131yorsunuz.<\/p>\n<p><b>Neden:<\/b> Yeni dizinin ve i\u00e7indeki dosyalar\u0131n SELinux ba\u011flam\u0131 muhtemelen `httpd_sys_content_t` de\u011fil. Web sunucusu (`httpd_t` s\u00fcreci) bu ba\u011flama sahip olmayan dosyalar\u0131 okuyamaz.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm:<\/b> \u00d6nce `semanage fcontext` ile yeni dizin i\u00e7in kal\u0131c\u0131 bir etiketleme kural\u0131 ekleyin, ard\u0131ndan `restorecon` ile bu kural\u0131 uygulay\u0131n.<\/p>\n<p><code>semanage fcontext -a -t httpd_sys_content_t \"\/srv\/my-website(\/.*)?\"<br \/>restorecon -Rv \/srv\/my-website<\/code><\/p>\n<h4>Veritaban\u0131 Servisinin Dosyalara Eri\u015fememesi<\/h4>\n<p><b>Sorun:<\/b> MySQL\/MariaDB veritaban\u0131 dosyalar\u0131n\u0131z\u0131 varsay\u0131lan `\/var\/lib\/mysql` dizininden daha b\u00fcy\u00fck bir diske ba\u011fl\u0131 olan `\/data\/mysql` dizinine ta\u015f\u0131d\u0131n\u0131z ve veritaban\u0131 servisi ba\u015flam\u0131yor.<\/p>\n<p><b>Neden:<\/b> Yeni dizinin ba\u011flam\u0131, veritaban\u0131 s\u00fcrecinin (`mysqld_t`) yazma iznine sahip oldu\u011fu `mysqld_db_t` de\u011fil.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm:<\/b> Web sunucusu \u00f6rne\u011finde oldu\u011fu gibi, yeni dizin i\u00e7in do\u011fru ba\u011flam kural\u0131n\u0131 tan\u0131mlay\u0131n ve uygulay\u0131n.<\/p>\n<p><code>semanage fcontext -a -t mysqld_db_t \"\/data\/mysql(\/.*)?\"<br \/>restorecon -Rv \/data\/mysql<\/code><\/p>\n<h4>\u00d6zel Bir Port \u00dczerinden \u00c7al\u0131\u015fan Uygulama Hatalar\u0131<\/h4>\n<p><b>Sorun:<\/b> \u00d6zel bir uygulamay\u0131 9999 portunda \u00e7al\u0131\u015facak \u015fekilde yap\u0131land\u0131rd\u0131n\u0131z, ancak uygulama bu porta ba\u011flanam\u0131yor (bind error).<\/p>\n<p><b>Neden:<\/b> SELinux, 9999 portunun hangi servis taraf\u0131ndan kullan\u0131labilece\u011fini bilmiyor. Bu port muhtemelen `unreserved_port_t` olarak etiketlidir ve uygulaman\u0131z\u0131n bu t\u00fcre ba\u011flanma izni yoktur.<\/p>\n<p><b>\u00c7\u00f6z\u00fcm:<\/b> `semanage port` komutu ile bu porta uygulaman\u0131z i\u00e7in \u00f6zel bir ba\u011flam t\u00fcr\u00fc atay\u0131n. \u00d6rne\u011fin, uygulaman\u0131z\u0131n ba\u011flam\u0131 `myapp_t` ise, porta da `myapp_port_t` gibi bir t\u00fcr atayarak sorunu \u00e7\u00f6zebilirsiniz. Basit bir \u00e7\u00f6z\u00fcm olarak, e\u011fer bu bir HTTP servisi ise, `http_port_t` olarak da etiketleyebilirsiniz:<\/p>\n<p><code>semanage port -a -t http_port_t -p tcp 9999<\/code><\/p>\n<h2><span class=\"ez-toc-section\" id=\"Guvenli-ve-Yonetilebilir-Bir-VPS-Altyapisi-Icin-Neden-IHS-Telekomu-Tercih-Etmelisiniz\"><\/span>G\u00fcvenli ve Y\u00f6netilebilir Bir VPS Altyap\u0131s\u0131 \u0130\u00e7in Neden \u0130HS Telekom&#8217;u Tercih Etmelisiniz?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>SELinux gibi g\u00fc\u00e7l\u00fc g\u00fcvenlik ara\u00e7lar\u0131n\u0131 etkin bir \u015fekilde y\u00f6netmek, yaln\u0131zca teknik bilgi de\u011fil, ayn\u0131 zamanda sa\u011flam ve g\u00fcvenilir bir altyap\u0131 gerektirir. Bir <a href=\"https:\/\/www.ihs.com.tr\/sunucu-kiralama\/vds-sunucu.html\" target=\"_blank\">VDS<\/a> veya VPS sunucusunun performans\u0131, g\u00fcvenli\u011fi ve y\u00f6netilebilirli\u011fi, temelinde yatan donan\u0131m, a\u011f altyap\u0131s\u0131 ve sa\u011flay\u0131c\u0131n\u0131n sundu\u011fu destek hizmetleriyle do\u011frudan ili\u015fkilidir. \u0130\u015fte bu noktada \u0130HS Telekom, T\u00fcrkiye&#8217;nin lider altyap\u0131 sa\u011flay\u0131c\u0131s\u0131 olarak \u00f6ne \u00e7\u0131kmaktad\u0131r.<\/p>\n<p>\u0130HS Telekom, y\u0131llar\u0131n verdi\u011fi tecr\u00fcbe ile en g\u00fcncel donan\u0131mlar\u0131 ve y\u00fcksek h\u0131zl\u0131 a\u011f altyap\u0131s\u0131n\u0131 bir araya getirerek kesintisiz ve performansl\u0131 <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/\" target=\"_blank\">hosting<\/a> hizmetleri sunar. Sundu\u011fumuz VPS \u00e7\u00f6z\u00fcmleri, SELinux gibi geli\u015fmi\u015f g\u00fcvenlik katmanlar\u0131n\u0131 sorunsuz bir \u015fekilde \u00e7al\u0131\u015ft\u0131rman\u0131z i\u00e7in gereken kararl\u0131 ve g\u00fc\u00e7l\u00fc ortam\u0131 sa\u011flar. G\u00fcvenlik, altyap\u0131m\u0131z\u0131n temel ta\u015f\u0131d\u0131r ve sundu\u011fumuz t\u00fcm hizmetlerde en y\u00fcksek standartlar\u0131 g\u00f6zetiriz. Ayr\u0131ca olas\u0131 bir problemde bir <a href=\"https:\/\/www.ihs.com.tr\/ssl\/\" target=\"_blank\">SSL sertifikas\u0131<\/a> kurulumunda veya di\u011fer teknik konularda uzman ekibimizden destek alabilirsiniz. Projeniz i\u00e7in bir <a href=\"https:\/\/www.ihs.com.tr\/domain\/alan-adi-domain-tescili.html\" target=\"_blank\">domain sorgulama<\/a> i\u015flemi yaparak ilk ad\u0131m\u0131 atabilirsiniz.<\/p>\n<p>Web siteniz i\u00e7in \u00f6zel olarak optimize edilmi\u015f, y\u00fcksek performansl\u0131 ve g\u00fcvenli bir bar\u0131nd\u0131rma \u00e7\u00f6z\u00fcm\u00fc ar\u0131yorsan\u0131z, <a href=\"https:\/\/www.ihs.com.tr\/web-hosting\/wordpress-hosting.html\" target=\"_blank\">WordPress hosting<\/a> paketlerimiz de ideal bir se\u00e7enek olabilir. \u0130ster karma\u015f\u0131k SELinux politikalar\u0131 y\u00f6netin, ister y\u00fcksek trafikli bir web uygulamas\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n, \u0130HS Telekom&#8217;un sundu\u011fu esnek ve \u00f6l\u00e7eklenebilir altyap\u0131 ile t\u00fcm ihtiya\u00e7lar\u0131n\u0131za cevap bulabilirsiniz. G\u00fcvenli\u011finizi ve performans\u0131n\u0131z\u0131 \u015fansa b\u0131rakmay\u0131n, sekt\u00f6r\u00fcn lideri \u0130HS Telekom ile \u00e7al\u0131\u015farak projenizi sa\u011flam temeller \u00fczerine in\u015fa edin.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Linux tabanl\u0131 sunucularda g\u00fcvenlik, sistem y\u00f6neticilerinin en \u00f6nemli \u00f6nceliklerinden biridir. \u00d6zellikle bir Sanal \u00d6zel Sunucu (VPS) y\u00f6netiyorsan\u0131z, sisteminizi yetkisiz eri\u015fimlere, zararl\u0131 yaz\u0131l\u0131mlara&hellip;<\/p>\n","protected":false},"author":3,"featured_media":16434,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[414],"tags":[],"class_list":["post-16433","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sunucu"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16433","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/comments?post=16433"}],"version-history":[{"count":1,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16433\/revisions"}],"predecessor-version":[{"id":16435,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/posts\/16433\/revisions\/16435"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media\/16434"}],"wp:attachment":[{"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/media?parent=16433"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/categories?post=16433"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ihs.com.tr\/blog\/wp-json\/wp\/v2\/tags?post=16433"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}