PostgreSQL配置SSL连接

1、系统需要有openssl、openssl-devel

yum -y install openssl openssl-devel

2、查看当前数据库是否使用openssl编译

pg_config|grep CONFIGURE

如果没有重新编译

make clean

make && make install

3、服务器端证书配置

服务器端需生成三个文件: root.crt(根证书)、server.crt(服务器证书)、server.key(服务器私钥)

3.1 生成服务器私钥

cd /opt/app/postgresql/data

openssl genrsa -des3 -out server.key 2048

此处需输入密码,并需要再次确认输入密码

3.2 服务器私钥生成后,需移除密码,否则数据库重启时会出现异常

openssl rsa -in server.key -out server.key

Enter pass phrase for server.key:

writing RSA key

3.3 生成服务器证书

openssl req -new -key server.key -days 2650 -out server.crt -x509

此处可以一路Enter,不用输入

3.4 生成根证书

由于没有公证机构提供,只能使用自签名证书,因此可以将服务器证书作为根证书

cp server.crt root.crt

4、修改配置文件postgresql.conf

5、修改配置文件pg_hba.conf

添加配置hostssl all all 0.0.0.0/0 md5

5、修改权限

root.crt (root,777)(根证书)

server.key (postgres,600) (客户端密钥)

server.crt (root,755) (客户端证书)

重启postgresql

相关推荐
OpenVINO生态社区17 分钟前
【汽车功能安全:软件与硬件缺一不可】
数据库·安全·汽车
程序猿阿伟2 小时前
《打破SQL与AI框架对接壁垒,解锁融合新路径》
数据库·人工智能·sql
点燃大海2 小时前
MySQL表结构导出(Excel)
java·数据库·python·mysql·spring
꧁坚持很酷꧂2 小时前
Qt远程连接数据库,注册,登录
开发语言·数据库·qt
加油,旭杏2 小时前
【Redis】服务端高并发分布式结构
数据库·redis·分布式
꧁༺朝花夕逝༻꧂3 小时前
MySQL--数据备份
数据库·mysql
共享家95275 小时前
Linux常用命令详解:从基础到进阶
linux·服务器·数据库
我是个假程序员9 小时前
sql server数据库可疑修复
数据库
极限实验室10 小时前
如何使用 Nginx 代理 Easysearch 服务
数据库·nginx
whn197710 小时前
selectdb修改表副本
数据库