Nginx反代實現Kibana登陸認證功能

1、場景介紹:
因Kibana 5.5 版後,已不支持認證功能,也就是說,直接打開頁面就能管理,想一想都不安全,不過官方提供了 X-Pack 認證,但有時間限制。畢竟X-Pack是商業版。決定採用nginx作反向代理。nginx

2、實現過程vim

1.安裝 Apache Httpd 密碼生成工具瀏覽器

[root@master ~]# yum install httpd-tools -y安全

2.生成Kibana認證密碼
 
[root@master ~]# mkdir -p /usr/local/src/nginx/
[root@master ~]# htpasswd -c /usr/local/src/nginx/passwd kibanna
New password:
Re-type new password:
Adding password for user kibanna
注意:上面的 /usr/local/src/nginx/passwd 是生成密碼文件的路徑,而後feiyu 是用戶名,你能夠根據須要自行設置成其它用戶名。運行命令後,會要求你連續輸入兩次密碼。輸入成功後,會提示已經爲feiyu這個用戶添加了密碼。ide

3.查看下生成的密碼文件的內容:
[root@master ~]# cat /usr/local/src/nginx/passwd
kibanna:$apr1$bj22mciQ$4Rq6U1EnZPyxmDj5X8v1d/
其中用戶名就是kibanna,分號後面就是密碼(已經加過密)。工具

4.配置Nginx反向代理代理

在Nginx配置文件中添加以下內容:rest

[root@master ~]# vim /usr/local/nginx/conf/nginx.conf
Nginx反代實現Kibana登陸認證功能
server {
listen 80;
auth_basic "Restricted Access";
auth_basic_user_file /usr/local/nginx/conf/passwd/kibana.passwd;
location / {
proxy_pass 10.10.17.41:5601;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
配置Kibanaserver

取消下面註釋:blog

[root@master ~]# vim /usr/local/kibana/config/kibana.yml

server.host: "10.10.17.41"
重啓 Kibana 及 Nginx 服務使配置生效

$ systemctl restart kibana
$ systemctl restart nginx

接下來瀏覽器訪問 http://IP 會提示驗證彈窗,輸入以上生成的用戶密碼登陸便可。

相關文章
相關標籤/搜索