蓝易云 - 安全加固:启动PostgreSQL 14服务器SSL加密的方法指南在CentOS 7环境中

在CentOS 7操作系统中配置PostgreSQL 14以启用SSL加密,需要进行以下步骤:

1. 安装PostgreSQL 14:

首先确保安装了PostgreSQL 14,可以通过以下命令安装:

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql14-server postgresql14

2. 初始化数据库并启动服务:

初始化PostgreSQL数据库,并启动PostgreSQL服务:

sudo /usr/pgsql-14/bin/postgresql-14-setup initdb
sudo systemctl enable postgresql-14
sudo systemctl start postgresql-14

3. 生成SSL证书:

需要在PostgreSQL数据目录下生成SSL证书和密钥。默认的PostgreSQL数据目录通常在 /var/lib/pgsql/14/data/

生成自签名的SSL证书和私钥:

sudo su - postgres
cd /var/lib/pgsql/14/data/
openssl req -new -x509 -days 365 -nodes -out server.crt -keyout server.key
chmod 600 server.key
chown postgres:postgres server.key server.crt

在这个过程中,你会被询问有关证书的信息,如组织名称和位置。

 

4. 配置PostgreSQL以使用SSL:

编辑PostgreSQL的主配置文件 postgresql.conf

vi /var/lib/pgsql/14/data/postgresql.conf

确保启用了SSL,并指定了证书和密钥的位置(如果你的证书和密钥位于默认目录,ssl_cert_file 和 ssl_key_file 可以不用更改):

ssl = on
ssl_cert_file = 'server.crt'
ssl_key_file = 'server.key'

5. 调整pg_hba.conf配置:

编辑文件 /var/lib/pgsql/14/data/pg_hba.conf,并确保使用了适当的认证方法来接受SSL连接:

# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
# Enable SSL connections:
hostssl all             all             0.0.0.0/0               scram-sha-256

注意:scram-sha-256 是推荐的密码验证方法。

6. 重启PostgreSQL服务:

重启PostgreSQL服务以应用更改:

sudo systemctl restart postgresql-14

7. 测试SSL连接:

使用 psql命令行工具测试SSL连接,可以使用参数 -h localhost 来强制使用TCP连接而非默认的UNIX socket, -U postgres 来指定用户名:

psql "sslmode=require dbname=postgres user=postgres host=localhost"

如果出现 Postgres 提示符,表明SSL连接成功。

8. 防火墙调整:

根据需要,你可能必须更新CentOS 7的防火墙规则来允许外部SSL连接到PostgreSQL:

sudo firewall-cmd --add-service=postgresql --permanent
sudo firewall-cmd --reload

结论:

通过上述步骤,你可以为PostgreSQL数据库服务器设置SSL加密,从而增加数据在传输中的安全性。确保维持证书的有效性,并且定期更新和管理密钥,以防止未授权访问。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值