.htaccess ile dosya şifreleme
.htaccess dosyası, Apache web sunucusu üzerinde dizinlere özel yapılandırma ayarları yapmanıza olanak tanır. .htaccess kullanarak, bir dizindeki belirli dosyalara veya dizinlere parola koruması eklemek oldukça yaygındır. Bu işlem için genellikle .htaccess dosyası ve .htpasswd adlı bir dosya kullanılır. .htpasswd, kullanıcı adı ve şifrelerin bulunduğu dosyadır.
Adım Adım .htaccess ile Dosya Şifreleme:
1. .htpasswd Dosyasını Oluşturma
Kullanıcı adlarını ve şifreleri saklayacak dosya .htpasswd dosyasıdır. Bu dosyayı Apache'nin belirli bir dizinine yerleştirmeniz gerekir (genellikle root dizin dışında, güvenlik açısından). Şifreler genellikle şifrelenmiş formatta saklanır.
Komut satırında şifreli bir kullanıcı oluşturma: Linux'ta aşağıdaki komutu kullanabilirsiniz:
htpasswd -c /path/to/.htpasswd kullaniciadi
Bu komut, verilen dizinde .htpasswd dosyasını oluşturur ve ardından kullanıcı adı için bir parola belirler. Eğer dosya zaten mevcutsa, -c bayrağını kaldırarak yeni bir kullanıcı ekleyebilirsiniz:
htpasswd /path/to/.htpasswd yeniKullanici
2. .htaccess Dosyasını Oluşturma
Şifreleme yapmak istediğiniz dizinde .htaccess dosyasını oluşturun ve aşağıdaki satırları ekleyin:
AuthType Basic
AuthName "Koruma Alanı"
AuthUserFile /path/to/.htpasswd
Require valid-user
AuthType Basic: Parola doğrulama türünü belirtir.AuthName "Koruma Alanı": Bu alan, kimlik doğrulama ekranında gösterilecek mesajdır.AuthUserFile /path/to/.htpasswd:.htpasswddosyanızın tam yolunu belirtin.Require valid-user: Geçerli bir kullanıcı adı ve şifre gerektirir.
3. Dosyaları Koruma
Bu yapılandırma sayesinde, .htaccess dosyasını yerleştirdiğiniz dizin ya da dosyalara erişmek isteyen kişilerden kullanıcı adı ve parola istenecektir.
4. Dosyayı Yalnızca Belli Bir Dosyaya Uygulama
Eğer sadece belirli bir dosya için şifreleme yapmak istiyorsanız .htaccess dosyasını şu şekilde düzenleyebilirsiniz:
AuthType Basic
AuthName "Koruma Alanı"
AuthUserFile /path/to/.htpasswd
Require valid-user
Bu örnekte sadece korunacakdosya.html dosyasına erişmek için şifre istenecektir.
Önemli Noktalar:
.htpasswddosyasını web kök dizininde (public_html vb.) tutmaktan kaçının. Güvenlik açısından sunucunun erişim dışı olan bir yerine yerleştirin..htaccessdosyasındaki yolun doğru olduğuna emin olun.
Bu adımlarla .htaccess ve .htpasswd kullanarak bir dizini ya da dosyayı şifre ile koruyabilirsiniz.