Auth_basic作为认证模块,通常用于Apache和Nginx。在许多没有身份验证的系统中,使用nginx的auth_basic来制作简单的身份验证。这是一个常见的操作。在访问时打开Auth_basic认证后,将提示输入用户名密码进行认证。
一种用于与Auth_basic合作的工具是HTPASSWD,它来自HTTPD-Tools软件包,该软件包主要用于生成用户及其密码加密文件
但是在生成密码时,htpasswd中存在问题
可以看出,HTPassWD中有4种类型的加密算法,即MD5,BCRYPT,Crypt,SHA。在HTTPD-Tools 2.2的版本中,默认使用加密加密算法被加密,并且HTTPD-Tools 2.4在中间,默认值使用MD5来加密密码
有人解释说,SHA比MD5加密更安全。为什么在新版本中使用MD5作为默认加密算法?
在HTTPD-Tools 2.4的图中,最后一句话“ SHA算法不使用盐,并且不如MD5算法更安全”,这是没有SALT SHA算法,并且没有MD5安全性。
盐在密码学中称为盐。这是一个随机生成的字符串。在没有盐的哈希中,有一种破裂的方法是彩虹手表碰撞。
安全处理方法是将HTTPD-Tools更新为2.4版,然后重新生成用户密码对,或通过HTPASSWD生成键,选择MD5加密方法以生成新的用户密码对
在这里我们创建一个新网站
作为演示,生产环境无法使用此简单密码
检查nginx.conf中的conf.d目录是否有任何支持。如果没有,请添加
注意:在生产环境中,为了管理便利性,每个服务器都将放置在专用的conf文件中。
NGINX仅需要一个密码文件作为验证,以及在生成密码文件的位置,这并不重要,因此您只需要一种方法即可生成密钥
有很多方法,您可以使用python使用go或c
当然,您还可以使用各种工具来协助。在以下一代工具中选择您喜欢的方式。
输入网站并输入正确的用户名和密码以输入网站
如果您不知道NGINX配置项目,可以在这里观看
