elk-Kibana設置登錄認證-通過nginx轉發(六)
阿新 • • 發佈:2018-08-28
嘗試 密碼 技術分享 table 增加 pac clas nodejs開發 bsp
一、kibana的登錄認證問題
kibana是nodejs開發的,本身並沒有任何安全限制,直接瀏覽url就能訪問,如果公網環境非常不安全,可以通過nginx請求轉發增加認證,方法如下:
tips:kibana沒有重啟命令,要重啟,只能ps -ef|grep node 查找nodejs進程,幹掉重來。
server { listen 80; server_name elk.yjmyzz.com; location / { auth_basic "secret"; auth_basic_user_file /data/nginx/db/passwd.db; proxy_pass http://localhost:5601; proxy_set_header Host $host:5601; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Via "nginx"; } access_log off; }
上面的配置表示將elk.yjmyzz.com的請求,轉發到服務器的5601端口,同時使用最基本的用戶名、密碼來認證。
二、配置登錄用戶名,密碼
htpasswd -c /data/nginx/db/passwd.db user1 #htpasswd是apache自帶的小工具,如果找不到該命令,嘗試用yum install httpd安裝
註意passwd.db的路徑要跟nginx配置中的一致,最後的user1為用戶名,可以隨便改,輸入完該命令後,系統會提示輸入密碼,搞定後passwd.db中就有加密後的密碼了,有興趣的可以cat看下。
註意: 這個路徑 auth_basic_user_file /data/nginx/db/passwd.db;
三、關掉kibana端口的外網訪問
用nginx轉發後,一定要記得配置iptables之類的防火墻,禁止外部直接訪問5601端口,這樣就只能通過nginx來訪問了。
elk-Kibana設置登錄認證-通過nginx轉發(六)