AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1047443
Accepted
vespino
vespino
Asked: 2020-12-25 03:39:13 +0800 CST2020-12-25 03:39:13 +0800 CST 2020-12-25 03:39:13 +0800 CST

nginx代理转发443

  • 772

我在端口 80 上运行了一个反向代理,作为“网关”来更新我网络内虚拟机上的 Let's Encrypt 证书。由于这个原因,这个反向代理每周只在端口 80 上暴露 5 分钟。我有许多域通过此服务器被转发到它们的内部 IP 地址。这一切都很好,但是有一台服务器在端口 443 上暴露在互联网上。当我使用 https 向正确的域名发出请求时,一切都很好。当我使用其他域之一时,我当然会收到无效证书错误。这就是为什么我正在考虑通过反向代理路由端口 443 流量,这样我就能够阻止流量不针对暴露并在 443 上运行的一个域。然而,Nginx 需要一个我不能给它的有效证书因为它'

我在端口 443 上运行的服务器是 Kerio Mailserver。也许我可以在那里做一些事情来强制只使用一个域名?

有没有办法处理这个?以防万一您想知道:其他服务器不需要公开。

nginx reverse-proxy kerio
  • 2 2 个回答
  • 728 Views

2 个回答

  • Voted
  1. Piotr P. Karwasz
    2020-12-26T01:38:00+08:002020-12-26T01:38:00+08:00

    我看不出为什么不能通过 NGINX 代理 HTTP 和 HTTPS 流量。这样你就可以:

    • 保留和更新 NGINX 主机上的所有证书,
    • 通过 HTTP 代理对 VM 的请求。如果我理解正确,它们都在同一个物理主机上,所以明文流量只能通过虚拟网络接口,
    • 保持 NGINX 上的 HTTP 端口始终打开,并使用它来更新证书和(HTTP)将普通流量重定向到 HTTPS 端口。

    编辑:如果您还想加密 NGINX 和虚拟机之间的流量,或者正如您在评论中所说的那样,您不想使用 NGINX 进行来自本地网络的连接,您可以将本地证书颁发机构用于内部服务器.

    从您的角度来看,它更安全,因为本地 CA 比外部权威更值得信赖。您只需将其添加到本地网络中的所有计算机,即可颁发长期证书,而无需每 60 天更新一次。

    • 1
  2. Best Answer
    vespino
    2020-12-26T17:47:21+08:002020-12-26T17:47:21+08:00

    我将其修复如下:我首先在我的 Kerio VM 上安装了 nginx,并配置了一个反向代理路由端口 443 到 444(Kerio 现在所在的位置)。接下来,我在 VM 上创建了一个通配符 SSL 证书,该证书用于 2 个主机,1 个用于 webmail 和整个 Kerio,1 个用于重定向指向我的公共 IP 的所有其他域名而不会出现证书错误。

    现在我要弄清楚的是如何真正解决 504 网关超时问题,而不是仅仅添加一个巨大的超时限制。并希望 certbot 确实可以毫无问题地使用 DNS 挑战进行更新。

    现在该睡觉了。

    • 0

相关问题

  • Gzip 与反向代理缓存

  • nginx 作为代理的行为

  • Nginx 学习资源 [关闭]

  • 提供 70,000 个静态文件 (jpg) 的最佳方式?

  • 在 Apache、LightTPD 和 Nginx Web 服务器上提供 PHP 5.x 应用程序的现状?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve