Команда инженеров · свой ЦОД в РФ · своё железо · своя панель · CloudStack + Linstor · MCP · база знаний по self-hosted
ПОЧТА И КОММУНИКАЦИИ

Roundcube

Веб-почта, которую вы сто раз видели у хостера и не знали по имени. Roundcube 1.7.4 в паре с docker-mailserver на машине за 500 рублей: что получается, сколько ест и почему обновлять придется каждый месяц.

Тестировали версию 1.7.4, 28 сентября 2026 ~9 минут чтения Fatmetal
GPL-3.0 PHP 8.1+ 1 контейнер 40 МиБ в простое SQLite из коробки 80+ языков интерфейса

Вердикт

Подходит
  • у вас уже есть IMAP-ящик и нужен свой веб-интерфейс на своем домене
  • вы ставите свой почтовый сервер, и ему нужно человеческое лицо
  • хостеру или провайдеру, который раздает почту клиентам
  • тем, кто уходит с RainLoop: его репозиторий заархивирован в августе 2024
Не подходит
  • если вам нужен почтовый сервер: Roundcube им не является
  • если нужен групвер с общим календарем и ActiveSync
  • если некому обновляться: выпуски безопасности идут раз в месяц
  • если нужен готовый почтовый сервис с доставляемостью из коробки
Мин. тариф: CPU2-RAM4-DISK50 Рекомендуем: CPU2-RAM4-DISK50 Сложность: easy Время запуска: 7 с до первого ответа Главный риск: без IMAP-сервера рядом вы получите форму входа и больше ничего Прод-готовность: да, с обратным прокси и TLS
Что это

Что это и чего в нем нет

Roundcube - браузерный IMAP-клиент на PHP. Первый стабильный выпуск вышел в марте 2008 года, продукту восемнадцать лет.

Начать надо с того, чего в нем нет. Почтового сервера внутри нет. Roundcube читает чужой IMAP и отправляет через чужой SMTP, а сам не принимает и не доставляет ни одного письма.

Из этого следует все остальное. Поставить один Roundcube и получить работающую почту нельзя: будет форма входа, которой некуда стучаться.

Скорее всего вы его уже видели. cPanel в свое время сделал Roundcube штатным вебмейлом вместо SquirrelMail, и веб-почта у массовых хостеров - это он, перекрашенный и без упоминания имени.

Лицензия GPL-3.0 с явным исключением для скинов и плагинов: расширение, которое только вызывает функции Roundcube, модификацией продукта не считается. Свой скин под корпоративный бренд можно не открывать.

PHP 8.1+Apache или PHP-FPMSQLiteMariaDB / PostgreSQLDockerIMAP4rev1SMTP
Входящие Roundcube 1.7.4 на русском языке с открытой панелью просмотра письма
Roundcube 1.7.4 поверх docker-mailserver на тарифе CPU2-RAM4-DISK50. Интерфейс русский
Сценарии

Два способа применения, и они очень разные

Первый: веб-интерфейс к чужому ящику. Почта остается там, где была - у хостера, в Яндекс 360, на корпоративном сервере. Roundcube просто дает свое окно к ней.

Тут он ничего не экономит. Покупается свой домен в адресной строке, свой вид, свои плагины и отсутствие чужой рекламы. Никаких DNS-записей, никакого 25-го порта, установка занимает минуты.

Второй: своя почта целиком. Рядом встает почтовый сервер, и Roundcube становится его лицом. Вот здесь считаются деньги, и здесь же начинается работа с DNS.

Мы собрали именно вторую связку: Roundcube 1.7.4 плюс docker-mailserver 16.0.1 на одной машине. Цифры ниже сняты с нее.

Открытое письмо в Roundcube с панелью ответа, пересылки и печати
Письмо целиком. Кириллица в теме кодируется корректно, без ручной настройки
i

Почему пара, а не один продукт. У docker-mailserver нет вебмейла, у Roundcube нет сервера. По отдельности каждый - половина решения. Вместе это то, что люди и ищут словами «почтовый сервер с веб-интерфейсом».

Деньги

Во что обходится альтернатива

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

