Apache Dizin Erişimi Kısıtlama

Dizin Erişimini Kısıtlama

Htaccess ile Kullanıcılara Kısıtlama
Htaccess Apache Web sunucusu ile birlikte gelen ve Apache Web sunucu üzerindeki belirli dizinlere erişim için kullanıcı adı ve parola sorgulaması yapmaya yarayan bir uygulamadır. Bu sayede özel dizinlere sadece sizin belirlediğiniz kullanıcılar erişebilir.

Bir Örnek verelim, http://www.rt.net.tr/cok_ozel adresine htaccess uygulayalım.
Bu dizin dosya sistemimizde /www/htdocs/cok_ozel olsun. httpd.conf dosyasını bir metin düzenleyicide açalım ve şu ifadeleri yazalım:

         <Directory /www/htdocs/cok_ozel>
          AllowOverride AuthConfig
         </Directory>

AllowOverride AuthConfig ifadesi ile bu dizine erişim için httaccess

kullanılması gerektigini belirtiyoruz.
htaccess nerede mi olacak? Tabiki /www/htdocs/cok_ozel dizini altında! Evet /www/htdocs/cok_ozel/ dizini altında .htaccess dosyasını oluşturun (Evet Nokta var! .htaccess) ve içine:

         AuthName "RT.NET Ozel Erisim Bolgesi !!!"
         AuthType Basic
         AuthUserFile /www/htdocs/cok_ozel/.htpasswd
         require valid-user

yazınız… Biraz Açıklayalım.

AuthName “RT.NET Ozel Erisim Bolgesi !!!” ifadesi ile http://www.rt.net.tr/cok_ozel yazıldığında karşınıza çıkan kullanıcı adı ve parola diyaloğundaki açıklayıcı bilgidir. Buraya istediğinizi yazabilirsiniz.
AuthType Basic ifadesini değiştirmeyin. Burada kimlik kanıtlama türü belirtiliyor. AuthUserFile /www/htdocs/cok_ozel/.htpasswd, yukarıdaki ifade ile de kullanıcı adı ve parolaların saklandığı dosyanın TAM! yeri belirtiliyor. Evet Tam olarak dosyanın yeri belirtilmelidir.
require valid-user, bu en son ile bu dizine .htpasswd dosyasındaki kullanıcıların erişebiliceği belirtiliyor. .htaccessdosyasıtamam.Sıra.htpasswddosyasını oluşturmayageldi:

         # /www/bin/htpasswd  -c  /www/htdocs/cok_ozel/.htpasswd yenigul

Yukarıdaki komut ile /www/htdocs/cok_ozel/ dizini altında .httpasswd

oluşturulur ve yenigul kullanıcısı eklenir.
-c (creat) parametresi ile .htpasswd dosyası hiç yoktan oluşturulur. İkinci bir kullanıcı eklemek için bu ifadeyi kullanmayınız. İkinci kullanıcının eklenmesi,

# /www/bin/htpasswd    /www/htdocs/cok_ozel/.htpasswd yakup

şeklinde olmalıdır.
.htaccess’i de bitirdik!
Dizinleri IP Adresine veya Alan Adına Göre Kısıtlama

Bu kısımda kısıtlama yapılacak adresimiz http://www.rt.net.tr/intranet olsun ve dosyalar /www/htdocs/intranet altında bulunsun.

Sadece belirli IP’lere erişimi verip diğerlerine yasak koymak için, örneğin 212.65.128 uzayındaki IP’lere erişim verelim:

     <Directory  /www/htdocs/intranet>
       Order deny,allow
       Allow from 212.65.128
       Deny from All
     %lt;/Directory>

Sadece belirli alan isimlerine erişim verip diğerlerine yasak koymak için, örnegin linux.org.tr alanına erişim verelim:

     <Directory  /www/htdocs/intranet>
       Order deny,allow
       Allow from linux.org.tr
       Deny from All
     </Directory>

Sadece belirli IP’lere yasak koyup diğerlerine izin vermek için, örnegin 195.1.2 uzayındaki IP’lere yasak koyalım:

     <Directory  /www/htdocs/intranet>
       Order allow,allow
       Allow from All
       Deny from  195.1.2
     </Directory>

Sadece belirli alan isimlerine yasak koyup diğerlerine izin vermek için, örnegin lamer.com alanına yasak koyalım:

     <Directory  /www/htdocs/intranet>
       Order allow,deny
       Allow from All
       Deny from lamer.com
     </Directory>

Yapılan değişikliklerin etkin olması için

     # /www/bin/apachectl restart

komutunu veriniz..

Yorum yapın