TDMQ RabbitMQ 版支持 TLS 加密功能,可以为集群绑定 SSL 证书,同时支持单向认证和双向认证模式。
当您为接入点开启加密后,将会使用 SSL 证书在客户端和服务端进行数据传输时对数据进行加密,防止数据在网络传输过程中被截取或者窃听,保障数据传输安全,满足敏感业务需求。
单向认证
单向认证由客户端认证服务端,客户端对服务端的认证通过服务端证书完成。服务端会使用您选择的证书和客户端建立连接。服务器证书需要您自行购买或自行签发后,托管到 SSL 证书,再在 RabbitMQ 控制台完成配置。
双向认证
双向认证指客户端与服务端之间相互认证。RabbitMQ 通过服务端证书和客户端 CA 证书完成服务端和客户端的认证,以保证客户端和服务端通信链路的安全及可靠。
客户端对服务端的认证通过服务端证书完成。
服务端对客户端的认证通过CA 证书完成。客户端发起连接请求时,会将设备证书传递到服务端,服务端将根据客户端提前注册的 CA 证书验证该设备证书的正确性,验证通过则允许客户端连接服务端。
约束与限制
仅开源托管版集群支持 TLS 加密功能。
已经开启加密的接入点不允许被直接删除,需要先关闭加密。
绑定 SSL 证书将涉及集群重启,建议先在控制台为集群配置多节点镜像队列后再进行绑定,避免在绑定证书过程中服务中断或数据丢失。具体步骤请参考配置镜像策略。
证书绑定过程中,集群的状态为“变配中”,此时不允许进行其他变配操作。绑定完成后,集群状态将恢复正常。
由于 RabbitMQ 的底层限制,一个集群只能绑定一个服务端证书(单向认证),或者绑定一对服务端证书和 CA 证书(双向认证)。多个接入点的场景下,将使用集群绑定的证书进行加密。
配置 TLS 加密
前提条件
步骤1:绑定 SSL 证书
1. 登录 TDMQ RabbitMQ 版控制台。
2. 在左侧导航栏选择集群管理 > 集群列表,选择好地域后,单击目标集群的 ID,进入集群基本信息页面。
3. 在基本信息页面,选择证书管理页签,单击右上角的绑定证书。
4. 在弹窗中配置认证方式和证书信息。
参数 | 说明 |
认证方式 | 支持单向认证和双向认证两种方式。 单向认证:由客户端认证服务端。 双向认证:客户端与服务端相互认证。 |
证书来源 | 仅支持腾讯云托管的 SSL 证书。 说明: 如果您是第一次使用 RabbitMQ TLS 加密功能,需要点击授权 RabbitMQ 服务可以下载并应用 SSL 证书能力。 |
服务端证书 | 在下拉框中选择 SSL 证书,仅支持状态为“已颁发”的证书。服务端证书用于完成客户端对服务端的认证。 |
CA 证书 | 当认证方式选择双向认证时,需要在下拉框中选择 SSL 证书。CA 证书用于完成服务端对客户端的认证。 |

5. 单击提交,集群状态将变为“变配中”,等待3-5分钟后,集群将完成 SSL 证书绑定。

步骤2:为接入点开启加密
1. 在证书管理页面,选择客户端接入页签,单击目标接入点操作栏的 IP 转化为域名,在弹窗中点击确认,完成转换后会在网络列显示端口为5672的接入点。
说明:
开启 TLS 加密,需要基于接入点域名操作,因此需要先将接入点的 IP 转化为域名。如果接入点本身已经是域名,则无需进行此操作。

2. IP 转化为域名后,单击接入点操作栏的开启加密。
3. 在弹窗中单击确定,开启完成后,会在网络列展示端口为 5671 加密接入点。

步骤3:使用加密的接入点收发消息
完成 TLS 加密配置后,您可以在客户端中使用加密的接入点(端口为5671)连接集群并收发消息。
关闭加密
当您不再需要使用 TLS 加密能力时,可以在控制台关闭加密。
1. 登录 TDMQ RabbitMQ 版控制台。
2. 在左侧导航栏选择集群管理 > 集群列表,选择好地域后,单击目标集群的 ID,进入集群基本信息页面。
3. 在基本信息页面,选择客户端接入页签,单击目标接入点操作栏的关闭加密。
4. 在弹窗中单击确定,完成关闭。
解绑证书
如果已经有任意一个接入点已开启加密,则证书无法被解绑,需要先将所有接入点加密关闭。
1. 登录 TDMQ RabbitMQ 版控制台。
2. 在左侧导航栏选择集群管理 > 集群列表,选择好地域后,单击目标集群的 ID,进入集群基本信息页面。
3. 在基本信息页面,选择证书管理页签,单击右上角的解绑证书。
4. 在弹窗中单击删除,集群状态将变为“变配中”,等待3-5分钟后,集群将解绑 SSL 证书。