成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

近期Ollama未授權訪問漏洞Nginx反向代理解決方案

發布于 2025-3-7 10:37
瀏覽
0收藏

一、摘要
近期,國家信息安全漏洞共享平臺(CNVD)收錄了Ollama未授權訪問漏洞(CNVD - 2025 - 04094)。在此漏洞下,未經授權的攻擊者能夠遠程訪問Ollama服務接口,進而執行諸如敏感資產獲取、虛假信息投喂、拒絕服務等惡意操作。CNVD已建議受影響的單位和用戶盡快采取措施防范該漏洞攻擊風險。
近期互聯網上都是漏洞相關信息,常見的解決方案如封端口、限制遠程、限制IP訪問等,這些方式缺乏針對性且可操作性不強??紤]到將Ollama服務默認監聽地址從127.0.0.1:11434改為0.0.0.0:11434是有業務需求的,采取“一刀切”的防范方式并不適宜。為了保障Ollama服務的安全性,本文提出使用Nginx作為反向代理,并通過設置認證頭信息的方式防止未授權訪問。
二、解決思路
為有效解決Ollama未授權訪問問題,確保其遠程調用的安全性,本文利用Nginx反向代理并結合認證頭信息進行驗證。在Nginx配置中,代理轉發請求至目標服務的同時,添加專門的認證邏輯。通過驗證請求頭中的認證信息(如Authorization: Bearer YOUR_SECRET_TOKEN),若認證失敗,返回401狀態碼;若認證成功,則將請求正常轉發給目標服務。以下為一個示例請求:

POST /api/generate HTTP/1.1
Host: your_domain_or_ip
Content-Type: application/json
Authorization: Bearer YOUR_SECRET_TOKEN
User-Agent: python-requests/2.26.0
Accept: */*
Connection: keep-alive

三、解決步驟
因作者使用LocalAPI.ai進行遠程調用,為方便調試將相關設置代理到根目錄,若無需此功能,可刪除location / {}代碼塊。具體操作步驟如下:

  1. 安裝Nginx并編輯配置文件
    首先安裝Nginx服務,隨后編輯Nginx配置文件nginx.conf,配置反向代理。以下是配置文件內容:
events {
 worker_connections 1024;
}

http {
 include mime.types;
 default_type application/octet-stream;

 sendfile on;
 keepalive_timeout 65;

 # 禁用緩沖以支持流式響應
 proxy_buffering off;

 # 增大緩沖區設置,避免 502 Bad Gateway
 proxy_buffer_size 256k;
 proxy_buffers 4 256k;
 proxy_busy_buffers_size 512k;

 server {
    listen 80;  # 綁定80端口
    server_name your_domain_or_ip;  # 替換為你的域名或IP地址

    # 由于這里使用LocalAPI.ai進行遠程調用,避免出現跨域問題,同時代理 LocalAPI.ai 到80端口根目錄

    location / {
        if ($request_method = 'OPTIONS') {
            return 204;  # 處理OPTIONS預檢請求
        }

        proxy_pass http://localapi.ai;  # 代理到目標網站
    }

    # 代理 Ollama 服務到 /api/,并進行請求頭認證
    location /api/ {
        proxy_pass http://127.0.0.1:11434/api/;  # 代理目標地址
        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;

        # 驗證請求頭中的認證信息
        set $auth_header $http_authorization;
        if ($auth_header != "Bearer YOUR_SECRET_TOKEN") {  # 替換為你的認證令牌
            add_header 'WWW-Authenticate' 'Bearer realm="Access to the API"';  # 提示客戶端需要認證
            return 401;  # 如果認證失敗,返回 401 Unauthorized
        }

        # 處理 OPTIONS 請求
        if ($request_method = 'OPTIONS') {
            add_header 'Access-Control-Max-Age' 1728000;
            add_header 'Content-Type' 'text/plain charset=UTF-8';
            add_header 'Content-Length' 0;
            return 204;
        }
        
    }
 }
}

  1. 測試配置文件
    在完成配置文件的編輯后,通過命令nginx -t對配置文件進行測試,確保配置正確無誤。
  2. 驗證認證效果
    ?未添加請求頭訪問:在未添加請求頭的情況下直接訪問Ollama服務,將會出現401錯誤頁,表明認證失敗。

近期Ollama未授權訪問漏洞Nginx反向代理解決方案-AI.x社區

?添加認證請求頭訪問:添加正確的認證請求頭后,則可以正常調用Ollama服務。
近期Ollama未授權訪問漏洞Nginx反向代理解決方案-AI.x社區
4. 實現遠程調用聊天功能
配置認證請求頭
近期Ollama未授權訪問漏洞Nginx反向代理解決方案-AI.x社區
成功配置后,即可實現通過遠程調用與Ollama進行聊天。
近期Ollama未授權訪問漏洞Nginx反向代理解決方案-AI.x社區

四、總結
Nginx支持多種認證方式,如基本認證(Basic Authentication)、OAuth2等。本文以認證頭為例,給出了解決Ollama未授權訪問問題的思路以及詳細的實際配置文件。通過Nginx反向代理為Ollama WEB API服務設置認證頭信息,能夠有效防止未授權訪問。
在進行Nginx配置過程中,需要特別注意將配置文件中的YOUR_SECRET_TOKEN替換為一個安全程度較高的字符串,以確保系統的安全性,避免認證令牌泄露帶來的風險 。

標簽
已于2025-3-7 10:37:34修改
收藏
回復
舉報
回復
相關推薦
主站蜘蛛池模板: 最新中文字幕 | 亚洲免费精品 | 国产成人免费在线 | 天天干夜夜操视频 | 国产精品jizz在线观看老狼 | 免费一区 | 国产精品亚洲精品久久 | 久久免费资源 | 国产免费让你躁在线视频 | 91精品国产综合久久久久 | 午夜精品一区二区三区在线视频 | 国产精品一区二区三区四区 | 欧美日韩精品免费观看 | 国产一区欧美 | 亚洲成人精品一区二区 | 国产成人精品免费视频大全最热 | 亚洲区一区二区 | 天天射色综合 | 91精品国产一区二区 | 一级毛片视频 | 羞羞视频一区二区 | 成人激情免费视频 | 日本不卡一区二区三区在线观看 | 91久久精品一区二区三区 | 男人的天堂亚洲 | 国产精品久久久久久高潮 | 国产精品天堂 | 日韩欧美成人一区二区三区 | 国产精品天堂 | 欧美精品在线免费 | 夜夜av| 麻豆精品国产91久久久久久 | 九九热精品视频 | 偷拍自拍第一页 | 看羞羞视频 | 在线观看国产 | 日韩免费1区二区电影 | 天天碰夜夜操 | 黑人巨大精品欧美黑白配亚洲 | 色欧美片视频在线观看 | www.一区二区三区.com |