Mailcow в 2026 году: честный разбор бесплатного почтового сервера от техдиректора, который держит на нём 200+ ящиков

Изометрическая иллюстрация почтового сервера mailcow, собранного из Docker-контейнеров, от которого письма разлетаются к ноутбуку и смартфону

Меня зовут Семёнов Евгений, я технический директор компании «АйТи Фреш» — мы 15+ лет занимаемся IT-аутсорсингом для юрлиц до 50 рабочих мест в Москве и держим собственные восемь серверов Dell на Xeon Platinum 8280 в дата-центре МТС. Эта статья — не пересказ документации. Один наш инстанс mailcow прямо сейчас обслуживает 21 домен и 211 с лишним почтовых ящиков наших клиентов: бухгалтерские фирмы, строителей, торговые компании. За плечами — миграции с Zimbra и хостинговой почты, ночные инциденты, десяток собранных граблей. Так что разбор будет честный: и за что я mailcow люблю, и где он нас кусал.

Это первая, обзорная статья серии. Дальше будут отдельные материалы про развёртывание с нуля, миграцию ящиков и повседневную эксплуатацию — здесь же разберёмся, что это за зверь и кому он вообще нужен.

Зачем компании до 50 рабочих мест свой почтовый сервер в 2026 году

Начнём с денег, потому что директор всегда начинает с денег. Аренда корпоративной почты у крупных провайдеров в 2026 году стоит примерно 249–450 рублей за ящик в месяц в зависимости от тарифа и объёма хранилища. Для компании на 40 ящиков это 120–200 тысяч рублей в год — каждый год, без права собственности, с риском очередного «пересмотра тарифной сетки».

Альтернатива — VPS за 1500–3000 рублей в месяц (4 vCPU, 8 ГБ RAM, 100+ ГБ диска), на котором mailcow спокойно везёт те же 40 ящиков. Итого 18–36 тысяч рублей в год за железо. Даже с учётом работы админа окупаемость — один квартал, дальше экономия чистая.

Но деньги — не главный аргумент. Главных, по моему опыту, три:

  • Контроль данных. Переписка бухгалтерии, договоры, коммерческие предложения, сканы паспортов в приложениях — всё это при аренде лежит на серверах стороннего провайдера. На своём сервере вы физически знаете, где эти данные, кто имеет к ним доступ и как они бэкапятся.
  • Независимость от тарифной политики. Провайдер завтра поднимет цену, порежет бесплатный тариф или «оптимизирует» нужную вам функцию — а вы уже завязаны на его экосистему. Свой сервер таких сюрпризов не преподносит.
  • Никаких лимитов. Ящики, домены, алиасы, размер вложений — всё ограничено только вашим диском. Нам это критично: на одном инстансе живёт 21 домен, и добавление двадцать второго не стоит ни копейки.

Теперь честно о том, когда свой сервер не нужен. Если в компании нет ни своего админа, ни подрядчика на поддержке — не начинайте. Почта относится к сервисам, которые «просто работают» месяцами, но требуют квалифицированной реакции, когда что-то идёт не так: IP попал в чёрный список, сертификат не перевыпустился, диск заполнился. Без человека, который отреагирует за час, а не за неделю, арендованная почта объективно надёжнее.

Что такое mailcow: dockerized на самом деле

Распространённое заблуждение — считать mailcow «почтовой программой». На деле это оркестрированный стек из примерно 18 Docker-контейнеров, где каждый компонент — зрелый открытый продукт с многолетней историей, а mailcow — клей, панель управления и продуманные дефолты поверх них.

