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

相关推荐
i220818 Faiz Ul5 小时前
计算机毕业设计|基于springboot + vue鲜花商城系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
Apple_羊先森7 小时前
ORACLE数据库巡检SQL脚本--22、检查碎片程度最高的业务表
数据库·sql·oracle
OnYoung8 小时前
更优雅的测试:Pytest框架入门
jvm·数据库·python
山岚的运维笔记8 小时前
SQL Server笔记 -- 第85章:查询提示
数据库·笔记·sql·microsoft·sqlserver
chilavert3188 小时前
技术演进中的开发沉思-371:final 关键字(中)
java·前端·数据库
tryCbest9 小时前
SQL Server数据库
数据库·sql server
_codemonster10 小时前
PreparedStatement 和 Statement的区别
数据库·oracle
恒云客10 小时前
python uv debug launch.json
数据库·python·json