跳转到主要内容
借助 Ollama、llama.cpp、vLLM 或 LM Studio 在本地运行模型其实很简单。但要让团队成员、自动化程序或其他设备能够安全访问该模型接口,又不致于形成安全漏洞,才是大多数部署过程中容易出错的环节。这份清单按常见风险出现的顺序列出了关键检查项,并说明了部署像 Tokios 这样的仅出站连接器后哪些风险便不再需要人工防范。 这仅是一份检查清单,并非绝对的安全保障。遵循清单内容能降低安全风险,但无法彻底消除隐患;同时也不代表任何部署方案——包括使用 Tokios——就绝对不会出现安全漏洞。

1. 绑定地址:务必仅使用本地回环地址

各类运行环境之所以默认将绑定地址设为 127.0.0.1(仅本地回环地址),正是出于安全考量:这是唯一能确保只有本机才能访问 API 的控制措施。
  • Ollama 默认监听 127.0.0.1:11434 端口。若设置 OLLAMA_HOST=0.0.0.0 参数,则会监听所有网络接口——这样一来局域网内乃至互联网上的其他设备均可访问该接口。
  • llama.cpp server、vLLM 以及 LM Studio 也采用类似机制:默认仅绑定本地回环地址,同时提供相应参数或设置以绑定至 0.0.0.0 或其他局域网接口。
检查项说明:若无特殊需求,切勿将绑定地址设置得超出本地回环范围。若确实需要局域网或远程访问权限,则可参考本清单后续内容或借助仅出站模式的连接器来实现。

2. 身份验证:多数运行环境未提供身份验证机制,或仅提供可选功能

若未启用身份验证机制却将绑定地址设置得超出本地回环范围,那么任何能够访问该端口的设备均可无需任何令牌即可调用 API,包括查看可用模型列表、执行推理操作或下载模型。 注意事项:若有多个人员或服务调用您的端点,仅使用一个静态令牌(甚至不使用任何令牌)将无法区分不同调用者,也无法单独撤销其中某一方的访问权限。关于相关权衡,请参阅为无令牌的本地模型添加 API 密钥。

3. 防火墙与入站端口设置

若您将服务绑定至非本地回环地址,则需通过防火墙进行进一步管控:
  • 尽可能将入站端口(Ollama 使用 11434,llama.cpp 使用 8080,vLLM 使用 8000,LM Studio 使用 1234)限制为仅允许已知源 IP 访问,而非向所有地址开放。
  • 请注意:只有在拥有稳定的公网 IP 的前提下,路由器端口转发才能生效。许多家庭及移动网络均处于 CGNAT 机制之下,根本无法获得公网 IP,详情请参阅如何访问位于 CGNAT 后的模型。
  • 各类互联网扫描工具(如 Shodan、Censys)通常仅需数小时至数天即可索引到新开放的端口服务。一旦端口处于无保护状态,很快就会被发现。
注意事项:即便端口仅为临时转发状态,仍有可能被探测到。只要端口处于开放状态,就应当视作极易被发现。

4. 反向代理实施中的常见误区

利用 Nginx 或 Caddy 对无令牌验证的运行环境进行前置处理,是弥补上述认证缺陷的常见自行解决方案,但实施过程中亦存在诸多需要注意的要点。
  • TLS 终止功能。 代理服务必须配备有效的证书;若使用自签名证书,多数 HTTP 客户端的默认信任校验机制便会失效。
  • 流式响应处理。 大型语言模型 API 通过服务器发送事件机制来流式传输令牌。若反向代理或上游 CDN 对响应内容进行缓存而非即时转发,原本应逐个令牌输出的对话过程便可能陷入停滞,直至整个响应内容全部生成完毕,甚至引发超时现象。
  • 身份验证逻辑位于您的代理配置中,而非模型服务器内。 如今您需要负责确保代理的身份验证规则准确无误、保持同步且经过测试;运行时环境本身仍不具备针对各用户单独管理令牌的功能。
  • 超时问题。 生成内容耗时较长时,可能超出代理服务或边缘网络预设的请求超时阈值,进而导致响应传输中途中断。
检查项:若您部署了反向代理,切勿仅测试响应迅速且内容简短的场景,务必完整验证慢速流式响应流程,方可放心投入生产环境使用。

5. 务必及时为运行时环境安装补丁。

本地推理服务器同样存在常规漏洞生命周期,相关公开漏洞一旦披露即可能遭到恶意利用。以 Ollama 为例,其版本更新记录中便包含多项安全公告;在选用特定漏洞修复版本前,请查阅项目官方 GitHub 安全公告或 NVD 数据库获取最新信息。 检查项:请定期关注运行时环境的版本更新说明与安全公告,切勿因当前版本暂时运行正常便长期不予升级。无论服务器处于本地回环模式还是对外公开状态,此规则均适用;即便网络架构本身并无缺陷,主机遭入侵仍会引发严重后果。

仅支持出站连接的配置会彻底移除列表中的部分条目。

上述所有条目均源于系统必须具备监听入站连接的能力方可被外部访问。仅支持出站连接的连接器——例如 Tokios 连接器——则采用逆向逻辑:该连接器与模型协同运行并主动连接至 https://api.tokios.com,从而确保您的设备或网络环境无需开放任何端口供模型通信使用。 此类配置不仅直接省去部分检查项,其余条目亦保持不变。
  • 无需绑定或转发任何入站端口。 模型始终运行于 127.0.0.1 端;连接器负责主动发起连接,因此无需执行 0.0.0.0 绑定操作,亦无需设置端口转发规则,更无需应对 CGNAT 带来的可达性难题。
  • 模型端口并无防火墙规则。 防火墙无需为该模型执行任何允许或拦截操作。
  • TLS 与路由无需反向代理。 与 https://api.tokios.com 的连接已启用 TLS;您无需运行或维护 nginx 或 Caddy 来实现此功能。
  • 使用具备权限控制功能的 API 令牌而非单一静态密钥。 每个请求均需使用 Tokios 颁发的 sk-tok-… 令牌进行身份验证,该令牌可限定仅适用于特定模型部署(以逗号分隔的匹配规则如 gemma*, gpt-4*),还能单独撤销权限——如此便无需因移除某位成员或服务的访问权而更改所有用户共用的密钥。详情请参阅 为本地模型添加 API 密钥。
  • 不变之处:补丁更新。 Tokios 仅位于运行时前端,并不会修改运行时本身。无论是否使用连接器,您仍需自行确保 Ollama、llama.cpp、vLLM 或 LM Studio 处于最新版本状态。
若请求出现错误,在判定为安全漏洞前请先查阅 故障排查 以确认常见原因——多数连接失败实因配置问题而非安全威胁。

逐步配置为仅允许出站连接的模式

快速入门指南

配置连接器、注册模型并完成首次带身份验证的完整请求流程。

为本地模型添加 API 密钥

为每位团队成员或服务分配专属且可随时撤销权限的令牌。

Ollama 远程访问设置

无需开放入站端口即可从其他设备访问 Ollama 实例。