Перечислю по нашему проду (Debian 12, 4 vCPU, 31 ГиБ RAM, 610 ГиБ диска — namespace mailcowdockerized в docker compose ps показывает ровно 18 сервисов):

  • Postfix 3.7.x — SMTP, приём и отправка писем;
  • Dovecot 2.3.21 — IMAP/POP3, хранение ящиков, Sieve-фильтры;
  • Rspamd 3.14 — антиспам, грейлистинг, DKIM-подпись, рейтлимиты;
  • ClamAV — антивирусная проверка вложений;
  • SOGo 5.12 — веб-клиент, календари, контакты и ActiveSync;
  • MariaDB 10.11 — метаданные: домены, ящики, алиасы, квоты;
  • Redis 7.4 — кэш и очереди для Rspamd и панели;
  • nginx — фронт для панели, SOGo и автоконфигурации клиентов;
  • acme — автоматический выпуск и продление сертификатов Let's Encrypt;
  • netfilter — встроенный аналог fail2ban, банит брутфорсеров на уровне iptables/nftables;
  • watchdog — следит за здоровьем остальных контейнеров и шлёт алерты;
  • плюс вспомогательные: dockerapi, olefy (анализ офисных вложений), memcached, unbound (свой резолвер — критично для DNSBL), php-fpm, sogo-eas и очередь клиентских уведомлений.
Архитектурная схема стека mailcow: поток письма от интернета через Postfix, Rspamd и ClamAV в Dovecot, MariaDB и Redis, доступ пользователей через nginx и SOGo

Письмо проходит цепочку: Postfix принимает соединение → Rspamd оценивает спамность и проверяет подписи → ClamAV сканирует вложения → Dovecot кладёт письмо в ящик. Пользователь забирает его по IMAP, через веб-интерфейс SOGo или по ActiveSync на смартфон. Всё это вы получаете одной командой установки, уже связанным и настроенным.

Почему Docker здесь — плюс, а не оверхед

Слышу возражение «зачем мне Docker на почтовике» регулярно. После четырёх лет эксплуатации отвечаю уверенно — затем, что:

  • Обновления атомарны. Штатный update.sh подтягивает новые теги образов и git-ревизию конфигурации, пересоздаёт контейнеры за пару минут. Мы обновляем прод с 211 ящиками в рабочее время — пользователи замечают максимум минутный разрыв IMAP-сессии.
  • Откат предсказуем. Не взлетело — возвращаетесь на предыдущую ревизию репозитория и теги образов, данные в volumes не тронуты. С «классической» установкой Postfix+Dovecot из пакетов откат — это всегда приключение.
  • Изоляция от хостовой ОС. Обновление Debian на хосте не тащит за собой внезапную мажорную версию Dovecot. Компоненты стека обновляются тогда, когда команда mailcow их протестировала в связке.
# обновление прода целиком — так это выглядит у нас
cd /opt/mailcow-dockerized
./update.sh
# скрипт сам покажет changelog, спросит подтверждение,
# сделает docker compose pull и пересоздаст контейнеры

Ключевые возможности глазами внедренца

Админ-панель: домены и ящики кнопками, DKIM в два клика

Панель — то, за что mailcow выбирают вместо «голого» Postfix. Домен добавляется формой: имя, лимит ящиков, квота — и он готов принимать почту. Ящики, алиасы, доменные алиасы — всё так же, кнопками, без правки конфигов. DKIM-ключ генерируется в разделе «Конфигурация → ARC/DKIM ключи» буквально двумя кликами: выбрали домен, длину ключа 2048 — панель отдала готовую TXT-запись для DNS. У нас на 21 домене эта рутина занимает минуты, а не часы.

Из приятного, что реально используем: квоты на уровне домена и отдельного ящика, tag-адресация вида user+nakladnye@domain.ru (письма с тегом можно автоматически раскладывать по папкам), временные алиасы-«спамоловки», ACL для делегирования — можно отдать клиенту доменного админа, который управляет только своими ящиками и не видит соседей по серверу.

ActiveSync без лицензий Exchange

Для директора это обычно решающий аргумент. SOGo в составе mailcow отдаёт Exchange ActiveSync: Outlook и штатные почтовые приложения iPhone/Android подключаются к серверу так, будто это Exchange — push-доставка писем, синхронизация календарей и контактов, общие адресные книги. Без CAL-лицензий, без сервера Windows, без затрат на Microsoft вообще. Наши клиенты-руководители получают на смартфоне ровно тот же опыт, что был у них на корпоративном Exchange, — только теперь это стоит ноль рублей за лицензии.

SOGo как веб-клиент

Веб-интерфейс пользователя — SOGo: почта, календарь с приглашениями, адресные книги, автоответчик и Sieve-фильтры, настраиваемые из интерфейса без единой строчки кода. Русская локализация SOGo полная — бухгалтер, всю жизнь работавший в браузерной почте, осваивается за десять минут. Общие календари отдела и общая адресная книга компании закрывают 90% того, ради чего малый бизнес раньше терпел Exchange.