ВариантПорог входа10 сотрудников в месяц
Своя машина + Roundcubeсофт бесплатен, GPL-3.0500 руб за машину, сколько бы людей ни было
Яндекс 360, «Почта и файлы»279 руб за сотрудника, минимум 102 790 руб
Яндекс 360, «Основной»549 руб за сотрудника5 490 руб
VK WorkSpace, «Базовый»309 руб за пользователя3 090 руб
VK WorkSpace, «Расширенный»499 руб за пользователя4 990 руб

Цены с сайтов вендоров на 28 сентября 2026. Разрыв растет линейно: на пятидесяти сотрудниках подписка идет к четырнадцати тысячам в месяц, а машина стоит те же 500 рублей.

Только счет неполный. В подписку входят доставляемость, антиспам, поддержка и мобильные приложения, а своя машина требует MX, SPF, DKIM, DMARC и записи PTR от провайдера.

Экономия настоящая, но покупается работой администратора. Если такого человека в компании нет, разговор можно не начинать.

Ниша

Кто еще остался в живых

Ниша отдельно стоящих вебмейлов за несколько лет почти обезлюдела. Метрики сняты через API GitHub 28 сентября 2026.

ПродуктЗвездПоследний коммитЧто это
Roundcube719427.09.2026чистый вебмейл, стандарт у хостеров
RainLoop411420.08.2024, архивбыл легкой альтернативой, репозиторий закрыт
SOGo217021.09.2026групвер: CalDAV, CardDAV, ActiveSync
Cypht174026.09.2026агрегатор нескольких ящиков, другая задача
SnappyMail170311.03.2026форк RainLoop, полгода без коммитов
Horde24216.05.2020, архивмертв

Выбор на практике сузился до двух: Roundcube и SOGo. Они про разное - первый почтовый клиент, второй групвер с календарем и синхронизацией, заметно тяжелее.

Отдельный сюжет - сам Roundcube чуть не выпал из этого списка. Между версиями 1.6.0 (июль 2022) и 1.7.0 (май 2026) прошло три года и девять месяцев без функциональных релизов.

В ноябре 2023 проект вошел в Nextcloud, тот содержит команду и продает подписку с поддержкой. Выпуск 1.7.0 - первый результат этих денег, и релиз-ноуты начинаются словами «после почти четырех лет разработки».

Установка

Развертывание на Fatmetal Cloud Server

От чистой Ubuntu 24.04 до работающей веб-почты с живыми письмами ушло около шести минут.

  1. Поставить Docker

    Образ Ubuntu 24.04 приходит без Docker, ставим из официального репозитория docker.com.

  2. Описать оба сервиса

    services:
      mailserver:
        image: ghcr.io/docker-mailserver/docker-mailserver:16.0.1
        hostname: mail.example.com
        env_file: mailserver.env
        volumes:
          - ./docker-data/dms/mail-data/:/var/mail/
          - ./docker-data/dms/mail-state/:/var/mail-state/
          - ./docker-data/dms/config/:/tmp/docker-mailserver/
      roundcube:
        image: roundcube/roundcubemail:1.7.4-apache
        depends_on: [mailserver]
        environment:
          ROUNDCUBEMAIL_DEFAULT_HOST: mailserver
          ROUNDCUBEMAIL_DEFAULT_PORT: 143
          ROUNDCUBEMAIL_SMTP_SERVER: mailserver
          ROUNDCUBEMAIL_SMTP_PORT: 587
          ROUNDCUBEMAIL_DB_TYPE: sqlite
          ROUNDCUBEMAIL_DES_KEY: "ваш_постоянный_ключ_24_символа"
        ports:
          - "127.0.0.1:8080:80"
        volumes:
          - ./docker-data/roundcube/db/:/var/roundcube/db/

    Roundcube обращается к почтовому серверу по имени сервиса внутри сети compose, наружу почтовые порты не выставлены вовсе.

  3. Поправить два значения в mailserver.env

    Вместо PERMIT_DOCKER=none поставить connected-networks, иначе почтовый сервер не примет отправку из соседнего контейнера. И заполнить POSTMASTER_ADDRESS.

  4. Запустить и сразу завести ящик

    docker compose up -d
    docker exec mailserver setup email add anna@example.com 'пароль'

    Именно сразу: у вас есть 120 секунд, дальше почтовый сервер выключится. Подробности ниже, в подводных камнях.

  5. Выставить наружу обратным прокси

    Сертификатов Roundcube не выпускает. В примере веб слушает только localhost, TLS терминирует прокси перед ним.

