Skip to content

Настройка SMTP через Яндекс.Почту

Источник: ранее файл Инструкции/SMTP_YANDEX_SETUP.md (перенесён и стандартизирован).

1. Подключите домен к Яндекс.Почте для домена

  • Перейдите на https://mail.yandex.ru/domains/ и добавьте свой домен.
  • Создайте служебный ящик, например noreply@your-domain.ru.

2. Добавьте DNS‑записи

  • SPF: v=spf1 include:_spf.yandex.net ~all.
  • DKIM: включите подпись в панели Яндекс, вставьте TXT‑запись yandex._domainkey.
  • Рекомендуемо добавить DMARC (например, v=DMARC1; p=quarantine; rua=mailto:postmaster@your-domain.ru).

3. Настройте SMTP‑параметры

  • Хост: smtp.yandex.ru
  • Порт: 465 (SSL) или 587 (STARTTLS)
  • TLS: обязателен.
  • Включите пароль приложения (если включена 2FA) и используйте его.

Пример набора переменных:

bash
SMTP_HOST=smtp.yandex.ru
SMTP_PORT=465
SMTP_USERNAME=noreply@your-domain.ru
SMTP_PASSWORD=<пароль приложения>
SMTP_FROM=noreply@your-domain.ru
SMTP_FROM_NAME=Nimbus System
NOTIFICATIONS_ENABLED=true

4. Хранение секретов

  • НЕ сохраняйте логин/пароль в коде или в .env, который коммитится.
  • Используйте переменные окружения (SMTP_USERNAME, SMTP_PASSWORD и т.д.) или секретное хранилище (Vault, AWS Secrets Manager).

5. Интеграция в проект Nimbus

  • Бэкенд читает параметры SMTP из конфига (см. соответствующий сервис).
  • Сервис уведомлений должен использовать smtp.SendMail или аналогичный клиент.
  • Убедитесь, что сервис уведомлений инициализируется с новым конфигом (включите NotificationsEnabled).

6. Дополнительно

  • Ограничьте доступ к env‑файлам (только deploy‑сервер).
  • Включите логирование ошибок отправки и настройте алёрты.
  • Проверяйте доставку (отправьте тестовое письмо после конфигурации).