Files
netrunner-data/postgres/pg_hba.conf
T
nineap 9ca6df3dfc Postgres переезжает сюда физически — backend теперь на отдельном VPS
Раньше предполагалось, что backend и БД живут на одном хосте и делят
Docker-сеть — на деле backend будет на отдельном, ещё не арендованном
VPS, а Postgres стоит здесь же, рядом с Vaultwarden. Возвращает свой
контейнер `db` (общий для обеих баз — vaultwarden создаётся через
POSTGRES_USER/POSTGRES_DB, вторая, для backend, через новый
postgres/init-backend-db.sh), публикует 5432 наружу с hostssl+TLS
(postgres/pg_hba.conf, самоподписанный сертификат генерируется один раз
прямо в deploy.yml). Backup-джоба (pg_dump обеих баз) тоже переехала
сюда из netrunner-backend — дампить логичнее там, где физически лежат
данные.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-09 17:17:05 +07:00

26 lines
2.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Кастомный pg_hba.conf — заменяет дефолтный образа postgres:16-alpine.
# Нужен потому, что этот Postgres теперь принимает подключения ПО СЕТИ
# (backend живёт на отдельном, ещё не арендованном VPS, не в одном
# Docker-стеке с этой БД) — дефолтный pg_hba.conf официального образа этого
# не позволяет вообще (только localhost/docker-сеть).
#
# ВАЖНО: "0.0.0.0/0" ниже — временная заглушка, ПОКА не арендован и не
# известен IP VPS backend'а. Как только IP появится — заменить его на
# конкретный /32 этого IP и перезапустить контейнер (перечитывать pg_hba.conf
# можно без даунтайма: docker exec netrunner-db psql -U postgres -c "SELECT pg_reload_conf();").
# Держать 0.0.0.0/0 в проде дольше, чем нужно для первого запуска — плохая
# идея даже с hostssl+scram-sha-256+сильным паролем.
#
# hostssl (не host) — соединение без TLS с удалённого хоста будет отклонено
# ещё на этапе согласования, а не просто "разрешено, но не зашифровано".
local all all scram-sha-256
host all all 127.0.0.1/32 scram-sha-256
host all all ::1/128 scram-sha-256
# Vaultwarden и backup-джоба сидят в одной Docker-сети с этим контейнером —
# им closer-to-localhost доверие достаточно, TLS не обязателен (трафик не
# покидает хост).
host all all 172.16.0.0/12 scram-sha-256
# Удалённый backend (см. предупреждение выше — ЗАМЕНИТЬ 0.0.0.0/0 на /32 IP):
hostssl all all 0.0.0.0/0 scram-sha-256