在服务器b.example.com上配置Apache,以允许在没有警告的情况下从example.com请求b.examp



我有服务器A,它托管着我们在www.example.com上的主站点;我们有一个涵盖*.example.com.的SSL证书

在我们网站的安全部分,我们希望向我们编写并托管在单独机器/IP服务器B上的web服务提出请求。该web服务已分配给sub.example.com,因此我们的SSL证书涵盖了这一点。

在服务器B上配置Apache时,我们需要做些什么?据我所知,除了443上的虚拟部分监听之外,我们还需要配置:

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key

我想我的问题是——我们必须在这里使用来自服务器A的证书和密钥吗?或者我们可以创建一个自签名的,也许在创建证书时指定sub.example.com?

我应该补充一点,这样做的目的是当访问者在服务器A上进入example.com的安全部分时,避免浏览器安全警告等。…

非常感谢!

为了避免警告,从使用https:// URL获得的页面发出的所有请求也应该使用HTTPS。

两台服务器都应该配置对它们要服务的主机名有效的证书。

如果你的web服务(在服务器B上)没有被服务器A的用户直接使用,也就是说,如果浏览器与服务器A对话,那么服务器A在后台与服务器B对话(实际上服务器A是那里的客户端),但浏览器从未向服务器B提出任何请求,你可以在服务器B使用自签名证书,而不会有任何问题,前提是您将运行在服务器A上的应用程序配置为信任该证书(这完全取决于该应用程序的实现方式)。

如果用户的浏览器希望同时连接到服务器A和服务器B(可能通过XHR或加载额外的内容,如图像或脚本),则应确保这两个服务器都使用浏览器信任的证书。在这种情况下,您必须在两个证书上都使用通配符证书+私钥(或者至少在每个证书上使用证书+私钥)。

相关内容

最新更新