Окно написания письма в Roundcube с заполненными полями и панелью вложений
Окно написания письма. Предел вложения задается переменной окружения
Замеры

Что получилось на стенде

СтендCPU2-RAM4-DISK50, Ubuntu 24.04.4, Docker 29.8.1
ВерсииRoundcube 1.7.4, docker-mailserver 16.0.1
Чистая машина до установки415 МБ занято из 3915
Только Roundcube, контейнер39.6 МиБ (28.8 МиБ сразу после старта)
Вклад Roundcube в машину+38 МБ поверх Docker
Пара вместе, контейнеры127.2 МиБ; вся машина 677 МБ из 3915
Скачивание двух образов132 с, по 1.04 ГБ каждый
Повторный старт до HTTP 2007 с; почтовый сервер готов на 15-й секунде
Отдача страницы входа113 мс медиана, разброс 76-152 мс
Диск после установки обоих4.3 ГБ из 48

Roundcube оказался легче, чем весит его собственный образ: гигабайт на диске и сорок мегабайт в памяти. Тяжелая часть пары - почтовый сервер, и то 88 МиБ.

i

Где 4 ГБ могут кончиться. Не в памяти, а на диске и из-за соседа. Антивирус ClamAV в docker-mailserver выключен по умолчанию; включите - и он попросит гигабайты. Плюс сам почтовый архив: 50 ГБ хватит небольшой команде, дальше диск упрется раньше памяти.

Тестировали версию 1.7.4, сентябрь 2026. На новых версиях результаты могут отличаться.

Подводные камни

Где может сломаться

Все четыре пункта собраны на живой установке, а не вычитаны из документации.

!

Камень 1. Почтовый сервер убивает себя, если не завести ящик. docker-mailserver дает 120 секунд на появление первого аккаунта и, не дождавшись, гасит Dovecot и выключается. С restart: unless-stopped это превращается в бесконечный цикл, который снаружи читается как «продукт не стартует».

You need at least one mail account to start Dovecot (120s left for account creation before shutdown)

Причина. Провижининг аккаунтов не находит ни одной записи и через две минуты завершает работу контейнера.

Решение. setup email add в том же прогоне установки. Сценарий «запустил compose и ушел» здесь не работает.

!

Камень 2. Ключ шифрования сессий меняется при каждом старте контейнера. Образ Roundcube генерирует des_key заново и кладет его внутрь своего слоя. Значит каждое обновление образа выкидывает всех пользователей из сессий, а выпуски идут раз в месяц. Лечится переменной ROUNDCUBEMAIL_DES_KEY - в README образа она не описана, только вариант с Docker-секретом.

!

