NPM配置账号密码访问
Nginx Proxy Manager 配置账号密码访问
使用NPM替代传统的nginx来进行流量反代对于主要业务都使用docker运行的用户来说是一个很不错的选择,但是总有一些网站我们期望设一个门槛,只有自己或者拥有账号密码的人才能访问,有一部分应用本身就带有用户登录系统,但是仍然有很多简单的应用是不存在账号密码这套系统的,所以需要在nginx这里进行把关。
创建密钥文件
nginx设置密码认证中,密码需要是cypt认证的,可以使用 apache
的 htpasswd
来创建密码。
首先要进入到docker映射到npm中data目录的宿主文件夹,然后执行命令,命令中 nginx_passwd
是生成的密钥文件名,$username 和 $password 替换成你想要使用的账号名和密码。
cd $path_to_your_npm_docker_volume_data
htpasswd -b -c nginx_passwd $username $password
如果提示command not found
,就需要使用yum
或者apt-get
来安装一下。
yum install htpasswd
apt-get install apache2-utils
正常的话,命令输出如下,会在当前路径生成nginx_passwd文件,这个文件里就是用户名以及密钥
#redults:
Adding password for user $username
Nginx Proxy Manager 配置
在proxy配置中的advance这一栏中输入以下两行:
auth_basic "input you user name and password";
auth_basic_user_file /data/nginx_passwd;
点击保存后重新进入网站,应该就能看到网站的提示输入账号密码的弹窗了