如何在Google云负载均衡器上配置SSL证书?
在我之前的帖子中,我谈到了如何进行implement SSL certificate on shared hosting, Cloud/VPS server, Cloudflare等操作,你们中的一些人问如何在负载均衡器(LB)上进行操作。
在网络边缘设备上终止SSL握手是一个好主意,有很多原因。
- 速度更快
- 可以即时进行更改
- 易于维护
- 由LB管理的SSL/TLS硬化
Google Cloud Platform (GCP) is fantastic,我在Geek Flare上使用它并且非常喜欢。GCP提供了许多云解决方案,包括负载均衡器。
有三种类型的负载均衡器可用,如果您托管基于Web的应用程序,那么推荐使用HTTP(S)类型。
让我们来看看如何在Google Cloud HTTP(S)负载均衡器上实现SSL certificate。
对于这个练习,我将使用我的实验域名(techpostal.com)通过LB将流量转发到计算引擎VM(Nginx)。
我假设您已经准备好了以下内容。
- 正在运行的Web服务器
- 端口为80的HTTP(S)LB
在Google Cloud LB上实施证书
- 登录到Google Cloud >> 网络服务 >> 负载平衡(direct link)
- 点击对应的LB进行编辑
- 转到前端配置 >> 添加前端IP和端口
- 将协议选择为HTTPS
- 我将IP保留为临时的,但在生产系统中,建议使用静态IP
- 下拉选择证书并点击“创建新的证书”
它会弹出另一个窗口,您可以在其中输入私钥、公钥和链证书。
- 让我们使用OpenSSL创建CSR(证书签名请求)
openssl req -out techpostal.csr -newkey rsa:2048 -nodes -keyout techpostal.key
- 按提示输入必要的信息
- 您将注意到一个密钥和CSR文件已创建
root@web-server:~# ls -ltr -rw-r--r-- 1 root root 1704 Sep 2 06:56 techpostal.key -rw-r--r-- 1 root root 1017 Sep 2 06:56 techpostal.csr root@web-server:~#
现在,您需要将此CSR发送给证书颁发机构以进行签名。我正在使用Let's Encrypt来签署我的证书,输入这些详细信息并点击“创建”。
如果您想探索更多的FREE SSL certificate提供商,请点击完成,然后更新
通过展开LB来获取前端IP的详细信息
现在,您必须将您的域名A记录更新为指向域名注册机构的负载均衡器IP。完成后,请尝试使用https访问您的URL,它应该可以正常工作。
这就结束了SSL握手在techpostal.com上在负载均衡器处终止。
Google Cloud会采取必要的SSL/TLS hardening来确保它不会暴露给已知的协议、密码漏洞。我在SSL Labs进行了测试,获得了A级评级。
我希望这个快速指南能帮助您在Google LB上为您的域名启用SSL。