通過輸入ID和密碼,將創建ID和哈希密碼以放入.htpasswd。
什麼是htpasswd文件?
它用於使用稱為BASIC身份驗證的HTTP用戶身份驗證來保護文件,文件夾或整個網站,並且是根據.htaccess文件中所述的規則實現的。
用戶信息每位用戶寫在一行上,每行包含一個用戶名和密碼,並用冒號(:)分隔。用戶名以純文本格式保存,但密碼以散列格式保存。
您可以給密碼文件起任何名字,但是Apache默認使用.htpasswd,而點文件(以``。''開頭的文件)通常是隱藏文件,因此建議使用“ .htpasswd”作為文件名。
哈希算法
- md5(APR)$ apr1 $前綴
生成128位值的哈希函數。
這是2.2.18版和更高版本中的默認設置,但近年來不夠安全。
兼容性:Apache所有版本,Nginx 1.0.3或更高版本 - crypt()或不帶前綴的crypt(3)
默認算法是Apache 2.2.17之前的版本,但由於密碼限制為8個字符,因此現在被認為是不安全的。
兼容性:Apache,Nginx所有版本 - SHA-1 {SHA}前綴
生成160位值的哈希函數。
儘管它已被許多應用程序和協議所採用,但按最新標準它並不安全。
兼容性:所有Apache版本,Nginx 1.3.13或更高版本 - bcrypt $ 2y $或$ 2a $前綴
使用河豚加密算法的散列函數近年來被認為相對安全。
計算需要很多時間,這是它安全的原因之一。
該參數設置計算時間。 (更大的數字更複雜,更安全,但生成速度更慢)
*請注意不要將值設置為10或更大,因為它會很重。
兼容性:Apache 2.4或更高版本(需要apr-util 1.5或更高版本)