REST API: автоматизация, без которой мы бы утонули

У админ-панели есть полноценный REST API с ключами доступа (отдельно read-only и read-write). Мы через него управляем всеми клиентскими доменами: заведение ящика нового сотрудника, смена пароля, установка квоты — всё скриптами, без ручных заходов в панель. Создание ящика выглядит так:

curl -s -X POST https://mail.example.ru/api/v1/add/mailbox \
  -H "X-API-Key: XXXXX-XXXXX-XXXXX" \
  -H "Content-Type: application/json" \
  -d '{"local_part":"ivanov","domain":"client.ru",
       "name":"Иванов Иван","password":"S3cure!Pass",
       "password2":"S3cure!Pass","quota":"3072","active":"1"}'

На 211 ящиках ручное администрирование умерло бы давно; API — причина, по которой один инженер спокойно ведёт весь почтовый парк.

Проект жив и активно развивается

Выбирая open-source для клиентского прода, я первым делом смотрю не на функции, а на пульс проекта. У mailcow с этим порядок: релизы выходят каждые 1–2 месяца, нумерация по схеме ГГГГ-ММ с буквенными ревизиями. На момент написания (июль 2026) актуальная версия — 2026-05c от 26 мая 2026 года.

Что проект добавил только за первую половину 2026 года:

  • 2026-01 — ограничение доступа по ActiveSync и DAV для отдельных ящиков (можно запретить конкретному ящику мобильную синхронизацию — удобно для служебных аккаунтов) и более строгий контроль отправки с алиасов;
  • 2026-03 — принудительная двухфакторная аутентификация для админов панели и поддержка DNS-01 challenge в ACME: сертификаты теперь выпускаются без открытого наружу 80-го порта, что для серверов за строгим файрволом снимает старую головную боль;
  • 2026-05 (a–c) — серия security-ревизий: экранирование HTML в панели, обновление SOGo до 5.12.8 с закрытием четырёх уязвимостей, nginx 1.30.2 и патч CVE в unbound.

Последний пункт показателен: уязвимость в резолвере unbound команда закрыла отдельной ревизией за считаные дни, не дожидаясь планового релиза. Для почтового сервера, который по определению торчит в интернет, такая реакция — вопрос гигиены. Первоисточник по релизам — официальный блог mailcow.email, там каждый релиз расписан с changelog и инструкцией обновления.

Русский язык и лицензия

Частый вопрос от клиентов: «А оно по-русски умеет?» Умеет, с оговорками. Интерфейс админ-панели переключается на русский селектором прямо в UI, перевод ведётся официально через платформу Weblate (локаль ru-ru). Полнота перевода — около 77%: весь повседневный функционал (домены, ящики, алиасы, квоты, DKIM) локализован, но свежие функции из последних релизов первое время висят на английском — например, новые пункты про ограничения EAS-доступа появились в панели по-английски и обрусели только через пару релизов. Для админа это не проблема, для передачи панели клиенту «в самостоятельное плавание» — учитывайте.

SOGo — то, что видят обычные пользователи, — локализован полностью, включая календари и настройки фильтров. За четыре года ни один из наших пользователей не пожаловался на язык веб-почты.

Лицензия — GPL-3.0. Это важно проговорить, потому что рынок приучил к ловушкам: mailcow бесплатен в том числе для коммерческого использования, без ограничений на число ящиков, доменов или пользователей. Никаких «free до 10 сотрудников, дальше платите». Наши 211 ящиков на 21 домене не стоят в лицензиях ни рубля — проект живёт на добровольную поддержку и платный хостинг от разработчиков для тех, кто не хочет размещать сам.

Честные минусы, о которых молчат обзоры

Теперь то, ради чего вы, возможно, открыли статью. Обзоров с перечислением достоинств в сети хватает; я расскажу, где болит.

