Data Studio连接PostgreSQL数据库时SSL证书获取及配置问题
PostgreSQL 连接 Data Studio SSL证书获取与连接失败排障
一、SSL证书获取方式
根据你使用的PostgreSQL部署方式不同,证书获取路径分为两类:
- 云厂商托管实例(阿里云RDS、腾讯云CDB、AWS RDS等)
登录对应云厂商数据库控制台,进入目标实例详情页,在「SSL配置」或「安全设置」分类下即可下载官方提供的根证书、客户端证书及密钥。注意需先在控制台开启SSL功能,重启实例后证书才会生效。 - 自建PostgreSQL实例
如果你未手动生成过证书,可通过OpenSSL命令生成所需的三类证书文件:
生成完成后修改# 生成根证书私钥 openssl genrsa -des3 -out root.key 2048 # 生成根证书 openssl req -new -x509 -days 3650 -key root.key -out root.crt # 生成客户端私钥 openssl genrsa -des3 -out postgresql.key 2048 # 生成客户端证书签名请求 openssl req -new -key postgresql.key -out postgresql.csr # 根证书签发客户端证书 openssl x509 -req -in postgresql.csr -CA root.crt -CAkey root.key -CAcreateserial -out postgresql.crt -days 3650postgresql.conf配置开启SSL:
配置修改完成重启PostgreSQL服务即可。如果是之前已经生成过证书,默认保存在数据目录的ssl = on ssl_cert_file = 'postgresql.crt' ssl_key_file = 'postgresql.key' ssl_ca_file = 'root.crt'data文件夹下直接取用即可。
二、连接失败常见排障点
你当前的连接配置界面参考如下:
按照以下顺序排查即可解决绝大多数连接失败问题:
- 确认数据库公网IP、端口、账号密码填写正确,同时安全组/防火墙已经放开Data Studio的访问IP段
- 证书上传对应关系不要混淆:服务器证书对应生成的
root.crt,客户端证书对应postgresql.crt,客户端密钥对应postgresql.key - 生成证书时填写的通用名(CN)必须和连接时填写的数据库主机地址完全一致,否则会触发证书校验失败
- 确认你的PostgreSQL版本支持TLS 1.2及以上协议,低版本需要升级或调整SSL协议配置适配Data Studio的安全要求
内容的提问来源于stack exchange,提问作者The boring way
相关产品推荐
相关产品推荐

