seekdb 传输加密
seekdb 节点、liboblog、obadmin 等组件的底层通信均依赖 Libeasy 库,因此支持的私钥/证书加载方式均相同(本地文件模式),即将 CA 证书、用户证书、私钥放在 wallet 文件夹下,根据配置项开启时从该目录下读取加载。
开启方式
seekdb 传输加密的开启通过多个配置项配合使用。
-
使用 root 用户登录 seekdb。
-
指定私钥/证书/CA 证书的获取方式。
ALTER SYSTEM SET ssl_external_kms_info = '
{
"ssl_mode":"file"
}'; -
配置 MySQL 端口 SSL 通信。
默认 MySQL 端口 SSL 通信是关闭的。先需要指定 SSL 协议的版本号后开启 SSL 通信,修改后实时生效。
-
可以通过配置项
sql_protocol_min_tls_version指定 SSL 协议的版本号。目前支持的 SSL 协议的版本号包括 TLSv1、TLSv1.1、TLSv1.2 和 TLSv1.3,当指定版本号后,支持指定的版本号及其以上的版本协议。有关开启 SSL 连接的更多信息,请参见 sql_protocol_min_tls_version。ALTER SYSTEM SET sql_protocol_min_tls_version = 'TLSv1.1'; -
可以通过配置项
ssl_client_authentication开启 SSL 连接。有关开启 SSL 连接的更多信息,请参见 ssl_client_authentication。--配置为 TRUE 后,MySQL 通信 SSL 即时开启
ALTER SYSTEM SET ssl_client_authentication = 'TRUE';
-
-
配置 RPC 通信的 SSL 白名单,由于 seekdb 之间 TCP 连接都是长连接,因此需要重启 seekdb 后 RPC SSL 加密通信才能开启。
--rpc 通信 ssl 需要配置白名单
ALTER SYSTEM SET _ob_ssl_invited_nodes='ALL';
--指定 ip
ALTER SYSTEM SET _ob_ssl_invited_nodes='135.xxx.xx.xx';