1. ClamAV прожорлив. Антивирусный контейнер держит в памяти всю базу сигнатур и стабильно съедает 1–1,5 ГБ RAM просто фактом своего существования. На нашем сервере с 31 ГиБ это незаметно, но на VPS с 4 ГБ — треть памяти. ClamAV можно отключить (SKIP_CLAMD=y в mailcow.conf), и Rspamd продолжит резать спам, но проверки вложений на вирусы вы лишитесь. Мой трейд-офф: для клиентов, где пользователи открывают всё подряд, — оставляем и берём VPS пожирнее; для технических доменов с парой ящиков — отключаем.

2. Требования к памяти реальные, а не маркетинговые. Документация называет минимумом 6 ГиБ RAM плюс 1 ГиБ swap, комфортом — 8 ГиБ, и это правда: один воркер SOGo разрастается до ~350 МиБ, Rspamd с полными базами тоже не аскет. Установщик при 2,5 ГиБ и меньше прямо предложит отключить ClamAV, но на VPS с 2 ГБ RAM mailcow не жилец — не тратьте время, проверено чужими шишками на форумах и одной нашей тестовой виртуалкой. Если памяти впритык — отключайте ещё и полнотекстовый поиск (SKIP_FTS=y).

3. Кластеризации из коробки нет. Mailcow — принципиально одноузловая система: HA собирается только руками из репликации MariaDB, синхронизации Dovecot и плавающего IP, и это уже инженерный проект, а не «поставил и забыл». Здесь важно понимать матчасть: при падении сервера почта не теряется — по RFC 5321 отправляющие серверы обязаны повторять доставку, на практике письма копятся в их очередях от нескольких часов до 4–5 дней. Упавший на час-два сервер означает задержку писем, а не их потерю. Для компании до 50 человек это приемлемо; для той, где час без почты — катастрофа, нужен либо кластер руками, либо облачный сервис.

4. Российские хостеры режут 25-й порт. Исходящий SMTP-порт по умолчанию закрыт у большинства отечественных провайдеров VPS — защита от спамеров. Решается заявкой в поддержку (обычно открывают за день после объяснения, что вы почтовый сервер, а не ботнет) либо отправкой через relay. Планируйте это до миграции, а не в день переключения MX.

5. Грабля из нашего прода: пароли — только через API или панель. Однажды мы сменили пароль ящика прямым UPDATE в MariaDB — хэш корректный, IMAP пускает… а веб-почта нет: прямая запись в базу ломает SSO-связку SOGo, у которой свой слой аутентификации поверх. Симптом коварный — «почта работает, а сайт не пускает», диагностировать в первый раз весело. Запомните сами и завещайте скриптам: смена пароля — только через API (edit/mailbox) или панель.

Бонус-грабля туда же: если у домена в панели выставлена нулевая общая квота, API откажется редактировать любой его ящик с ошибкой mailbox_quota_left_exceeded — даже если вы меняете только пароль. Сначала поправьте квоту домена, потом ящик. Мы напоролись на это при плановой смене пароля клиентского ящика буквально на этой неделе.

# правильная смена пароля — через API, не через SQL:
curl -s -X POST https://mail.example.ru/api/v1/edit/mailbox \
  -H "X-API-Key: XXXXX-XXXXX-XXXXX" \
  -H "Content-Type: application/json" \
  -d '{"items":["user@client.ru"],
       "attr":{"password":"NewPass!2026","password2":"NewPass!2026"}}'

Сравнение с альтернативами в категории

Mailcow — не единственный self-hosted-комбайн. Мы в разное время щупали всех основных конкурентов; вот сводка по критериям, которые важны для боевой эксплуатации, а не для тестового стенда на выходных.

Сравнительная инфографика четырёх self-hosted почтовых серверов в виде карточек с оценками по антиспаму, ActiveSync и документации
КритерийmailcowiRedMail (free)Mail-in-a-BoxPoste.io
АнтиспамRspamd, тонкая настройка из панелиSpamAssassin + Amavisd, настройка конфигамиSpamAssassin, базовыйRspamd, упрощённая обвязка
ActiveSyncДа, SOGo EAS из коробкиТолько в платной Pro-версииНет (только IMAP/CalDAV)Нет (IMAP + ActiveSync заявлен частично в Pro)
REST APIПолный, домены/ящики/алиасыНет в free-версииОграниченный (пользователи/DNS)Есть, скромнее по охвату
Документацияdocs.mailcow.email — подробная, живаяХорошая, но часть за платной подпискойСредняя, рассчитана на один сценарийСкупая
СообществоСамое крупное: активные форум, Telegram-каналы, GitHubСреднееСреднее, ориентировано на энтузиастовНебольшое
Частота релизовКаждые 1–2 месяцаНесколько раз в годНесколько раз в годНерегулярно
Свобода конфигурацииПолная, любые домены/ящикиFree без веб-управления мультидоменомЖёстко заданный сценарий «всё на одной машине»Полная в Pro

