我尝试遵循 this 指南,但无法连接到服务器。我在下面列出了我的服务器/计算机信息。但是,出于安全原因,我没有包括我的真实域名或用户名。理想情况下,我希望通过 ssl 进行连接,而无需在客户端存储密钥。
操作系统:CentOS 7
PostgreSQL 版本:13
配置:
certbot --apache -d domain.com -d www.domain.com
cd /var/lib/pgsql/13/data
vi postgresql.conf
listen_addresses = '0.0.0.0'
ssl = on
ssl_cert_file = 'server.crt'
ssl_key_file = 'server.key'
ssl_prefer_server_ciphers = on
vi pg_hba.conf
hostssl all all 0.0.0.0/0 scram-sha-256
cd /etc/letsencrypt/renewal-hooks/deploy
vi postgresql.deploy
#!/bin/bash
umask 0177
export DOMAIN=domain.com
export DATA_DIR=/var/lib/pgsql/13/data
cp /etc/letsencrypt/live/$DOMAIN/fullchain.pem $DATA_DIR/server.crt
cp /etc/letsencrypt/live/$DOMAIN/privkey.pem $DATA_DIR/server.key
chown postgres:postgres $DATA_DIR/server.crt $DATA_DIR/server.key
# only for SELinux - CentOS, Red Hat
chcon -t postgresql_db_t $DATA_DIR/server.crt $DATA_DIR/server.key
chmod +x postgresql.deploy
sh postgresql.deploy
systemctl restart postgresql-13
操作系统:Windows 7 64 位
PostgreSQL 版本:13
配置:
cd C:\Users\username\PostgreSQL\pgsql\bin
psql -d postgres -h domain.com -U username
postgresql.conf
文件中的所有 ssl 选项。hostssl
文件中的 host
更改为 pg_hba.conf
。systemctl restart postgresql-13
psql -d postgres -h domain.com -U username
我还需要哪些其他步骤才能通过 ssl 进行连接?