# Статус инфраструктуры > Обновляй этот файл при каждом значимом изменении. > Последнее обновление: 2026-03-23 --- ## Серверы | Сервер | IP | Роль | Состояние | |--------|----|------|-----------| | **main** | 87.249.49.32 | Основные сервисы + мониторинг | ✅ Работает | | **tools** | 85.193.83.9 | Wiki + автоматизация + почта | ✅ Работает | --- ## Сервисы ### Основной сервер (main, 87.249.49.32) | Сервис | Домен | Статус | Заметки | |--------|-------|--------|---------| | Traefik | — | ✅ | Реверс-прокси, TLS wildcard `*.csrx.ru` через Cloudflare DNS-01 | | Vaultwarden | vault.csrx.ru | ✅ | Менеджер паролей | | Forgejo | git.csrx.ru | ✅ | Git-сервер, SSH на порту 2222 | | Forgejo Actions | — | ✅ | CI/CD runner, деплой через push в master | | Plane | plane.csrx.ru | ✅ | Управление проектами | | Grafana | dash.csrx.ru | ✅ | Дашборды мониторинга | | Prometheus | — | ✅ | Сбор метрик, 30 дней хранения | | Loki + Promtail | — | ✅ | Сбор логов | | AlertManager | — | ✅ | Алерты в Telegram | | CrowdSec | — | ✅ | IDS, банит злоумышленников | | Authelia | auth.csrx.ru | ✅ | 2FA SSO, защищает traefik dashboard и plane/god-mode | | Uptime Kuma | status.csrx.ru | ✅ | Публичная страница статуса | | Бэкап | — | ✅ | Каждые 6 часов (00/06/12/18) → S3 `visual-backup/data/`, 7 дней | ### Tools-сервер (tools, 85.193.83.9) | Сервис | Домен | Статус | Заметки | |--------|-------|--------|---------| | Outline | wiki.csrx.ru | ✅ | Wiki, аутентификация через email magic link | | n8n | n8n.csrx.ru | ✅ | Автоматизация workflow | | docker-mailserver | mx.csrx.ru | ✅ | Postfix + Dovecot, порты 25/465/587/993, DKIM+SPF+DMARC | | SnappyMail | mail.csrx.ru | ✅ | Веб-клиент почты | ### Почта (@csrx.ru) **Аккаунты:** | Аккаунт | Назначение | |---------|-----------| | noreply@csrx.ru | Системные письма (Outline magic link) | | admin@csrx.ru | Администратор | | jack@csrx.ru | Личный | **Архитектура почты:** ``` Входящая: internet → port 25 → mx.csrx.ru (85.193.83.9) → Postfix → Dovecot → IMAP Исходящая: Outlook/SnappyMail → port 587 (STARTTLS) → mx.csrx.ru → Postfix → internet Outline: outline контейнер → mailserver:587 (Docker mail-internal сеть) → noreply@ ``` **Настройки почтового клиента:** - IMAP: `mx.csrx.ru` порт 993 (SSL/TLS) - SMTP: `mx.csrx.ru` порт 587 (STARTTLS) или 465 (SSL/TLS) - Веб-клиент: https://mail.csrx.ru (SnappyMail) **DNS-записи для почты** (все должны быть в Cloudflare): ``` A mx → 85.193.83.9 DNS-only (НЕ proxied!) A mail → 87.249.49.32 Proxied (webmail через Traefik) MX @ 10 → mx.csrx.ru. TXT @ → "v=spf1 mx -all" TXT _dmarc → "v=DMARC1; p=quarantine; rua=mailto:admin@csrx.ru; ..." TXT mail._domainkey → "v=DKIM1; k=rsa; p=" (генерируется при деплое) CNAME autoconfig → mx.csrx.ru. для Thunderbird autodiscover CNAME autodiscover → mx.csrx.ru. для Outlook autodiscover ``` **rDNS (PTR-запись)** — настроить в панели Timeweb: `85.193.83.9 → mx.csrx.ru` (критично для доставки в Gmail/Yandex!) **Автообновление TLS-сертификата:** - certbot renew cron: каждый день в 03:15 и 15:15 - deploy-hook: после обновления автоматически перезагружает Postfix+Dovecot --- ## CI/CD - Репозиторий: `git.csrx.ru/jack/infra` - Триггер: push в `master` запускает `ansible-playbook playbooks/deploy.yml` + `playbooks/tools.yml` - Runner: `act_runner` на основном сервере - **Правило**: все изменения только через git, никаких ручных правок на сервере --- ## Известные проблемы | Проблема | Статус | |----------|--------| | PTR-запись 85.193.83.9 → mx.csrx.ru | ⏳ Настроена в Timeweb, обновляется 3–24 ч | | Tools-сервер не бэкапится | ⚠️ outline-db, n8n, mailserver/config не входят в бэкап | | Tools-сервер вне мониторинга | ⚠️ Prometheus не скрейпит tools-сервер | | SnappyMail домен csrx.ru не настроен | ⚠️ Нужно в админке: IMAP mailserver:993, SMTP mailserver:587 | --- ## Сети Docker ### Основной сервер - `proxy` — публичная, только для Traefik (нужна для ACME) - `backend` — internal, Traefik ↔ сервисы - `forgejo-db` — internal, Forgejo ↔ PostgreSQL - `forgejo-ssh` — публичная, для SSH-клиентов - `plane-internal` — internal, все компоненты Plane - `runner-jobs` — публичная, для job-контейнеров CI/CD - `monitoring` — internal, стек мониторинга - `authelia-internal` — internal, Authelia ↔ Redis ### Tools-сервер - `front` — публичная, для port binding хоста - `outline-internal` — internal, Outline ↔ DB ↔ Redis - `n8n-internal` — internal, n8n изоляция - `mail-internal` — internal, Outline → mailserver (SMTP без auth) - `webmail-internal` — internal, SnappyMail изоляция