Apache HTTP Server反向代理是否发送SNI?

时间:2019-12-11 00:37:11

标签: apache reverse-proxy sni

我想将Apache HTTP服务器用作反向代理,用于OpenShift或Kubernetes中托管的一组微服务。 我想在Kubernetes路由上使用TLS直通。也就是说,需要在Apache(出站)创建TLS连接,并在Pod处终止。 为此,OpenShift需要在不解密有效负载的情况下识别目标主机,以便它可以将每个请求转发到正确的微服务。 TLS中的服务器名称指示(SNI)将具有主机名。 我尝试使用基于Apache的IBM HTTP Server(IHS)。但是,IBM HTTP Server不在出站TLS连接中发送SNI信息。 (由IBM HTTP Server和OpenShift之间的mod代理启动的连接)。 OpenShift引发错误。该文档提到IHS在出站端不支持SNI,即使在最新版本中也是如此。 我试图找出最新的Apache HTTP服务器在配置为反向代理时是否可以在出站上发送SNI信息。我找不到任何明显提及此问题的文档。 谢谢

1 个答案:

答案 0 :(得分:0)

我将Apache配置为SSL反向代理,它对于SNI部分似乎正常工作。尽管没有像您提到的那样清楚地记录在案。

我正在跑步:

# /usr/local/httpd-2.4.29.tuned/bin/httpd -v
Server version: Apache/2.4.29 (Unix)
Server built:   Dec 24 2017 19:19:13
# openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017

在转发到www.stackoverflow.com时,这是我的联系人

SSLEngine on
SSLProxyEngine on
SSLProxyCheckPeerCN Off
SSLSessionTickets on
SSLProxyVerify none
ProxyPreserveHost Off

<IfModule proxy_module>
  ProxyPass             /     https://www.stackoverflow.com/
  ProxyPassReverse      /     https://www.stackoverflow.com/
</IfModule>

这是一些tcpdump,您可以在2个字符之间看到SNI。

20:27:06.506832 IP XXX.YYY.ZZZ.XXX.14685 > 8.8.8.8.53: 45945+ A? www.stackoverflow.com. (39)
stackoverflow.com......5./...y...........www
20:27:06.520988 IP 8.8.8.8.53 > XXX.YYY.ZZZ.XXX.14685: 45945 5/0/0 CNAME stackoverflow.com., A 151.101.1.69, A 151.101.65.69, A 151.101.129.69, A 151.101.193.69 (117)
stackoverflow.com.............._.................e.E.............eAE.............e.E.............e.E
20:27:06.521566 IP XXX.YYY.ZZZ.XXX.56781 > 151.101.1.69.443: Flags [S], seq 2876049156, win 14600, options [mss 1460,sackOK,TS val 941503620 ecr 0,nop,wscale 7], length 0
E..<3.@.@.u../?q.e.E.....m........9..y.........
8.4.........
20:27:06.535770 IP 151.101.1.69.443 > XXX.YYY.ZZZ.XXX.56781: Flags [S.], seq 3281327361, ack 2876049157, win 28960, options [mss 1460,sackOK,TS val 967826870 ecr 941503620,nop,wscale 9], length 0
E..<..@.<..q.e.E./?q.........m....q V..........
9...8.4....
20:27:06.535846 IP XXX.YYY.ZZZ.XXX.56781 > 151.101.1.69.443: Flags [.], ack 1, win 115, options [nop,nop,TS val 941503635 ecr 967826870], length 0
E..43.@.@.u../?q.e.E.....m.........s.q.....
8.4.9...
20:27:06.536252 IP XXX.YYY.ZZZ.XXX.56781 > 151.101.1.69.443: Flags [P.], seq 1:518, ack 1, win 115, options [nop,nop,TS val 941503635 ecr 967826870], length 517
E..93.@.@.s../?q.e.E.....m.........s.v.....
8.4.9................2.X.OQ.W..[. ...x...48.g....Z.....0.,.(.$...
.........k.j.i.h.9.8.7.6.........2...*.&.......=.5.../.+.'.#... .........g.@.?.>.3.2.1.0.E.D.C.B.1.-.).%.......<./.A.................E.........**www.stackoverflow.com**.........

祝你好运