You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx Proxy Manager运行但未拦截流量、无法申请SSL证书故障

问题根因

所有异常的核心诱因是公网80/443端口流量未被Nginx Proxy Manager(以下简称NPM)接管,直接打到了Bitwarden服务上,各异常表现的对应逻辑完全吻合:

  • 转发端口填任意随机值都能打开Bitwarden,说明你配置的NPM代理规则根本没有执行,流量完全没经过NPM的转发逻辑
  • 申请SSL证书时提示域名指向的服务不是NPM,是因为Let's Encrypt的HTTP-01验证请求到80端口后,被Bitwarden直接响应,自然匹配不到NPM的验证文件
  • 仪表盘代理主机计数显示0但列表可见规则,是NPM核心转发进程因端口冲突未正常加载规则导致的衍生问题
分步修复配置

1. 排查端口占用,修正端口映射

先在树莓派终端执行命令,确认80、443端口的实际占用进程:

sudo ss -tulpn | grep -E ':(80|443)\s'

正常情况下这两个端口应该由NPM进程监听,你当前的状态大概率是Bitwarden(或其内置Nginx组件)直接绑定了宿主机的80/443端口,导致NPM的端口映射失效,按以下步骤修正:

  • 停掉Bitwarden服务,修改Bitwarden/Vaultwarden的配置,将其对外监听端口改为非80/443的内网端口(比如8080、8443),确保Bitwarden不再占用公网标准端口
  • 检查NPM的启动配置(绝大多数树莓派部署场景为Docker/Docker Compose部署),确认端口映射规则为80:80、443:443、81:81,不要将容器端口映射到宿主机的其他非标准端口上
  • 重启NPM服务后再次执行端口检查命令,确认80、443端口已由NPM进程接管。本地执行curl http://127.0.0.1如果返回NPM默认404页面,即可确认端口接管正常。
  • 检查路由器端口转发规则,确保公网80、443端口的流量直接转发到树莓派内网IP的80、443端口,不要转发到Bitwarden的服务端口,也不要配置DMZ主机直接指向Bitwarden服务。

2. 清理失效规则,重新创建代理主机

  • 进入NPM后台,删除之前创建的所有无效代理主机、失败的SSL证书申请记录
  • 确认DuckDNS域名解析的公网IP和当前家庭宽带的公网IP一致
  • 新建代理主机:
    • Domain Names 填写mything.duckdns.org
    • Forward IP 填写树莓派内网IP,Forward Port 填写之前修改后的Bitwarden内网监听端口(比如配置的8080就填8080)
    • 暂时不要开启自定义Nginx配置、强制SSL等选项,先保存规则

3. 验证流量接管后申请SSL证书

  • 先通过HTTP访问http://mything.duckdns.org,测试时可以故意把转发端口改成一个不存在的端口,如果访问返回NPM的502错误页,说明流量已经被NPM正常接管;如果改了随机端口仍然能打开Bitwarden,回到第一步重新排查端口占用
  • 确认流量接管正常后,编辑对应代理主机,切换到SSL标签页,选择「Request a new SSL Certificate」,勾选同意Let's Encrypt服务条款后提交申请即可,证书申请成功后再开启强制HTTPS选项。

4. 修复仪表盘计数异常

如果完成前三步操作后,代理转发、SSL证书都正常工作,但仪表盘仍然显示0 Proxy Hosts,直接重启NPM服务即可:

# Docker部署场景执行,容器名按实际部署的名称修改
docker restart npm

重启后等待1分钟刷新后台,计数即可恢复正常。

内容的提问来源于stack exchange,提问作者chadat23

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.02 06:54:26