Dizin Erişimini Kısıtlama
Önceki Apache Web Sunucusunda Sanal Adresleme ve Dizin Erişiminin Kısıtlanması NASIL Sonraki
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.
.htaccess dosyası tamam. Sıra .htpasswd dosyasını  oluşturmaya geldi:
# /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..
Belgemizin sonuna geldik.
Sorunlarınızı ve önerilerinizi yukarıda belirttiğim e-posta adresimden bana ulaştırabilirsiniz.
Happy Linuxing
İSMAİL YENİGÜL
Önceki Üst Ana Başlık Sonraki
Sanal Adresleme (Virtual Hosting) Başlangıç A. Telif Hakkı ve Lisans
Bir Linux Kitaplığı Sayfası