我有一个网站,该网站部署了三个真实的 Web 服务器和一个带有虚拟 IP 的负载均衡器。我已经从 CA 申请了 SSL 证书,并使用以下命令使用 OpenSSL 将其导入 Tomcat:
openssl pkcs12 -export -in mycert.crt -inkey mykey.key \
-out mycert.p12 -name tomcat -CAfile myCA.crt \
-caname root -chain
上述命令在所有 Web 服务器上执行。我还编辑了 Tomcat conf/ 目录下的 server.xml 文件。
<Connector
port="8443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="/etc/ssl/myCA.crt" keystorePass="changeit"
clientAuth="false" sslProtocol="TLS"/>
理想情况下,当单击“登录”按钮时,它应该使用 https 方案而不会出现任何警告/错误。
现在,如果我访问每个 Web 服务器 http://real.webserver01.com:8080 并点击“登录”,一切顺利,没有任何警告/错误。但是,如果我转到我的虚拟 IP http://[我的我尝试在“Internet 管理”页面中添加“虚拟IP地址”并单击“登录”时,它仍然显示“不受信任的连接”页面,要求我手动信任该连接。
有什么问题吗?我是否遗漏了什么?
答案1
浏览器会将您在地址栏中输入的内容与证书进行比较。证书包含您网站的完整域名。浏览器会将 IP 地址与此进行比较,由于比较失败,因此会显示警告。
如果您获取银行网站之类的 IP,并使用该 IP 地址直接访问,则在大多数浏览器中,您都会收到相同的消息。
尝试使用完整域名从外部位置访问该网站,看看是否仍然收到该消息。