前後端都用得上的 Nginx 日常使用經驗-補充篇

之前分享了 前後端都用得上的 Nginx 日常使用經驗 ,在配置 elk 的時候增加了nginx basic auth 和 IP百名的配置,作爲補充分享。

配置 nginx 域名轉發

常規的轉發配置,不需要https部分去掉即可,一般只需要修改域名和轉發地址

server {

    listen 80;
    listen       443 ssl;
    server_name kibana.devops.test.com;  # 自行修改成你的域名

    ssl_certificate      /certs/kibana.devops.test.com/server.crt;
    ssl_certificate_key  /certs/kibana.devops.test.com/server.key;
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

    location / {
            proxy_pass http://192.168.123.102:5601;
            proxy_http_version 1.1;
            proxy_buffering off;
            proxy_request_buffering off;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
    }
}

配置 nginx 基本認證

用於對未提供賬號密碼登錄的服務添加一個前置基本驗證 Basic Auth,在Nginx配置文件中添加以下內容指定密碼文件

location / {
    auth_basic "Restricted Content";
    # htpasswd 密碼文件
    auth_basic_user_file /certs/kibana.devops.test.com/passwd;
}

添加對應的 passwd 文件,使用 htpasswd 生成,如賬號密碼是 root devops666 的配置文件,多個賬號換行添加即可

root:WvesKBTr22.wY

可以使用我 metools 工具的 密碼生成器 生成

配置完成,重載配置後刷新頁面就提示輸入賬號密碼了

配置 nginx IP白名單

如下所示,能夠只允許 192.168.123.201及10.0.0.0/24網段的IP訪問此路徑

location / {
    allow 192.168.123.201;   # 允許的IP地址
    allow 10.0.0.0/24; # 允許10.0.0.0/24網段的IP地址
    deny all;              # 拒絕所有其他IP地址
}

最後

修改了配置文件記得重載配置文件: nginx -s reload

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章