Kimlik doğrulamada farklı türde güvenlik önlemleri sağlayabilir siniz. Apache veya Nginx gibi HTTP sunucularında HTTP Temel Kimlik Doğrulaması’nı kullanabiliriz. HTTP Temel Kimlik Doğrulama, web sunucusu tarafından sağlanan kimlik doğrulama protokolüdür. HTTP Temel Kimlik Doğrulama Veritabanı ve Kullanıcıları oluşturmak için htpasswd aracını kullanabiliriz. Uygulama düzeyi kimlik doğrulaması kullanarak bu arada daha iyi bir çözümdür.
htpasswd aracını yükleme
htpasswd Ubuntu, Debian, Mint ve Kali için Apache Utils paketi tarafından sağlanmaktadır.Aşağıdaki komutla yükleyebiliriz.
sudo apt install apache2-utils
Fedora, CentOS, RHEL için htpasswd aracını yükleme
sudo yum install httpd-tools
Htpasswd Veritabanı ve Kullanıcı Oluşturma
-C seçeneğiyle bir kullanıcı parolası veritabanı oluşturacağız ve veritabanı dosya adı, kullanıcı ve parola gibi ilgili bilgileri sağlayacağız. .htpasswd sadece kullanıcı ve şifrelerinin saklandığı metin dosyası olacak. .htpasswd dosyasının nereye kayıt edilmesini istiyorsanız ona göre yolunu belirtebilir siniz.
htpasswd -c /etc/nginx/.htpasswd test
Kullanıcıları listeleme
Varolan kullanıcıları cat komutuyla veritabanı adı ile listeleyebiliriz. Çünkü .htpasswd isimli dosyamız sadece şifrenin şifrelenmiş biçimde saklandığı bir metin dosyasıdır. .htpasswd dosyamızı sakladığınız dizinden faklı bir bölümde iseniz .htpasswd dosya yolunu tam yazmanız gerekmektedir.
cat /etc/nginx/.htpasswd
Mevcut kullanıcı şifresini değiştirme
Mevcut kullanıcı şifresini, sıfırdan oluşturmak gibi kullanıcı adını tekrar vermemiz yeterlidir. Bu bize tekrar kullanıcı şifresi soracaktır. Bu örnekte test’in şifresini değiştireceğiz.
htpasswd /etc/nginx/.htpasswd test
Kullanıcı silme
Kullanıcının erişimini önlemek istiyorsak, kullanıcıyı veritabanımızdan kaldırmalıyız. -D seçeneğini kullanacağız ve kaldırmak istediğimiz kullanıcı adını belirleyeceğiz. Bu örnekte test adlı kullanıcıyı kaldıracağız.
htpasswd -D /etc/nginx/.htpasswd test