传输层安全性 (TLS)

启用TLS以加密应用程序与Redis数据库之间的数据通信。

传输层安全性(TLS)使用加密来保护网络通信

付费的Redis Cloud Essentials计划和Redis Cloud Pro计划可以使用TLS来加密应用程序与Redis数据库之间的数据通信。

注意:
TLS 不适用于免费的 Redis Cloud Essentials 计划。

在Redis Cloud中使用TLS

默认情况下未启用TLS。

TLS 建议

由于TLS对性能有影响,您需要确定TLS的安全优势是否值得性能上的影响。TLS的建议取决于订阅计划以及客户端是使用公共端点还是私有端点连接到您的数据库。

此表显示了TLS建议:

订阅 公共端点 私有端点
Redis 云基础版 启用 TLS N/A
Redis Cloud Pro 启用TLS 如果安全性比性能影响更重要,请启用TLS

客户端认证

当您启用TLS时,您可以选择要求客户端认证(也称为“双向认证”)。如果启用,所有客户端在连接到数据库时必须提供有效的客户端证书。

Redis Cloud 不需要客户端认证;但是,强烈建议进行认证。

启用TLS

要为Redis Cloud数据库启用TLS:

  1. Redis Cloud 控制台菜单中选择数据库,然后从列表中选择您的数据库。

  2. 从数据库的配置屏幕中,选择编辑数据库按钮:

    The Edit database button lets you change selected database properties.
  3. 安全部分,使用传输层安全性(TLS)切换按钮来启用TLS:

    Use the Transport Layer Security toggle to enable TLS.
  4. 选择下载服务器证书按钮以下载Redis Cloud证书包redis_ca.pem

    Use the Download server certificate button to download the Redis Cloud CA certificates.
  5. 决定是否需要客户端认证:

    • 如果您只希望提供有效证书的客户端能够连接,请继续下一步。

    • 如果您不希望要求客户端认证,请跳到最后一步以应用您的更改。

  6. 要要求客户端认证,请勾选相互TLS(要求客户端认证)复选框。

  7. 选择添加客户端证书以添加证书。

    The Add client certificate button.
  8. 要么提供X.509客户端证书或PEM格式的证书链,要么选择生成来创建一个:

    Provide or generate a certificate for Mutual TLS.
    • 如果您从Redis Cloud控制台生成证书,生成后将出现一个下载证书按钮。选择它以下载证书。

      The Download certificate button.

      下载内容包括:

      • redis-db-<database_id>.crt – 证书的公钥。

      • redis-db-<database_id>.key – 证书的私钥。

      注意:
      您必须在此刻使用按钮下载证书。在您的更改应用后,公钥和私钥的完整包将不再可供下载。
    • 如果您提供客户端证书或证书链,您将在保存更改之前看到证书详细信息。

      The Download certificate button.
  9. 你可以再次选择添加客户端证书来添加另一个证书。

    The Add client certificate button.
  10. 要应用您的更改并启用TLS,请选择保存数据库按钮:

    Use the Save database button to save database changes.
Note:
  • 当您启用或关闭TLS时,更改将应用于新连接,但不会影响现有连接。客户端必须关闭现有连接并重新连接以应用更改。

  • 一旦启用了TLS,所有客户端连接到您的数据库都必须使用TLS。未加密的连接将不再被允许。

通过TLS连接

要连接到Redis Cloud数据库的TLS,您需要:

  • 支持TLS的Redis客户端
  • Redis Cloud CA 证书

下载CA证书

如果您没有Redis Cloud CA证书,您可以从Redis Cloud控制台下载它们:

  1. 要么从Redis Cloud控制台菜单中选择账户设置,要么转到数据库的配置屏幕。

  2. 转到安全部分。

  3. 对于Redis Cloud证书颁发机构,要么:

    • 选择下载按钮以从账户设置下载证书:

      Use the Download button to download the Redis Cloud CA certificates.
    • 选择下载服务器证书按钮,从数据库的配置屏幕下载证书:

      Use the Download server certificate button to download the Redis Cloud CA certificates.

下载包含一个名为redis_ca.pem的文件,其中包括以下证书:

  • 自签名的Redis Cloud Essentials计划根CA(已弃用但仍在使用)

  • 自签名的Redis Cloud Pro计划根CA和中间CA(已弃用但仍在使用)

  • 公开信任的GlobalSign根证书颁发机构

注意:
下载的PEM文件包含多个证书。确保将所有证书导入到您的客户端信任存储中。如果您的客户端代码未正确实现,可能只会导入第一个证书。

要检查redis_ca.pem中的证书,请运行keytool命令:

keytool -printcert -file ./redis_ca.pem | grep "Owner:"

你可以将redis_ca.pem添加到信任库中,或者直接将其传递给Redis客户端。

如果您的数据库需要客户端认证,您还需要公钥(redis_user.crt)和私钥(redis_user_private.key)。详情请参见 启用TLS

使用Redis CLI连接

以下是使用Redis CLI连接到启用TLS的Redis Cloud数据库的方法。

端点和端口详细信息可从数据库列表或数据库的配置屏幕获取。

无需客户端认证

如果您的数据库不需要客户端认证,那么在连接时请提供Redis Cloud CA证书包(redis_ca.pem):

redis-cli -h <endpoint> -p <port> --tls --cacert redis_ca.pem

使用客户端认证

如果您的数据库需要客户端认证,那么您还需要提供客户端的私钥和公钥:

redis-cli -h <endpoint> -p <port> --tls --cacert redis_ca.pem \
    --cert redis_user.crt --key redis_user_private.key
RATE THIS PAGE
Back to top ↑