为了保证 gRPC 服务端与客户端之间的数据交互的安全性,需要启用 TLS 加密
用 Golang 调用 Aliyun DNS 的 API 接口,实现自动化申请或续期 Let's Encrypt 下的通配符证书(Wildcard Certificate)
Let's Encrypt 是由 Internet Security Research Group(ISRG)维护的免费 CA,通过 ACME 协议实现自动化证书管理服务。Certbot 是官方推荐的用来申请证书的工具,它默认生成 RSA 证书,如果你还想给新客户端申请体积更小、速度更快的 ECC 证书的话,本文是非常不错的实践教程,并且双证书都会自己续期
用 Wireshark 抓包来分析如何建立 TCP 连接、TLS 连接
为了让 NGINX 支持最新的 TLS v1.3 协议,我们需要编译 OpenSSL 1.1.1 版本以上才行,然后再基于刚编译的最新版 OpenSSL 来编译 NGINX 。二者编译完成后,只需在 NGINX 的配置文件中指定 ssl_protocols TLSv1.2 TLSv1.3 就能开启 TLS v1.3 了