Мой вывод после эксплуатации: Mail-in-a-Box хорош как «почта для себя за вечер», но негибок — он хочет владеть всей машиной и своим DNS. iRedMail в бесплатной редакции упирается в отсутствие нормального веб-управления и ActiveSync — а это ровно то, за что бизнес готов платить. Poste.io подкупает лёгкостью (один контейнер!), но для 200+ ящиков клиентского прода мне нужны зрелый API и большое сообщество, у которого уже болело всё, что заболит у меня. Поэтому для клиентов выбираем mailcow: самое большое комьюнити в категории, лучшая документация и предсказуемый цикл релизов.

Кому подходит и что дальше

Соберу портрет компании, которой я порекомендую mailcow с чистой совестью:

  • юрлицо на 10–50 рабочих мест со своим доменом (или несколькими);
  • есть штатный админ или подрядчик на поддержке — тот, кто отреагирует на инцидент в течение часа;
  • почта важна, но час простоя не убивает бизнес (иначе — только кластер или облако);
  • хочется Exchange-функциональность (мобильная синхронизация, календари, общие контакты) без затрат на лицензии Microsoft;
  • есть требование держать переписку на своей инфраструктуре — у бухгалтерских и юридических фирм это всё чаще прямое пожелание клиентов.

Сколько владение стоит у нас: VPS уровня 4 vCPU / 8 ГБ RAM (1500–3000 ₽/мес) плюс 2–4 часа работы админа в месяц — обновления, контроль репутации IP, разбор редких инцидентов, проверка бэкапов. Для 40 ящиков это в разы дешевле аренды, при этом функционально богаче: у арендной почты нет ни вашего API, ни ваших правил фильтрации, ни ваших бэкапов.

Эта статья — карта местности. Дальше в серии разберём практику по шагам:

  • развёртывание mailcow с нуля: DNS-записи, PTR, установка, первые домены;
  • миграция ящиков с хостинговой почты и Exchange без потери писем (пока посмотрите наш разбор миграции с Exchange — принципы те же);
  • эксплуатация: мониторинг, бэкапы, репутация IP, разбор «нас забанил Gmail»;
  • кейс: как мы переводили бухгалтерскую фирму на свой сервер и что пошло не по плану.

А про фундамент — корректные DKIM, SPF и DMARC, без которых любой свой сервер полетит в спам, — у нас уже есть подробный разбор защиты домена от подделки.

Хотите свой почтовый сервер, но без своих граблей?

Мы в АйТи Фреш держим mailcow в проде на собственных серверах в дата-центре МТС — 21 домен и 211+ ящиков наших клиентов. Внедрим и будем сопровождать: развернём, перенесём почту без потерь и возьмём сервер на поддержку. Telegram @ITfresh_Boss · +7 903 729-62-41

📞 Обсудить проект
#mailcow обзор #бесплатный почтовый сервер для компании #свой почтовый сервер вместо аренды #mailcow dockerized что это #корпоративная почта self-hosted #почтовый сервер с ActiveSync без Exchange #mailcow русский язык
Комментарии 0

Оставить комментарий

загрузка...

Подпишитесь на рассылку ITfresh

Раз в неделю — практические гайды для руководителя IT и сисадмина: безопасность, 1С, миграции, резервные копии, лайфхаки из реальных проектов.

Реквизиты оператора персональных данных

ООО «АЙТИ-ФРЕШ», ИНН 7719418495, КПП 771901001. Юридический адрес: 105523, г. Москва, Щёлковское шоссе, д. 92, корп. 7. Контакт: info@itfresh.ru, +7 903 729-62-41. Оператор обрабатывает e-mail подписчика в целях рассылки информационных и рекламных материалов до момента отзыва согласия.