Notifications (Уведомления)
Функция Notifications (Уведомления) в Authelia отвечает за отправку сообщений пользователям для подтверждения их личности и критически важных действий. Это ключевой компонент безопасности, обеспечивающий защиту от несанкционированного доступа.
Основные цели
- Верификация пользователя: Подтверждение email/телефона при регистрации или сбросе пароля.
- Безопасность: Уведомления о подозрительных действиях (например, вход с нового устройства).
- Восстановление доступа: Отправка временных кодов для сброса пароля или 2FA.
Типы уведомлений
Тип уведомления |
Когда отправляется |
Метод отправки |
Сброс пароля |
При запросе восстановления пароля |
Email/SMS |
Подтверждение 2FA |
При добавлении нового устройства |
Email/Push |
Подозрительный вход |
При входе с нового IP/устройства |
Email/SMS |
Identity Verification |
Для подтверждения личности |
Email/SMS |
Конфигурация
notifier:
disable_startup_check: false
template_path: ''
filesystem: {}
smtp: {}
Опции
disable_startup_check
В уведомлении предусмотрена проверка запуска, которая проверяет правильность конфигурации указанного провайдера и возможность отправки писем. Эту проверку можно отключить с помощью опции disable_startup_check.
template_path
Этот параметр позволяет администратору указать путь к каталогу, в котором будут находиться пользовательские шаблоны уведомлений.
1 - SMTP
SMTP (Simple Mail Transfer Protocol) в Authelia используется для отправки email-уведомлений пользователям.
Назначение SMTP
Верификации пользователей
- Отправка ссылок для сброса пароля
- Подтверждение email при регистрации
- Коды для двухфакторной аутентификации (2FA)
Безопасности
- Уведомления о подозрительных действиях (например, вход с нового устройства)
- Предупреждения о попытках взлома
Работоспособности функций
- Без SMTP не будут работать:
- Сброс пароля (/reset-password)
- Регистрация новых пользователей
- Уведомления безопасности
Конфигурация
notifier:
disable_startup_check: false
smtp:
address: 'smtp://127.0.0.1:25'
timeout: '5s'
username: 'test'
password: 'password'
sender: "Authelia <admin@rabrain.ru>"
identifier: 'localhost'
subject: "[Authelia] {title}"
startup_check_address: 'test@rabrain.ru'
disable_require_tls: false
disable_starttls: false
disable_html_emails: false
tls:
server_name: 'smtp.rabrain.ru'
skip_verify: false
minimum_version: 'TLS1.2'
maximum_version: 'TLS1.3'
certificate_chain: |
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
private_key: |
-----BEGIN PRIVATE KEY-----
...
-----END PRIVATE KEY-----
Опции
address
Настройка адреса для SMTP-сервера. Сам адрес является коннектором, а схема должна быть smtp, submission или submissions. Единственное различие между этими схемами заключается в портах по умолчанию, а для отправки требуется транспорт TLS в соответствии с мерами безопасности портов SMTP, в то время как отправка и smtp используют стандартный транспорт TCP и обычно применяют StartTLS.
notifier:
smtp:
address: 'smtp://127.0.0.1:25'
notifier:
smtp:
address: 'submissions://[fd00:1111:2222:3333::1]:465'
timeout
Таймаут соединения SMTP.
username
Имя пользователя, отправляемое для аутентификации на SMTP-сервере. В паре с паролем.
password
Пароль в паре с именем пользователя, отправляемый для аутентификации на SMTP-сервере.
sender
Адрес отправителя используется для создания SMTP-команды MAIL FROM и добавления заголовка FROM. Этот адрес должен быть в формате RFC5322. Это означает, что он должен иметь один из двух форматов:
Команда MAIL FROM, отправляемая SMTP-серверам, не будет включать часть имени, она задается только в FROM в соответствии со спецификациями.
identifier
Имя, которое нужно отправить SMTP-серверу в качестве идентификатора с помощью команды HELO/EHLO. Некоторые SMTP-провайдеры, такие как Google Mail, отклоняют сообщение, если это localhost.
subject
Это тема, которую Authelia будет использовать в электронном письме. В настоящее время она имеет единственный заполнитель {title}, который должен быть включен во все электронные письма, поскольку это внутренний дескриптор содержимого письма.
startup_check_address
При запуске Authelia проверяет действительность SMTP-сервера, одна из проверок требует, чтобы мы спросили SMTP-сервер, может ли он отправить письмо от нас на определенный адрес, и это тот самый адрес. На самом деле никаких писем при этом не отправляется. Можно оставить все как есть, но вы можете настроить это, если у вас возникнут проблемы или вы захотите.
disable_require_tls
В целях безопасности настройки по умолчанию для Authelia требуют, чтобы SMTP-соединение было зашифровано с помощью TLS. Дополнительные сведения см. в разделе Безопасность. Эта опция отключает данную меру (не рекомендуется).
disable_starttls
Некоторые SMTP-серверы игнорируют спецификации SMTP и утверждают, что поддерживают STARTTLS, хотя на самом деле это не так. По соображениям безопасности Authelia отказывается отправлять сообщения на такие серверы. Данная опция отключает эту меру и включается на ВАШ собственный страх и риск.
disable_html_emails
Эта настройка полностью отключает HTML-форматирование писем и отправляет только текстовые сообщения. По умолчанию Authelia отправляет смешанные письма, содержащие как HTML, так и текст, поэтому эта опция редко бывает необходима.
tls
Если эта опция определена, она управляет параметрами проверки TLS-соединения для SMTP-сервера.
По умолчанию Authelia использует системное доверие к сертификатам для проверки TLS-соединений, а глобальная опция certificates_directory может быть использована для дополнения этого параметра.
Using Gmail
notifier:
smtp:
address: 'submission://smtp.gmail.com:587'
username: 'myaccount@gmail.com'
# Password can also be set using a secret: https://www.authelia.com/configuration/methods/secrets/
password: 'yourapppassword'
sender: 'admin@rabrain.ru'
2 - File system
Режим File System (файловая система) в разделе уведомлений (notifications) Authelia — это тестовый метод, который записывает уведомления (например, письма для сброса пароля) в файлы вместо реальной отправки.
Для чего используется?
- Тестирование шаблонов писем: Проверка внешнего вида email без настройки SMTP.
- Отладка логики уведомлений: Анализ содержимого сообщений (токены, ссылки).
- Локальная разработка: Когда нет доступа к SMTP-серверу.
Конфигурация
notifier:
disable_startup_check: false
filesystem:
filename: '/config/notification.txt'
Опции
filename
Файл, в который нужно добавить текст письма. Если он не существует, он будет создан.