Stalwart — современный почтовый сервер с поддержкой web-интерфейса и всех стандартов SMTP/IMAP/POP3, который можно развернуть полностью self-hosted. Сегодня мы рассмотрим, как настроить Stalwart через Docker Compose, подключать клиентов и управлять почтовым сервером.

Что такое Stalwart

Stalwart состоит из одного основного сервиса:

  • Stalwart Mail Server — обрабатывает входящую и исходящую почту, хранит почтовые ящики, управляет протоколами SMTP, IMAP и POP3, а также предоставляет веб-интерфейс для администрирования.

Дополнительно можно использовать web-клиент Stalwart, который позволяет проверять почту через браузер.

Развёртывание Stalwart на Debian через Docker Compose

Мы используем Docker для быстрого и безопасного запуска сервера. Пример docker-compose.yml:

services: stalwart: container_name: stalwart image: stalwartlabs/stalwart:latest restart: unless-stopped ports: - "8080:8080" # веб-интерфейс - "25:25" # SMTP - "587:587" # SMTP submission - "465:465" # SMTP SSL - "143:143" # IMAP - "993:993" # IMAP SSL - "110:110" # POP3 - "995:995" # POP3 SSL volumes: - stalwart-data:/opt/stalwart deploy: resources: limits: cpus: "1" memory: 1024M volumes: stalwart-data:

Использование volume stalwart-data позволяет сохранять данные почтового сервера между перезапусками контейнера.

Запуск контейнера

docker compose up -d docker compose logs -f

Команда up -d запускает сервер в фоновом режиме, а logs -f показывает логи в реальном времени.

Проверка работы сервера

Убедитесь, что порты для почтовых протоколов открыты:

ss -tuln | grep -E '25|587|465|143|993|110|995|8080'

Если сервер не слушает, проверьте логи:

docker logs stalwart

Настройка почтовых клиентов

Для подключения клиентов (Windows, Linux, macOS) используйте следующие параметры:

SMTP: :25 или 587/465 IMAP: :143 или 993 POP3: :110 или 995 Логин: e-mail пользователя Пароль: пароль пользователя

Проверьте доступность портов через:

ping nc -vz 25 nc -vz 993

Убедитесь, что firewall разрешает входящие соединения на эти порты.

Веб-клиент Stalwart

Веб-клиент позволяет управлять почтой через браузер и создавать новые ящики:

  • Доступен по порту 8080
  • Поддерживает все базовые функции управления почтой
  • Можно использовать на том же сервере, что и основной Stalwart контейнер

Выводы

  • Stalwart позволяет построить полностью self-hosted почтовый сервер
  • Для работы клиентов достаточно указать IP сервера и стандартные SMTP/IMAP/POP3 порты
  • Данные хранятся в Docker volume, что обеспечивает сохранность при обновлениях
  • Ресурсы контейнера можно ограничить (1 CPU, 1 GB RAM) для слабых VPS

Услуги

Хотите развернуть собственный почтовый сервер на базе Stalwart?
Я помогу с установкой на VPS или локальный сервер, настройкой почтовых клиентов, веб-интерфейса, SSL и брандмауэра, а также оптимизацией производительности.
Свяжитесь со мной, чтобы обсудить проект и получить готовое решение для self-hosted почтового сервера.