通过输入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或更高版本)