是否可以在使用haproxy检查SSL之前重定向https连接?


11

我有两个域,myexample.commy-example.com。我希望任何一个域的所有流量都转到https://www.my-example.com,该站点具有SSL证书。我没有域名myexample.com的SSL证书。

我有http://myexample.comhttp://www.myexample.comhttp://my-example.comhttp://www.my-example.com所有重定向到https://开头WWW。 my-example.com没问题,但是,当我为https://myexample.comhttps://www.myexample.com设置重定向时,它会在重定向之前检查其SSL证书,因此我总是会获得证书错误。

有没有一种方法可以进行重定向,而无需对我要重定向的非SSL域进行SSL检查?

我的配置文件的相关部分:

frontend www-https
   bind xxx.xxx.xxx.xxx:443 ssl crt /etc/ssl/private/www.my-example.com.pem
   reqadd X-Forwarded-Proto:\ https
   redirect prefix https://www.my-example.com code 301 if { hdr(host) -i myexample.com }
   redirect prefix https://www.my-example.com code 301 if { hdr(host) -i www.myexample.com }
   default_backend www-backend

16
想象一下,将MITM https://www.paypal.com/重定向到片刻有多糟糕https://www.not-paypal.com/,您将得到答案。这些天SSL证书是免费的-为您的其他域获得一个。
ceejayoz

就像提到的@ceejayoz一样,只需获取其他域的免费证书即可。
Moshe Katz

我现在已经做完了,我只是想知道是否有必要,或者是否有一种方法可以像我对non-ssl一样进行配置,然后再尝试找出如何在haproxy配置中拥有多个证书(我m远非专家!)。
本·霍尔尼斯

@BenHolness如果愿意,您可以获取多域证书(Let's Encrypt完全支持此证书)。
ceejayoz's

Answers:


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.