阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

nginx用户认证与htpasswd命令

138次阅读
没有评论

共计 1200 个字符,预计需要花费 3 分钟才能阅读完成。

最近在搭建 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.linuxidc.com; // 映射到这台服务器的域名
  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 的命令的一些基本讲解。

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1200字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中