你会开启Postgresql 的SSL单向认证 配置?

简介: 你会开启Postgresql 的SSL单向认证 配置?

大家好 ,我是阿萨。随着安全越来越重要,数据库的连接也开始启用SSL连接了。 有不了解SSL 连接方式的,可以参考如下文章:

HTTPS 通信原理

HTTP 常见认证方式

今天主要讲解下Postgresql 配置单向SSL 证书连接的方式。


一,什么是单向认证?


SSL 单向认证过程:客户端校验下服务器端证书的合法性就可以了。就类似你给家里的箱子上了锁,只要你有钥匙 就可以开门。不需要其他的信息。

单向认证过程,客户端不需要整证书。服务器端需要一个crt 和一个key 组合成一个证书文件。


二, 如何生成证书?


先查看下openssl 版本


openssl version

先创建key


openssl genrsa -out server.key 2048openssl genrsa -des3 -out server.key 2048

再生成crt


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


三, 如何配置Postgresql?

先找到Postgresql的data 目录


cd /var/lib/pgsql/12/data

复制server.crt 和 server.key 到对应的目录下


cp server.crt @pgData/server.crtcp server.key @pgData/server.key

修改这2个文件的权限,(一定要修改,否则等会无法重启)


chmod 600 server.*

修改这2个文件的宿主


chown postgres:postgres server.*

修改postgres.conf 文件,增加如下内容


vi postgres.confssl = on                         ssl_cert_file = 'server.crt'     ssl_key_file = 'server.key'


修改pg_hba.conf,增加如下内容:


hostssl      all    all    0.0.0.0/0    md5

然后重启postgres


systemctl restart postgresql-12


四. 客户端连接


我用的dbeaver 连接的,第一页信息和其他一样,重点是SSL 的配置:

我截图展示下:点测试成功即可。



五, SSL 连接模式介绍


sslmode 窃听保护 中间人 保护 描述
disable 不支持 不支持 我不在乎安全,我也不想支付加密的开销。
allow 可能支持 不支持

我不关心安全问题,但如果服务器坚持要加密的话,我会支付加密的开销。

prefer 可能支持 不支持 我不关心加密,但如果服务器支持加密,我愿意支付加密的开销。
require 支持 不支持 我希望我的数据被加密,我接受开销。我相信网络将确保我始终连接到我想要的服务器
verify-ca 支持 引来CA策略 我希望我的数据加密,我接受开销。我想确保我连接到一个我信任的服务器。
verify-full 支持 不支持 我想加密我的数据,我接受开销。我希望确保连接到我信任的服务器,并且它是我指定的服务器。

最简单的postgresSQL 配置就完成了。

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍如何基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
关系型数据库 Linux 数据库
PostgreSQL 入门指南:安装、配置与基本命令
本文从零开始,详细介绍如何在 Windows、Linux 和 macOS 上安装和配置 PostgreSQL,涵盖30+个实操代码示例。内容包括安装步骤、配置远程访问和用户权限、基础数据库操作命令(如创建表、插入和查询数据),以及常见问题的解决方案。通过学习,你将掌握 PostgreSQL 的基本使用方法,并为后续深入学习打下坚实基础。
16621 1
|
关系型数据库 MySQL Linux
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
在Linux中,如何配置数据库服务器(如MySQL或PostgreSQL)?
|
SQL 分布式计算 关系型数据库
实时计算 Flink版产品使用问题之在使用FlinkCDC与PostgreSQL进行集成时,该如何配置参数
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
实时计算 Flink版产品使用问题之在使用FlinkCDC与PostgreSQL进行集成时,该如何配置参数
|
安全 关系型数据库 Linux
|
网络安全
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常
|
缓存 关系型数据库 数据库
postgresql.conf配置详解
postgresql.conf配置详解
|
存储 缓存 安全
https跳过SSL认证时是不是就是不加密的,相当于http?
https跳过SSL认证时是不是就是不加密的,相当于http?
901 0
|
安全 网络安全 数据安全/隐私保护
ssl证书认证失败的原因和解决办法
ssl证书认证失败的原因和解决办法
|
关系型数据库 Linux 数据安全/隐私保护
PostgreSQL【部署 02】在线安装PostgreSQL(Some psql features might not work 问题处理+角色密码设置+配置远程访问)
PostgreSQL【部署 02】在线安装PostgreSQL(Some psql features might not work 问题处理+角色密码设置+配置远程访问)
383 0
PostgreSQL【部署 02】在线安装PostgreSQL(Some psql features might not work 问题处理+角色密码设置+配置远程访问)
|
监控 关系型数据库 Java
SpringBoot【集成 01】Druid+Dynamic+Greenplum(实际上用的是PostgreSQL的驱动)及 dbType not support 问题处理(附hikari相关配置)
SpringBoot【集成 01】Druid+Dynamic+Greenplum(实际上用的是PostgreSQL的驱动)及 dbType not support 问题处理(附hikari相关配置)
1042 0

热门文章

最新文章

推荐镜像

更多