Установка mailcow на свой сервер
Установка mailcow на свой сервер занимает несколько команд в Docker, а письма начнут доходить до Gmail и Яндекса только после DNS-записей и проверки порта 25. mailcow это почтовый сервер с панелью: домены и ящики создаются в браузере, есть веб-почта SOGo и антиспам Rspamd. Если нужна сборка полегче, ниже разобрана и установка Mailu.
Ответ за 30 секунд
mailcow просит сервер на KVM с 6 ГБ памяти и подкачкой, а для 5-10 ящиков документация советует 8 ГБ. Письма уйдут нормально только при открытом исходящем порте 25 и PTR-записи у адреса сервера, поэтому проверьте это раньше, чем начнёте переносить ящики.
Конфигурация от 8 ГБ памяти на KVM: оплата по часам, ресурсы добавляются без переезда.
Сколько памяти нужно mailcow и какой сервер подойдёт6 ГБминимум памяти по документации
GPL-3.0лицензия mailcow
Compose 2.0минимальная версия Docker Compose
Инструмент · 1 мин
Сколько памяти нужно mailcow и какой сервер подойдёт#
| Параметр | Требование mailcow |
|---|---|
| Память | 6 ГБ и 1 ГБ подкачки в настройках по умолчанию |
| Процессор | От 1 ГГц, архитектура x86_64 или ARM64 |
| Диск | 20 ГБ без учёта самих писем |
| Виртуализация | KVM, а контейнеры OpenVZ, Virtuozzo и LXC не подходят |
| Docker | Свежий Docker Engine, не пакет из репозитория системы, и Compose версии 2.0 или новее |
Облачный сервер Таймвеб Клауд работает на KVM, поэтому условие по виртуализации выполняется. Конфигурация MSK Ultra 80 (4 ядра, 8 ГБ, 80 ГБ NVMe) стоит 10 120 ₽ в месяц на 14 октября 2026. Если почте не нужен антивирус и поиск по письмам, их отключают в mailcow.conf, и памяти уходит меньше.
Какой сервер взять под mailcow
Два ответа, и калькулятор подберёт готовую конфигурацию
02 · 1 мин
Установка mailcow в Docker по шагам#
- Создайте A-запись для имени почтового сервера, например mail.example.com, на адрес вашего VPS. Это имя пойдёт в настройки и сертификат.
- Поставьте Docker Engine по инструкции с сайта Docker: версия из репозитория системы бывает старой.
- Склонируйте репозиторий в каталог /opt и запустите генератор конфигурации: он спросит имя сервера и часовой пояс.
- При необходимости поправьте mailcow.conf, затем скачайте образы и запустите службы.
- Откройте панель по адресу mail.example.com/admin и сразу смените стандартный пароль.
su
umask 0022
cd /opt
git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
./generate_config.sh
docker compose pull
docker compose up -d
Стандартный пароль известен всем
В документации указан стартовый вход admin с паролем moohoo. Пока вы его не сменили, любой, кто нашёл панель, может создать ящики и пересылать почту. Замените пароль до того, как откроете порты наружу, и включите двухфакторный вход.
Данные mailcow хранит в томах Docker, поэтому они переживают пересоздание контейнеров. Если на сервере нет IPv6, документация советует отключить его для сети mailcow.
03 · 1 мин
DNS-записи, PTR и порт 25 для mailcow#
| Запись | Что в ней |
|---|---|
| A | mail.example.com на IP сервера |
| MX | Домен example.com отдаёт почту серверу mail.example.com |
| CNAME autodiscover и autoconfig | Указывают на mail.example.com, по ним почтовые программы сами находят настройки |
| TXT SPF | Разрешает отправку с серверов из записей MX и A |
| TXT DKIM | Открытый ключ, который создаёт сама панель в разделе ARC/DKIM keys |
| TXT DMARC | Политика для писем, не прошедших проверку; начните с мягкой, p=none |
| PTR | Обратная запись IP на mail.example.com, её меняет владелец адреса |
В списке доменов панели есть кнопка DNS: она сверяет записи с рекомендованными и показывает, чего не хватает. Исходящий порт 25 проверьте с сервера до установки: из консоли подключитесь к чужому почтовому серверу на этот порт командой nc -vz gmail-smtp-in.l.google.com 25. Если связи нет, порт закрыт провайдером, и придётся просить его открыть или отправлять письма через внешний SMTP-релей.
Даже при безупречных записях доставку никто не гарантирует. Новый IP-адрес может оказаться в чужом чёрном списке, а получатели месяцами присматриваются к незнакомым отправителям. Найдите адрес в публичных списках заранее, а первые дни пускайте через сервер только обычную переписку.
04 · 1 мин
Какие порты открыть для mailcow и как с ним жить рядом с Nginx#
| Порт | Назначение |
|---|---|
| 25 | Приём писем от других серверов |
| 465 и 587 | Отправка писем почтовыми программами |
| 143 и 993 | IMAP, чтение ящика |
| 110 и 995 | POP3, если он нужен |
| 4190 | Sieve, правила фильтрации писем |
| 80 и 443 | Панель, веб-почта и выпуск сертификата |
Docker сам прописывает правила в iptables, поэтому запрет в ufw для опубликованных контейнером портов не действует. Для защиты от перебора паролей в mailcow есть собственный контейнер netfilter, который блокирует адреса после неудачных входов.
Проще всего отдать mailcow порты 80 и 443 целиком: тогда встроенный механизм ACME сам получает и продлевает сертификат Let's Encrypt для панели и почтовых служб. Если эти порты нужны другому сайту, в mailcow.conf переносят панель на другие значения HTTP_PORT, HTTPS_PORT, HTTP_BIND и HTTPS_BIND и ставят перед ней Nginx или Caddy. Сертификат для почтовых служб тогда придётся организовать отдельно, схема описана в разделе про обратный прокси в документации mailcow.
05 · 1 мин
Установка Mailu вместо mailcow: чем она отличается#
| mailcow | Mailu | |
|---|---|---|
| Лицензия | GPL-3.0 | MIT |
| Конфигурация | Скрипт generate_config.sh и файл mailcow.conf | Веб-генератор setup.mailu.io выдаёт docker-compose.yml и mailu.env |
| Веб-почта | SOGo с календарём и контактами | Roundcube или SnappyMail на выбор |
| Антивирус | ClamAV включён по умолчанию | Подключается по желанию |
Установка Mailu идёт так: в генераторе вы отвечаете на вопросы про домен, имя сервера, веб-почту и антивирус, кладёте полученные два файла в один каталог и запускаете docker compose. Администратора создают командой из документации Mailu. DNS-записи, PTR и порт 25 нужны те же, что в таблице выше, а сравнение с другими сборками есть на странице self hosted mail.
06 · 1 мин
Копии и обновление mailcow#
В mailcow есть скрипт копирования в каталоге helper-scripts. Запускают его так: MAILCOW_BACKUP_LOCATION=/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all, а восстановление делает тот же скрипт. Каталог /backup лежит на том же сервере, поэтому по расписанию переносите его на другую машину, схемы собраны в разборе сервер для бэкапов.
Обновляется mailcow командой ./update.sh из своего каталога. Скрипт обновляет репозиторий и образы, поэтому перед запуском сделайте копию и прочитайте список изменений: в нём бывают изменения конфигурации, которые затрагивают ваш mailcow.conf.
07 · 1 мин
Вопросы об установке mailcow#
Как установить mailcow на Ubuntu?
Поставьте свежий Docker Engine, склонируйте mailcow-dockerized в /opt, запустите ./generate_config.sh, затем docker compose pull и docker compose up -d. Панель откроется на вашем домене по адресу /admin.
Какой логин и пароль в mailcow после установки?
В документации указан стартовый вход admin с паролем moohoo. Смените пароль при первом входе, до открытия портов для всех.
Можно ли запустить mailcow на сервере с 4 ГБ памяти?
Документация называет минимумом 6 ГБ и 1 ГБ подкачки. Меньше памяти значит отключать антивирус и поиск в mailcow.conf, и всё равно запас будет тесным; для небольшой почты проще взять Mailu.
Чем Mailu отличается от mailcow при установке?
Mailu настраивается веб-генератором, который выдаёт docker-compose.yml и mailu.env, у mailcow есть собственный скрипт и панель. Лицензия Mailu MIT, у mailcow GPL-3.0.
Почему этому можно верить
Как мы проверяли
Источники цифр на этой странице: VPS и VDS серверы Таймвеб Клауд, timeweb.cloud/services/vds-vps, проверено 14 октября 2026; Маркетплейс приложений Таймвеб Клауд, timeweb.cloud/marketplace, проверено 14 октября 2026; Документация mailcow: установка, docs.mailcow.email/getstarted/install, проверено 16 октября 2026; Документация mailcow: требования к системе, docs.mailcow.email/getstarted/prerequisite-system, проверено 15 октября 2026; mailcow-dockerized: репозиторий и лицензия GPL-3.0, github.com/mailcow/mailcow-dockerized, проверено 14 октября 2026; Mailu: текст лицензии MIT, github.com/Mailu/Mailu/blob/master/LICENSE.md, проверено 14 октября 2026.
Запустите свой сервер за пару минут
Почасовая оплата: тестовый стенд на сутки стоит десятки рублей, а не месячный тариф.
- NVMe-диски и гарантированная доля процессора
- Root-доступ и любой софт, от Docker до игровых серверов
- Маркетплейс: 91 приложение в один клик
- Бесплатный перенос проекта силами специалистов