为Postgresql使用Letsencrypt证书

我在Debian 8 Jessie上为我的NGINXnetworking服务器成功configuration了Letsencrypt。

现在我已经安装了Postgresql 9.4,并希望使用LE证书(在/etc/letsencrypt/live/mydomain/com/... )来进行SSL连接。 我已经将path设置为证书和configuration文件中的密钥( /etc/postgresql/9.4/main/postgresql.conf )。

当我尝试通过pg_ctlcluster重新启动Postgres时,可以pg_ctlcluster ,由于证书的Permission denied ,因此失败。 我知道Postgresql与用户postgres运行,并且此用户不能访问此目录。

我如何解决这个干净的方式?

您可以将posrgres用户添加到轮组或可以访问目录/ etc / letsencrypt / live / mydomain / com /的其他组,或者使postgres用户拥有该证书(如果专用)。

示例命令使postgres所有者到达一个假想的位置

 sudo mkdir /etc/postgres/ sudo mv /etc/letsencrypt/live/mydomain/com/pg.crt /etc/postgres/pg.crt sudo mv /etc/letsencrypt/live/mydomain/com/pg.key /etc/postgres/pg.key sudo chown -R postgres: /etc/postgres 

然后你需要调整/etc/postgresql/9.4/main/postgresql.conf来指向新的path。