
现在有一个客户端,通过 https 443 端口访问服务器 A ,这个过程数据是加密的,然后服务器 A 通过 nginx 的 http 反代到服务器 B 的 8080 端口(proxy_pass http://serverB:8080;),这个过程的数据是不是没有加密?
也就是说如果对服务器 A 与客户端之间的 https 其实并没有起到太大作用?
1 yaott2020 2022-10-31 17:41:23 +08:00 via Android ???? |
2 yaott2020 2022-10-31 17:42:05 +08:00 via Android 第一个问题:是 http 明文的 第二个问题:你是怎么得出这样的结论的 |
3 sheeta 2022-10-31 17:47:19 +08:00 A 到 B 的网络如果你觉得是可信的,那就是安全的 |
4 EyebrowsWhite OP @yaott2020 如果是明文的,那么即便对进入服务器的数据抓的包无法解密,但是只需要对服务端的出口抓包就可以看到明文的 |
5 EyebrowsWhite OP @sheeta 那通常也就意味着 A 和 B 要在同一内网吧,否则感觉都不可信 |
6 linauror 2022-10-31 17:52:00 +08:00 一般都用到反代了,基本都是内部服务了 |
7 superrichman 2022-10-31 17:54:52 +08:00 两个服务都不在一个内网了,还走同一个 nginx ?这不是 nginx 的一般使用场景 |
8 yaott2020 2022-10-31 17:54:55 +08:00 via Android 明文反代一般是在主机内部,或者是在可信的局域网内,跨公网的明文肯定是暴露的,一般不会这么用。 |
9 EyebrowsWhite OP @yaott2020 那如果跨公网的话反代走 https 靠谱吗,我看 nginx 也是支持的 |
10 EyebrowsWhite OP @superrichman 确实不是常规的场景,顺便想请问下这种跨公网的反向代理还有什么好的工具吗 |
11 eason1874 2022-10-31 18:01:11 +08:00 客户端 HTTPS 到 A 是加密的 A HTTP 到 B 是明文,一般 A 和 B 在内网才用 HTTP 明文,在公网用 HTTPS |
12 EyebrowsWhite OP 稍微改一下问题,A 代理到 B 用 TCP 代理(nginx stream )和 https 代理哪个安全些呢,服务是只是 web 服务 |
13 ysc3839 2022-10-31 18:13:34 +08:00 @EyebrowsWhite 先说你的需求,为什么要反代?是要做负载均衡吗? |
14 leonshaw 2022-10-31 18:17:46 +08:00 什么场景? A 和 B 用同一个证书? |
15 EyebrowsWhite OP |
16 ysc3839 2022-10-31 21:29:34 +08:00 via Android @EyebrowsWhite 那你还是得用另一台服务器中转呀,既然有另一台服务器了,何必用自己家的设备 |
18 herozzm 2022-10-31 21:41:30 +08:00 A -> B http 则是明文,如果是 https 则反之 如果 A -> B 是内网就不存在安全问题 |
19 EyebrowsWhite OP @ysc3839 我主要就是不想把一些数据放在云上,有点强迫症 |
20 yaott2020 2022-10-31 22:15:06 +08:00 via Android 所以你的需求是暴露内网服务是吗,直接上 frp 就行 |
21 ik 2022-10-31 22:22:41 +08:00 via iPhone 这个需求 vpn 组网就行了。vpn 来实现流量加密。 看你的描述家宽应该不带公网 ip 吧? 那你又怎么能实现直接通过 nginx 反代源站呢? |
22 EyebrowsWhite OP |
23 ab 2022-11-01 07:28:23 +08:00 via iPhone 推荐用 stream 转发 |
24 runwu2022 2022-11-01 09:27:17 +08:00 cdn 加速比较适合你的场景 |
25 EyebrowsWhite OP @ab 想问下 stream 转发和 https 转发哪个更安全些呢 |
26 EyebrowsWhite OP @runwu2022 额,没必要的吧,转发一下速度也够用 |