这里我用的是windows下的centos子系统,直接生成该密钥上传到服务器即可
生成工具选择htpasswd,htpasswd 是开源 http 服务器 apache httpd 的一个命令工具,用于生成 http 基本认证的密码文件。
安装htpasswd
先安装密码生成工具
ubuntu安装:
sudo apt-get install apache2-utils
centos安装:
yum -y install httpd
密钥生成选项
这里使用如下生成选项
#-n:Don't update file; display results on stdout //不更新文件;在标准输出上显示结果
#-b:Use the password from the command line //从命令行使用密码
#-m:Force MD5 encryption of the password //强制对密码进行MD5加密
输入命令生成密钥
htpasswd -nbm admin 12345678
可以看到输出有密钥
admin:$apr1$nkxLxBPa$EGa.u5yKuQ08m6g/8bGb9.
在你之前所指定的密码文件中,输入生成的内容即可
auth_basic_user_file /usr/local/soft/nginx-1.18.0/conf/conf.d/admin.pwd; // 对于windows server用户来说,路径可能略有不同
本系列文章
带你深入了解nginx基本登录认证(包含所有配置步骤和深度解析)
带你深入了解nginx基本登录认证:使用htpasswd生成密码
带你深入了解nginx基本登录认证:使用openssl生成密码
带你深入了解nginx基本登录认证:使用python生成密码
参考
nginx配置禁特定路径下的反向代理
nginx配置禁止访问目录或禁止访问目录下的文件
nginx跨域处理
带你深入了解nginx基本登录认证(包含配置步骤)
使用htpasswd生成密码
使用openssl生成密码
使用python生成密码
你的nginx登录认证安全吗?
配置http基本验证(Basic Auth)
Centos安装htpasswd_Nginx中使用htpasswd