postgresql 12开启ssl加密,设置证书后pgsql无法启动的解决办法

1、首先生成客户端及服务端使用的证书及私钥。我这里使用XCA工具生成的。

XCA可以用我分享地址的链接(2.4.0版本),也可以去官网上下载。
链接:https://pan.baidu.com/s/1cbjeXvbxlAx6LLELXUmiqw
提取码:avbs
postgresql 12开启ssl加密,设置证书后pgsql无法启动的解决办法_第1张图片
2、将根证书,服务器证书及私钥导入服务器,我这里使用的服务器是ubuntu 20.04系统,pgsql版本是12。然后修改postgresql.conf文件,文件路径是

/etc/postgresql/12/main/postgresql.conf

修改如下内容,开启SSL,并设置证书及key的路径。

ssl = on
ssl_ca_file = ‘/etc/ssl/zy_certs/rootca.crt’
ssl_cert_file =’/etc/ssl/zy_certs/pgsqlserver.crt’
ssl_key_file =’/etc/ssl/private/pgsqlserverkey.key’

☆☆☆ 这里有一点需要特别注意,key的权限及组有特殊要求,否则restart后pgsql会起不来。

☆☆☆存放key文件夹的权限及组
在这里插入图片描述
☆☆☆key的权限及所属组
在这里插入图片描述
3、配置完服务端后重启pgsql

systemctl restart postgresql

4、客户端使用navicat,添加客户端的证书及私钥,连接正常。
postgresql 12开启ssl加密,设置证书后pgsql无法启动的解决办法_第2张图片

之前没有用过pgsql,最近才有这方面的需求在摸索着学习。如果有不对的地方欢迎指正。

你可能感兴趣的:(ssl,postgresql,服务器)