关于oceanbase:OceanBase-安全审计之传输加密

41次阅读

共计 1750 个字符,预计需要花费 5 分钟才能阅读完成。

上一期咱们讲了对于 OceanBase 平安审计的《身份甄别》和《用户治理与访问控制》两个局部,OceanBase 的平安机制介绍其反对传输加密,明天咱们次要来实际一下如何配置传输加密以及验证是否真的加密。

作者:金长龙

爱可生测试工程师,负责 DMP 产品的测试工作。

作者:陈慧明

爱可生测试工程师,次要参加 DMP 和 DBLE 自动化测试项目。

本文起源:原创投稿

* 爱可生开源社区出品,原创内容未经受权不得随便应用,转载请分割小编并注明起源。

OceanBase 的平安机制介绍其反对传输加密,明天咱们次要来实际一下如何配置传输加密以及验证是否真的加密。

环境筹备

  1. 企业版 OceanBase 4.1 集群(3 节点)+ OBProxy
  2. 配置 CA、服务端、客户端证书

OceanBase 社区版也能够实现。

OBServer 传输加密

2.1 开启加密

OceanBase 传输加密的开启通过多个配置项配合应用。

通过 root 用户登录 sys 租户

指定私钥 / 证书 /CA 证书的获取形式

alter system set ssl_external_kms_info = '{"ssl_mode":"file"}';

配置 MySQL 端口 SSL 通信

alter system set ssl_client_authentication = 'TRUE';
# 配置为 TRUE 后,MySQL 通信 SSL 即时开启。

配置 RPC 通信的 SSL 白名单

因为 OBServer 之间 TCP 连贯都是长连贯,因而须要重启 OBServer 后 RPC SSL 加密通信能力开启。

# RPC 通信 SSL 须要配置白名单。# 整个集群都开启。alter system set _ob_ssl_invited_nodes='ALL'; 

# 指定 IP 的 OBServer 开启 SSL。alter system set _ob_ssl_invited_nodes='135.xxx.xx.xx, 128.xxx.xx.xx'; 

2.2 验证加密

MySQL 端口(2881)

通过 \s 查看。

抓包。

RPC 端口(2882)

日志检索 rpc connection accept,查看 use_ssl 的值是 True 还是 False。

抓包。

ODP 传输加密

应用了 OBProxy 之后,客户端跟 OceanBase 建设加密连贯,理论是跟 OBProxy 建设加密连贯,而后 OBProxy 跟 OBServer 再建设加密连贯。依照这个了解,后面服务端 OceanBase 集群开启 SSL 客户端认证也是个必要的前提了。

3.1 开启加密

  1. 应用 OBProxy 的 root@proxysys 账号登录。
  2. 设置证书、公钥、私钥。
UPDATE proxyconfig.security_config SET CONFIG_VAL= '{"sourceType":"FILE","CA":"certs/ca.pem","publicKey":"certs/client-cert.pem","privateKey":"certs/client-key.pem"}' WHERE APP_NAME = 'obproxy' and VERSION = '1';

留神:这里配置的公钥和私钥,是后面生成的 Client 端证书,而不是 Server 端的。因为 OBProxy 作为客户端和服务端链路两头重要的一环,是客户端的“服务端”,同时也是 OceanBase 服务端的“客户端”。

查看是否设置胜利。

配置客户端和 OBProxy 开启 SSL 连贯。

alter proxyconfig set enable_client_ssl=true;

配置 OBProxy 和 OBServer 开启 SSL 连贯。

alter proxyconfig set enable_server_ssl=true;

用业务租户的管理员账户登录,设置 SSL 白名单。

alter system set ob_ssl_invited_common_names="obclient";
# 这个参数是租户级别的,须要在要连贯的租户里设置,立刻失效,不须要重启实例或者集群。

留神:ob_ssl_invited_common_names 的值要设置成和 Client 端证书 subject 中的 cn(common name) 字段统一。

3.2 验证加密

客户端和 OBProxy 的连贯

OBProxy 和 OBServer 的连贯

总结

理论配置和验证的过程也踩了几个坑,还是要联合文档多加了解和消化。

正文完
 0