Камень 3. База по умолчанию живет внутри контейнера. SQLite лежит в /var/roundcube/db, и без тома адресная книга, профили отправителя и настройки умирают вместе с пересозданием. Свой конфиг при этом кладется в другое место - /var/roundcube/config/*.php, оттуда образ подхватывает каждый php-файл.

!

Камень 4. Язык интерфейса не меняется задним числом. Параметр language в конфиге - умолчание только для пользователя, у которого своя настройка еще не сохранена. Тем, кто уже заходил, интерфейс не переключится: каждому менять язык у себя в настройках.

Раздел настроек сервера в Roundcube на русском языке
Настройки сервера. Русская локализация полная, включая служебные разделы
Эксплуатация

Цена владения: обновления раз в месяц

Про Roundcube в рунете последние три года пишут почти только одно - про его уязвимости. Это не случайность и не повод от него отказываться, но знать стоит заранее.

Выпуск 1.7.4 от 6 сентября 2026 закрыл больше десятка проблем за раз. Среди них stored XSS через инъекцию TNEF-тега, срабатывающий без единого клика, несколько инъекций почтовых заголовков и обход SSRF-защиты в CSS-прокси.

Так идет каждый месяц: 1.7.1 в мае, 1.7.2 в июле, 1.7.3 в августе, 1.7.4 в сентябре, и все помечены как выпуски безопасности. Находки приходят от именованных исследователей, то есть продукт под постоянным вниманием.

Читать это надо не как «дырявый», а как эксплуатационное требование: вебмейл смотрит в интернет и разбирает чужой HTML, поэтому обновление раз в месяц - часть стоимости, а не опция.

Раздел профилей отправителя в настройках Roundcube
Профили отправителя: несколько адресов на своем домене из одного ящика
  • Ветки - полностью поддерживается только 1.7.x. Ветка 1.6.x получает лишь важные обновления безопасности, 1.5.x снята с поддержки.
  • Ключ сессий - задайте ROUNDCUBEMAIL_DES_KEY заранее, иначе каждое обновление разлогинит всех.
  • TLS - обратный прокси с сертификатом, порты приложения только на localhost.
  • Бэкап - том с базой Roundcube плюс данные почтового сервера. Письма лежат у второго, не у первого.
Границы

Когда это НЕ ваш выбор

Вам нужен почтовый сервер

Roundcube им не является. Без чужого IMAP и SMTP он показывает форму входа. Смотрите на docker-mailserver, Stalwart или Mailcow, а Roundcube ставьте сверху.

Вам нужен групвер

Общий календарь, общие контакты и ActiveSync из коробки - это SOGo или Nextcloud Groupware. У Roundcube календарь только сторонним плагином, ActiveSync нет вовсе.

Некому обновляться

Вебмейл на публичном адресе без регулярных обновлений - плохая идея именно для этого продукта. Если процесса обновлений нет, берите почту как сервис.

FAQ

Частые вопросы

Можно поставить Roundcube к почте Яндекса или хостера?

Да, это самый простой сценарий. Указываете адрес их IMAP и SMTP в двух переменных окружения и получаете свое окно к тому же ящику. Почтовый сервер поднимать не нужно.

Сколько памяти нужно?

Сам Roundcube добавил к машине 38 МБ, контейнер в простое занимает 39.6 МиБ. Вместе с почтовым сервером вся машина держалась на 677 МБ из 3915. Официального минимума у продукта нет вовсе.

Нужна ли отдельная база данных?

Нет, по умолчанию работает SQLite. Обязательно вынесите ее томом: иначе адресная книга и настройки исчезнут при пересоздании контейнера. MariaDB подключается, если пользователей станет много.

Интерфейс на русском?

Да, локализация полная, языков больше восьмидесяти. Учтите, что параметр языка в конфиге действует только на тех, кто еще не заходил.

Что с календарем?

Из коробки его нет, как и двухфакторной аутентификации и работы с несколькими аккаунтами. Все это сторонние плагины с Packagist.

Есть ли платные модули у самого проекта?

Нет. Продукт целиком под GPL-3.0, платное предложение одно - подписка Roundcube Enterprise от Nextcloud с поддержкой и SLA, цена по запросу.

Как обновляться?

Сменить тег образа, затем docker compose pull и up. Заранее задайте ключ des_key переменной окружения, иначе после обновления все пользователи окажутся разлогинены.

Переживет ли проект следующие пять лет?

Гарантий нет, но деньги Nextcloud вывели его из четырехлетнего простоя, а инсталляционная база огромна за счет хостеров. Прецедент неудачи тоже был: краудфандинг Roundcube Next в 2015 году собрал больше ста тысяч долларов и закончился ничем.

Итог

Roundcube 1.7.4 - самый легкий способ дать почте человеческое лицо: 40 МиБ памяти, один контейнер, полная русская локализация. Вместе с почтовым сервером связка укладывается в машину за 500 рублей в месяц, тогда как подписка на десять сотрудников начинается от 2 790 рублей. Взамен вы берете на себя DNS, доставляемость и обновления раз в месяц. Если администратор в компании есть, размен выгодный; если нет - берите почту как сервис.

Анонсы новых разборов в Telegram-канале Новые гайды и карточки в маркетплейсе первыми @fatmetal_channel →

Этот стек у нас запущен на тарифе CPU2-RAM4-DISK50. Нашли баг в гайде - напишите, поправим в течение дня.

Спросить инженера в TelegramМы на связи