我对SSL证书这个话题很陌生,我想安装我购买的SSL,这样当用户进入我的站点时,他们将不会看到不受信任的证书,这里是我迄今为止所做的步骤
keytool
。
我将所有文件(包括我生成的文件)放置在资源目录中,并添加了以下属性
server.ssl.key-store:classpath:myFile.p12
server.ssl.key-store-password:some_pass
server.ssl.keyStoreType:PKCS12
server.ssl.keyAlias:someAlias后来我运行了以下命令: keytool试图将我从ssl供应商获得的文件导入到我创建的文件( -importcert )中。
而不是我创建了我的jar并将其上传到关键的云铸造厂,但是我仍然看到了无效的证书消息。
我不知道是否需要在关键平台上做些什么,或者在spring启动配置上做些什么。
发布于 2020-06-25 14:32:32
唯一可行的方法是使用TCP路由。使用Cloud上的标准HTTP路由,流量首先会达到负载均衡器&然后是Gorouter。TLS终止将发生在那里,而不是在您的申请。如果使用TCP路由,这将在TCP级别加载平衡,并允许应用程序直接执行TLS终止。
尽管如此,你真的不想那样做。TCP路由不可能允许您选择端口443,因为一个端口只能分配给一个应用程序。这意味着只有一个使用TCP路由的应用程序可以拥有端口443。在大多数情况下,平台运营商只允许TCP路由的高编号端口,这意味着没有人能够选择443。长话短说,您不希望用户以https://www.example.com:47385的身份访问您的站点,所以您不希望使用TCP路由。
要正确设置标准HTTP路由,您需要与平台操作团队一起工作。您一起需要执行以下操作:
。
当您完成所有这些工作时,您域的通信量将解析为负载平衡器的IP。您的用户浏览器将向LB发出HTTPS请求,该请求将终止TLS (如果是HTTP/layer-7 LB),并转发到Gorouter (如果存在TCP/layer-4 LB,则TLS将在这里终止),后者将转发到您的应用程序(基于您映射的路由)。
您的应用程序需要查看x-forwarded-for和x-forwarded-proto头,以确认请求是否来自HTTPS,因为它没有直接终止TLS。
1-含义是如何安装证书。使用单独的LB,您可以将证书添加到其中并完成。如果您试图重用平台LB,则需要将证书添加到现有的证书列表中。此外,如果您的平台操作团队正在使用TCP/layer-4负载均衡器,那么TLS终止不会发生在LB,而是发生在Gorouter。这意味着您必须将您的TLS证书加载到Gorouter中,这需要Bosh部署,而且是更多的工作。修改平台LB也有错误破坏基础的风险。出于这些原因和更多原因,为应用程序添加一个单独的LB通常是可行的。
https://stackoverflow.com/questions/62560091
复制相似问题