elk系统通过nginx添加对kibana的登录认证
elk系统添加对kibana的登录认证
1、参考以下内容,修改配置文件:
mkdir -p /data/nginx/db/
vim /etc/nginx/conf.d/elk.conf
server {
listen 80;
server_name elk.chinasoft.com 192.168.3.17;
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;
}
检查nginx语法报错:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
解决办法:
vim /etc/nginx/conf.d/default.conf
将
listen 80 default_server;
listen [::]:80 default_server;
改为:
listen 80;
#listen [::]:80 default_server;
上面的配置表示将elk.chinasoft.com的请求,转发到服务器的5601端口,同时使用最基本的用户名、密码来认证。
2、配置登录用户名,密码
htpasswd -c /data/nginx/db/passwd.db elkadmin
注意passwd.db的路径要跟nginx配置中的一致,最后的elkadmin为用户名,可以随便改,输入完该命令后,系统会提示输入密码,完成后passwd.db中就有加密后的密码了,有兴趣的可以cat看下。
提示:htpasswd是apache自带的小工具,如果找不到该命令,尝试用yum install httpd安装
安装以后建议修改vim /etc/httpd/conf/httpd.conf 监听其他非80端口
也可以通过其他nginx的代理访问,如下:
elk.conf
server {
server_name elk.chinasoft.com
access_log /data/logs/elk_access.log;
error_log /data/logs/elk_error.log info;
location / {
auth_basic "secret";
auth_basic_user_file /data/nginx/db/passwd.db;
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_pass http://flows_admin;
proxy_pass http://u04elk.yaya.corp:5601;
}
关于elk系统的安装配置可以参考:Centos6.5安装Logstash ELK stack 日志管理系统及使用详解
http://blog.csdn.net/reblue520/article/details/52799274
1、参考以下内容,修改配置文件:
mkdir -p /data/nginx/db/
vim /etc/nginx/conf.d/elk.conf
server {
listen 80;
server_name elk.chinasoft.com 192.168.3.17;
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;
}
检查nginx语法报错:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] socket() [::]:80 failed (97: Address family not supported by protocol)
解决办法:
vim /etc/nginx/conf.d/default.conf
将
listen 80 default_server;
listen [::]:80 default_server;
改为:
listen 80;
#listen [::]:80 default_server;
上面的配置表示将elk.chinasoft.com的请求,转发到服务器的5601端口,同时使用最基本的用户名、密码来认证。
2、配置登录用户名,密码
htpasswd -c /data/nginx/db/passwd.db elkadmin
注意passwd.db的路径要跟nginx配置中的一致,最后的elkadmin为用户名,可以随便改,输入完该命令后,系统会提示输入密码,完成后passwd.db中就有加密后的密码了,有兴趣的可以cat看下。
提示:htpasswd是apache自带的小工具,如果找不到该命令,尝试用yum install httpd安装
安装以后建议修改vim /etc/httpd/conf/httpd.conf 监听其他非80端口
也可以通过其他nginx的代理访问,如下:
elk.conf
server {
server_name elk.chinasoft.com
access_log /data/logs/elk_access.log;
error_log /data/logs/elk_error.log info;
location / {
auth_basic "secret";
auth_basic_user_file /data/nginx/db/passwd.db;
proxy_set_header Host $host;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
#proxy_pass http://flows_admin;
proxy_pass http://u04elk.yaya.corp:5601;
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律