1 问题
skywalking在高版本去掉了WEB端的权限管理,只能通过其他方式配置后台访问权限。
2 解决
nginx默认提供了【ngx_http_auth_basic_module】模块,该模块可以让用户只有输入正确的账号密码才能访问web。
2.1 生成密码
使用到htpasswd,若未安装,则按以下指令安装
yum -y install httpd #安装httpd
生成密码
htpasswd -cb /etc/nginx/htpasswd skywalking 123456 #生成密码文件,skywalking为用户名,123456为密码
2.2 修改Nginx配置
server{
listen 80;
server_name 域名地址;
location / {
auth_basic "Please input password"; # 提示信息
auth_basic_user_file /etc/nginx/htpasswd; # 存放密码文件的路径
proxy_redirect off;
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Cookie $http_cookie;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_max_temp_file_size 0;
proxy_connect_timeout 480;
proxy_send_timeout 360;
proxy_read_timeout 360;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
client_max_body_size 200m; #上传文件大小限制
}
}
2.3重载Nginx
service nginx reload
3 结果
访问后提示输入用户名及密码
登录
若验证失败,则无法查看
验证失败
网友评论