在没有 ssl 的情况下运行代理应用程序的安全问题?

Posted

技术标签:

【中文标题】在没有 ssl 的情况下运行代理应用程序的安全问题?【英文标题】:security issues running a proxied app without ssl? 【发布时间】:2021-09-10 14:13:58 【问题描述】:

我有一个使用 express 创建的 nodejs 应用程序,用于在我的网站上提供页面。然后应用程序由 apache 代理,以便使用 url

https://mycooldomain.com/folder 

我有我的节点 js 应用程序。

在 Apache 我有

ProxyPreserveHost On
SSLProxyEngine On
ProxyPass /folder http://mycooldomain.com:4242
ProxyPassReverse /folder http://mycooldomain.com:4242

Node 和 Apache 目前在同一台机器上,所以我希望在这方面使用 http 不是问题。 与最终用户打交道时是否需要担心? mycooldomain.com 已通过 ssl 得到适当保护,但我不想使用此 http 代理创建安全漏洞。

【问题讨论】:

【参考方案1】:

我认为虽然 只有 Apache 服务器可以访问您的 Express 应用程序,但没关系。 HTTPS 协议保护客户端和服务器之间传输的数据,您已经拥有它。恕我直言,除非有人可以访问您的服务器,否则您的 Apache 服务器和您的 Express 应用程序之间的通信是不可见的。

但是当人们可以直接访问您的 Express 应用程序而无需通过您的 Apache 时,就会出现问题。如果还没有出现这种情况,您可能需要添加防火墙规则来阻止它。

【讨论】:

4242 端口从外部关闭,所以这不是问题。所以你是在告诉我来自 express 的未加密流量总是由 apache 加密?没有人可以利用此 http 到 https 转换的选项?

以上是关于在没有 ssl 的情况下运行代理应用程序的安全问题?的主要内容,如果未能解决你的问题,请参考以下文章

无法创建 SSL/TLS 安全通道 - 问题可能出在代理服务器上吗?

是否可以在没有负载均衡器的情况下使用带有 SSL (HTTPS) 的 Amazon Elastic Beanstalk?

SSL 代理/Charles 和 Android 问题 [关闭]

SSL 代理/Charles 和 Android 问题 [关闭]

Nginx:15---反向代理之(安全隔离:SSL流量加密SSL客户端身份验证基于原始IP地址阻止流量)

如何在没有可信 SSL 证书的情况下在 Intranet 中运行 PWA?