nginx用户认证与htpasswd命令
? 最近在搭建ELK,然后ELK的kibana界面想添加一个访问限制,看到kibana有个插件x-pack,本来想用用,发现是收费的,就放弃了,然后就想着想配置下nginx的认证访问来实现简单的访问登陆。 nginx的用户认证: 首先nginx是必须的,如果没有安装的nginx的安装下nginx. 然后我们需要做的就是编辑配置文件。配置文件路径为 /etc/nginx/conf.d/
我们在该目录下创建一个以.conf后缀的文件,然后我们编辑文件的内容vim /etc/nginx/conf.d/nginx_passwd.conf ? server { listen 80; //监听端口为80 server_name www.rsyslog.org; 映射到这台服务器的域名 access_log /usr/local/nginx/logs/www1_status.log; location / { proxy_pass http:192.168.40.66:5601 kibana的默认访问路径 auth_basic "secret"; 虚拟主机认证命名 auth_basic_user_file /usr/local/httpd-tools/nginx_passwd.kibana; 虚拟主机用户名密码认证文件 } } ? 然后我们需要使用工具httpd-tools生成用户和密码。 首先我们需要安装我们的httpd-tools, yum install -y httpd-tools
然后我们进入到我们之前设置密码文件的路径目录。 mkdir /usr/local/httpd-tools/ && cd !$
然后生成我们的密码文件 htpasswd -c -b nginx_passwd.kibana(密码文件名) test(用户名) test(用户密码)
然后我们重启我们的nginx让配置生效。(注意事项:就是在配置密码文件的时候注意一个权限问题,建议直接将密码文件的所有者改为nginx)。 接下来补充以一下我们的htpasswd命令: htpasswd命令:
-c 创建加密文件;
-n 不更新加密文件,只将加密的用户密码显示在屏幕上;
-m 默认采用MD5算法进行加密;
-d 采用 CRYPT 算法对密码进行加密
-p 不对密码进行加密 ,即明文密码;
-s 采用 SHA算法对密码进行加密
-b 在命令行中一并输入用户名和密码而不是根据提示输入密码。
-D 删除指定的用户
创建密码文件并且添加用户,
htpasswd -c -b 文件名 用户名 密码
添加用户不创建文件
htpasswd -b 用户名 密码
删除用户和密码
htpasswd -D 文件名 用户名
修改密码 :
就是删除用户然后创建用户
htpasswd -D 文件名 用户名
htpasswd -b 用户名 密码
以上就是我们的nginx用户认证配置和htpasswd的命令的一些基本讲解。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- http – 访问限制为Heroku静态IP地址的API的好策略是什么?
- python – 为tornadoweb配置失败nginx设置,未知指令“user
- ruby-on-rails – Gem:Module的未定义方法`path_separat
- ruby-on-rails – 使用rails,nginx和send_file在Chrome中流
- Flask gevent – SSE超时使用nginx uwsgi
- nginx – 为真实用户IP自定义AWS ELB的日志条目
- Nginx泛域名解析到子目录
- Nginx在位置查询关键字匹配
- ubuntu – nginx,所有文件应该由www-data拥有吗?
- NGINX代理Zeit Now部署