可视化服务的权限控制设计,kibana权限控制,nginx open permission错误

今天接到上级指示,对外开放的端口的可视化服务全部都要做权限控制,虽然这些端口在阿里云已经设置白名单,但是这样安全系数还是不完善,所以考虑在所有可视化服务商拦截一层,设计如下:

主服务机器:核心业务跑上面

可视化机器:kibana,rabbit可视化,grafana等等可视化服务...

---

在主服务器上部署nginx docker,利用nginx auth模块做登录权限认证.

比如主服务器15601端口认证成功,那么就转发到内网的一台机器的5601端口

---

1. docker pull nginx

2. 设置nginx配置文件,用于挂载共享目录

server {
        listen       15601;
        server_name  localhost;
        access_log  /var/log/nginx/access.log  main;
        location / {
            # 权限的描述
            auth_basic "Auth";
            # 指定认证文件
            auth_basic_user_file /root/elk_passwd;
            root   html;
            index  index.html index.htm;
            # 代理的访问地址是Kibana的地址
            proxy_pass http://192.168.201.16:5601;

            # 只允许公司的外网IP + 局域网IP可以访问 这些如果在阿里安全组配置就不用配置了
            # allow   111.**.**.***;
            # allow   192.1.1.0/255;
            # deny    all;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
}

3.创建认证文件的账号密码

htpasswd -c -d /root/elk_passwd elk

4.启动docker

docker run -itd --name nginx_acl \
-p 15601:15601 \
-p 15602:15602 \
-p 15672:15672 \
-v /root/docker/acl:/etc/nginx/conf.d \
nginx

注意事项:

(1) nginx报错 open permission 错误,如果你对认证文件设置chmod解决不了,那么请修改nginx.conf,启动用户设置为root

(2) /var/log/nginx/access.log 这个文件要提前创建不然nginx启动会报错,最好能根据自己的需求重新commit镜像

效果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值