Использовать сертификаты Letsencrypt для Postgresql

Я успешно настроил Letsencrypt для моего веб-сервера NGINX на Debian 8 Jessie.

Теперь я установил Postgresql 9.4 и хочу использовать сертификаты LE (в / etc / letsencrypt / live / mydomain / com / ... ) для его SSL-соединения. Я установил пути к сертификат и ключ в файле конфигурации ( /etc/postgresql/9.4/main/postgresql.conf ).

Как и ожидалось, когда я пытаюсь перезапустить Postgres через pg_ctlcluster , он терпит неудачу из-за Permission denied для сертификата. Я понимаю, что Postgresql запускается с пользователем postgres и что этот пользователь не имеет доступа к этому каталогу.

Как мне исправить это простым способом?

5
задан 4 October 2016 в 19:49
2 ответа

Вы можете либо добавить пользователя postgres в группу wheel или другую группу, которая может иметь доступ к каталогу /etc/letsencrypt/live/mydomain/, либо сделать пользователя 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 на указание на новый путь.

.
2
ответ дан 3 December 2019 в 02:02

или добавить acl в каталог, в котором хранится ключ (сделайте его acl по умолчанию, чтобы он работал при добавлении новых файлов). PS: Каталог, в котором вы должны установить acl on - это (по крайней мере, на centos) /etc/letsencrypt/archove/[ваш fqdn здесь], так как файлы в /etc/letsencrypt/live/[ваш fqdn здесь] - это просто symlinks

.
-1
ответ дан 3 December 2019 в 02:02

Теги

Похожие вопросы