Komari 探针详尽配置指南:基于宝塔面板的 Nginx 反代与 SSL 教程

302次阅读
没有评论

借用作者的一段话,Komari探针优点:

  • 轻量高效:低资源占用,适合各种规模的服务器。
  • 自托管:完全掌控数据隐私,部署简单。
  • Web 界面:直观的监控仪表盘,易于使用。

这是官方文档Nginx反代配置:

location ^~ / {
    proxy_pass http://127.0.0.1:25774;
    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 REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $http_connection;
    proxy_http_version 1.1;
    proxy_ssl_server_name off;
    proxy_ssl_name $proxy_host;
}

默认80端口,开启SSL则改为443, Komari服务端口25774可自行修改。

基于Nginx1.28.0版本宝塔反代后Nginx配置为:

server
{
    listen 80;
    listen 443 ssl http2;
    listen 443 quic;

    # ↓↓↓ 请将这里的 "dome.com" 修改为您的域名 ↓↓↓
    server_name dome.com;
    # ↓↓↓ 请将这里的 "dome.com" 修改为您的域名对应的网站根目录 ↓↓↓
    root /www/wwwroot/dome.com;

    #CERT-APPLY-CHECK--START
    # ↓↓↓ 请将 "dome.com" 修改为您的域名,确保路径正确 ↓↓↓
    include /www/server/panel/vhost/nginx/well-known/dome.com.conf;
    #CERT-APPLY-CHECK--END

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;  # 宝塔面板要求的必需标记,请勿删除
    #HTTP_TO_HTTPS_START
    set $isRedcert 1;
    if ($server_port != 443) {
        set $isRedcert 2;
    }
    if ( $uri ~ /\.well-known/ ) {
        set $isRedcert 1;
    }
    if ($isRedcert != 1) {
        rewrite ^(/.*)$ https://$host$1 permanent;
    }
    #HTTP_TO_HTTPS_END
    # ↓↓↓ 请将下面两行中的 "dome.com" 修改为您的域名,并确保证书文件存在 ↓↓↓
    ssl_certificate    /www/server/panel/vhost/cert/dome.com/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/dome.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_tickets on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    add_header Alt-Svc 'quic=":443"; h3=":443"; h3-29=":443"; h3-27=":443";h3-25=":443"; h3-T050=":443"; h3-Q050=":443";h3-Q049=":443";h3-Q048=":443"; h3-Q046=":443"; h3-Q043=":443"';
    error_page 497  https://$host$request_uri;
    #SSL-END

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    #error_page 502 /502.html;
    #ERROR-PAGE-END

    #禁止访问的文件或目录 (保留)
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.env|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }

    #一键申请SSL证书验证目录相关设置 (保留)
    location ~ \.well-known{
        allow all;
    }

    #禁止在证书验证目录放入敏感文件 (保留)
    if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {
        return 403;
    }

    # 主反向代理配置
    location / {
        # ↓↓↓ 请将 "ip:25774" 修改为您实际的后端服务地址和端口 ↓↓↓
        proxy_pass http://ip:25774;
        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 REMOTE-HOST $remote_addr;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";
    }

    # ↓↓↓ 请将下面两行中的 "dome.com" 修改为您的域名以区分日志文件 ↓↓↓
    access_log  /www/wwwlogs/dome.com.log;
    error_log  /www/wwwlogs/dome.com.error.log;
}

注意:注释部分需要自行修改,然后保存配置重启Nginx即可。

正文完
 1
评论(没有评论)
验证码