Nextcloud Hub вместо Office 365 для 40 сотрудников: миграция за две недели
В июле 2025-го за 11 рабочих дней клиент перешёл с Microsoft 365 Business Standard на self-hosted Nextcloud Hub: 40 сотрудников, 2,7 ТБ данных из OneDrive, общие календари, Teams. Экономия по году — 840 тысяч рублей, а данные легли в российский ЦОД.
Почему клиент решился на переезд
Клиент — строительная компания, московское юрлицо, работающее уже 11 лет, 40 сотрудников. Microsoft 365 Business Standard они использовали с 2018 года, платили $12.50 за пользователя ежемесячно через посредника, поскольку после 2022-го Microsoft напрямую в России не продавал. В апреле 2025-го посредник поднял цену до 1 800 рублей за пользователя в месяц — около 85 000 рублей на всю команду — и предупредил: «Продление после следующего года не гарантируем».
Ко всему этому добавился ещё и нарастающий страх: а что, если Microsoft однажды просто возьмёт и отключит их тенант? Подумайте сами: все письма за 7 лет, все документы, хранившиеся в OneDrive, да и все общие календари – всё это в мгновение ока превратится в недоступный архив. А ещё был вопрос с 152-ФЗ: ведь персональные данные как сотрудников, так и клиентов физически размещались в дата-центре Microsoft, где-то там, то ли в Дублине, то ли в Амстердаме. А это, как мы все знаем, давно уже стало весьма «серой зоной» в плане законодательства.
Решение созрело быстро — переезжать на свой стек. Рассматривали три варианта: R7-Office в связке с Mail.ru Cloud Solutions, МойОфис и Nextcloud. После двух месяцев оценки остановились на Nextcloud: дешевле, проверен временем, гибче и полностью под контролем клиента.
Что такое Nextcloud Hub в 2025 году
Многие до сих пор воспринимают Nextcloud как «веб-морду к папке на сервере». Это давно устаревший взгляд: Nextcloud Hub 8 — полноценная коллаборационная платформа, которая «из коробки» предлагает массу возможностей:
- Nextcloud Files — хранение файлов с синхронизацией как OneDrive, клиенты Windows/Mac/Linux/Android/iOS.
- Nextcloud Talk — видеозвонки и чат, как Teams. До 100 участников в звонке, запись, демонстрация экрана, сквозное шифрование.
- Nextcloud Mail — веб-клиент для почты (IMAP/SMTP), читает любой почтовый сервер.
- Nextcloud Groupware — календари, контакты, задачи (CalDAV/CardDAV) с синхронизацией в Outlook и мобильные клиенты.
- Collabora Online или OnlyOffice — редактирование .docx/.xlsx/.pptx прямо в браузере с совместной работой в реальном времени.
- Nextcloud Deck — канбан-доски, как Trello.
- Nextcloud Forms — опросы и формы, как Microsoft Forms.
- Полноценный SSO через OpenID Connect, SAML, LDAP, Kerberos.
С почтой, правда, есть один нюанс. Сам Nextcloud Mail – это, по сути, всего лишь веб-клиент. А вот сам почтовый сервер (например, Postfix + Dovecot или уже готовый Mail-in-a-Box) нужно настраивать и поднимать отдельно. В нашем конкретном проекте мы решили поставить целую связку: Postfix, Dovecot, Rspamd и SOGo, причём разместили всё это на отдельной виртуальной машине (VM).
Архитектура, которую мы развернули
Вся наша инфраструктура уместилась всего на трёх виртуальных машинах, которые мы разместили у одного из российских облачных провайдеров, прямо в московском ЦОДе:
| VM | Ресурсы | Роль |
|---|---|---|
| nc-app | 8 vCPU, 16 ГБ RAM, 80 ГБ NVMe | Nextcloud + Redis + PostgreSQL |
| nc-storage | 2 vCPU, 4 ГБ RAM, 4 ТБ HDD | Primary storage для файлов (S3 API на MinIO) |
| nc-mail | 4 vCPU, 8 ГБ RAM, 200 ГБ SSD | Postfix, Dovecot, Rspamd, SOGo |
Сверху — nginx-reverse-proxy с Let's Encrypt и брандмауэр iptables. Бэкапы уходят в S3-хранилище другого провайдера (офсайт) плюс на локальный NAS клиента в офисе (ночная синхронизация по WireGuard).
Итоговый счёт за инфраструктуру — 6 800 ₽ в месяц. Считаем экономию против Office 365: 85 000 − 6 800 = 78 200 ₽ в месяц, или 938 400 ₽ в год. Минус разовый проект в 145 000 ₽ — и чистая экономия первого года выходит 793 тысячи.
Как прошла миграция
План на 11 рабочих дней:
- Дни 1–2. Запустили инфраструктуру, поставили Nextcloud Hub 8, подключили Collabora и Talk, настроили SSO через их существующий Active Directory (LDAP-коннектор).
- День 3. Развернули почтовый сервер на Postfix/Dovecot, настроили DKIM/SPF/DMARC, получили хороший score у spamcheck.postmarkapp.com.
- Дни 4–5. Автоматическая миграция почты с помощью
imapsync— 2,3 ТБ писем перенеслись за 36 часов в фоновом режиме, пока все продолжали работать со старой почтой. - Дни 6–7. Миграция OneDrive — использовали утилиту
rcloneдля переноса 2,7 ТБ файлов в Nextcloud. Параллельно сотрудники продолжали работать со старым OneDrive. - День 8. Миграция календарей и контактов через экспорт .ics/.vcf из Outlook и импорт в Nextcloud Groupware.
- День 9. Тестирование в пилотной группе из 5 сотрудников (бухгалтерия + руководство). Настроили клиенты Outlook через CalDAV-плагин, установили Nextcloud Desktop, проверили Collabora.
- День 10. Переключение MX-записи домена на новый почтовый сервер, раскатка Nextcloud Desktop на все 40 рабочих станций через GPO, обучение сотрудников — 2 часа в двух группах.
- День 11. Мониторинг, поддержка, быстрое решение инцидентов первого дня (3 проблемы с Outlook — все решили за час).
На следующий день после переключения директор написал: «Ребят, всё работает. Я даже расстроен — ждал катастрофы». Лучший отзыв, который мы когда-либо получали.
Что оказалось сложнее, чем ожидалось
- Синхронизация с Outlook. Стандартный Outlook не умеет CalDAV/CardDAV нативно. Пришлось ставить бесплатный плагин Outlook CalDAV Synchronizer — работает, но иногда требует перезапуска Outlook после долгого сна. Часть сотрудников перешла на веб-интерфейс Nextcloud и осталась довольна.
- Teams-звонки между компаниями. Если клиент звонит через свой Teams и зовёт в встречу — наш сотрудник заходит по ссылке в браузере без аккаунта. Если наоборот — отправляем ссылку на Nextcloud Talk, внешний участник подключается тоже по браузеру. Аналоги одинаково работают.
- Поиск по архиву почты. Полнотекстовый поиск в Nextcloud Mail через Elasticsearch/OpenSearch надо настраивать отдельно. Мы поставили OpenSearch на отдельной VM — индексация 2,3 ТБ заняла двое суток, но после этого поиск работает быстрее, чем в OWA.
- Размер архивов писем. У одного топ-менеджера ящик был на 48 ГБ с 380 000 писем. imapsync справился, но потребовалось 18 часов только на него.
Безопасность и резервирование
Защиту мы выстроили так, чтобы клиент спал спокойно:
- 2FA через TOTP (Google Authenticator) — обязательно для всех, у кого доступ к финансам.
- Brute-force защита — после 5 неудачных попыток IP блокируется на час.
- End-to-end encryption для чувствительных папок — ключ шифрования только у владельца.
- Бэкап базы PostgreSQL каждый час через WAL-G в S3-хранилище, файлы — полный снимок еженедельно + инкременты ежедневно.
- Скрипт автоматической проверки бэкапа — раз в неделю разворачивает последнюю копию в тестовую VM, проверяет целостность.
- Локальный NAS с «холодной» копией всех файлов в офисе клиента — на случай, если и облако провайдера, и S3-хранилище одновременно откажут.
Стоимость
| Статья | Сумма |
|---|---|
| Разовый проект миграции | 145 000 ₽ |
| VPS и ресурсы в месяц | 6 800 ₽ |
| Collabora Online (open source, бесплатно) | 0 ₽ |
| Nextcloud Community Edition | 0 ₽ |
| Поддержка на абонентке АйТи Фреш | входит в общий тариф |
| Экономия против Office 365 в год | ~840 000 ₽ |
Что мы ведём на абонентке
- Обновление Nextcloud и приложений (раз в 1–2 месяца).
- Мониторинг дисков, очередей, Redis через Zabbix с алертами в Telegram.
- Обновления почтового сервера и антиспама.
- Контроль очередей DKIM и борьба с блокировками Google/Mail.ru в первую неделю после миграции.
- Помощь сотрудникам с настройкой мобильных клиентов.
- Ежеквартальная проверка бэкапа через реальное восстановление.
Обслуживание через occ: команды, которые я запускаю после каждого обновления
Большая часть регламентных работ с Nextcloud делается консольной утилитой occ, которую запускают от имени пользователя веб-сервера. Мой порядок при обновлении такой:
# Перевести инстанс в режим обслуживания на время работ
sudo -E -u www-data php occ maintenance:mode --on
# ... обновление ...
sudo -E -u www-data php occ maintenance:mode --off
# Добавить индексы и столбцы, которые новая версия ожидает в БД
sudo -E -u www-data php occ db:add-missing-indices
sudo -E -u www-data php occ db:add-missing-columns
sudo -E -u www-data php occ db:add-missing-primary-keys
# Встроенная самопроверка (то же, что в «Обзоре» админки)
sudo -E -u www-data php occ setupchecks
После обновления админка часто предупреждает об отсутствующих индексах — команды db:add-missing-* закрывают это предупреждение. На больших таблицах добавление индексов идёт долго, поэтому я запускаю их в то же окно обслуживания, а не посреди рабочего дня.
Если файлы кладут в хранилище в обход Nextcloud (например, копированием на сервер), их не видно пользователям, пока не обновлён файловый кэш. Для этого есть occ files:scan — для одного пользователя или с ключом --all для всех сразу.
Фоновые задачи: почему я всегда ставлю системный cron
Nextcloud выполняет фоновые задачи (очистку корзины и версий, уведомления, обработку очередей приложений) тремя способами: AJAX, Webcron и Cron. Документация прямо указывает на ограничение Webcron: при вызове раз в 5 минут это не больше 288 фоновых задач в сутки, что годится только для очень маленьких инсталляций. Поэтому на всех наших серверах режим один — системный cron под пользователем веб-сервера:
# crontab -u www-data -e
*/5 * * * * php -f /var/www/nextcloud/cron.php
# переключить режим в самом Nextcloud
sudo -E -u www-data php occ background:cron
Путь к cron.php подставляю по фактическому каталогу установки. Проверка простая: в разделе «Основные настройки» админки видно время последнего выполнения фоновых задач — если оно отстаёт больше чем на несколько минут, cron не отрабатывает.
FAQ
- Заменит ли Nextcloud полный Microsoft 365?
- Да, в части коллаборации: файлы, календари/контакты, видеозвонки, редакторы документов. Не заменяет серверный Exchange с тонкими правилами и архивными BI-функциями.
- Как Nextcloud работает с российскими сотрудниками и санкциями?
- Nextcloud — open source, сервер хостится в РФ или на своём VPS. Никаких блокировок и ежегодных платежей Microsoft. Данные остаются внутри компании, что закрывает 152-ФЗ.
- Сколько весит сервер Nextcloud для 40 пользователей?
- Рекомендуемая конфигурация: 8 vCPU, 16 ГБ RAM, 500 ГБ NVMe под базу и 1–4 ТБ HDD под файлы. Это один VPS за 3 500–5 000 ₽/мес.
- Сколько стоит внедрение Nextcloud в АйТи Фреш?
- Базовый проект: установка, миграция почты и файлов с Office 365, настройка резервного копирования, обучение — 145 000 ₽. Срок 8–10 рабочих дней.
Источники
- Nextcloud Admin Manual: Background jobs — режимы AJAX/Webcron/Cron, лимит 288 задач в сутки, строка crontab */5.
- Nextcloud Admin Manual: occ — database commands — db:add-missing-indices, db:add-missing-columns, db:add-missing-primary-keys.
- Nextcloud Admin Manual: occ — system commands — maintenance:mode --on/--off, setupchecks, background:cron.

