假设我在端口 6000 上托管类似 netdata 仪表板的东西。
然后我通过 nginx 反向代理将其转发到子域 netdata.domain.com
而在 nginx.conf 中应用基本身份验证可以实现站点范围的保护。
我的问题是,由于我与 netdata.domain.com 的连接是 http 而不是 https,所以我的数据未加密。那么,在此连接下登录 nginx basic auth 是否会暴露密码以进行 MITM 攻击?
但是如果我在真实 IP 之间添加 cloudflare,就会增加一层代理,这实际上会增加很多难度,对吗?
我不知道我的担心是否有道理。
答案1
我的问题是,由于我与 netdata.domain.com 的连接是 http 而不是 https,所以我的数据未加密。那么,在此连接下登录 nginx basic auth 是否会暴露密码以进行 MITM 攻击?
正确。它完全以明文形式发送,路径上的任何人都可以轻松阅读它。
但是如果我在真实 IP 之间添加 cloudflare,就会增加一层代理,这实际上会增加很多难度,对吗?
如果您将 CF 配置为需要 TLS,则客户端和 CF 之间的连接将被加密。CF 和服务器之间的连接则不会加密。
现在是 2021 年。证书是免费的,并且可以在所有平台上轻松实现自动化。不要在 2021 年通过 HTTP 部署身份验证。请在 Web 服务器上使用 TLS 以正确的方式对其进行配置。