Değerli dostumuz @caylakpenguen, yine ilginç bir konuya değinmiş. Nginx web sunucumuzda bir dizine girişte parola işlemi yapmak istediğimizde ne yapmamız gerektiğini ele almış. @caylakpenguen‘in yazısı şu şekilde: “Nginx web sunucumuzda bir dizine girişte parola işlemi yapmak istediğimizde Apache gibi .htpasswd oluşturma işlemi gibi yapılmıyor. Htaccess erişim kontrolü olarak biliyor Apache’de. Nginx’te bunu yapmak için VirtualHost dosyasında ekleme yapmamız gerekiyor. Ayrıca htpasswd gibi bir dosyayı biz oluşturup istediğimiz dizine atarak tanımlama yapacağız.”
“Şifremizi openssl marifeti ile oluşturacağız.”
openssl passwd
yazıp enter dediğimizde giriş için kullanacağımız şifre iki kere girilecek ve girdiğimiz parola için karmaşık bir görünüm oluşturacak.
root@salih:~# openssl passwd
Password:
123456 Girdim
Verifying - Password:
123456 Girdim
6i60Qf3fCAO4c
“123456 şifresi için 6i60Qf3fCAO4c dizisini üretti.
Phpmyadmin dizinini güvene almak istiyorum. buda genelde pma olarak bağlanılır. Bundan dolayı sunucuya http://sunucu/pma olarak erişmek istenecek. Dışarıdan direk giriş yerin öncesinde bir şifre ekranı gelecek. Ben /etc/nginx/ dizini altında pma_sifre diye bir dosya içinde kullanıcımı ve şifremi tutacağım. Yukarıda ürettiğim şifre karşılığındaki diziyi salih kullanıcısı ile eşleştireceğim.”
nano /etc/nginx/pma_sifre
salih:6i60Qf3fCAO4c
“ekleyip çıkıyoruz.
salih kullanıcısı ve 123456 şifresi ile giriş yapılacağı bilgisini girdim.
Nginx config dosyasında server{ altında bir yere ayarları eklemeniz gerekiyor.”
server {
. . .
location / {
try_files $uri $uri/ =404;
}
location /pma {
auth_basic "Pma Giriş Ekranı";
auth_basic_user_file /etc/nginx/pma_sifre;
}
kaydedip çıkıyoruz. Nginx sunucusunu yeniden başlattığımızda, artık /pma ile erişimde şifre sorulacak.
Kaynak: http://www.linuxuzmani.com