Гид по технологиям

Установка Onlyoffice Document Server на Debian Buster 10 с PostgreSQL, Nginx и Let's Encrypt

• 7 min read • DevOps • Обновлено 23 Nov 2025
Установка Onlyoffice на Debian Buster 10
Установка Onlyoffice на Debian Buster 10

Для кого эта инструкция

Коротко: для системных администраторов и инженеров DevOps, которым нужно развернуть Onlyoffice Document Server на выделенном Debian Buster 10 с использованием PostgreSQL и Nginx. Если вы развертываете в контейнерах или используете другую ОС, смотрите раздел “Альтернативные подходы”.

Краткие термины

  • Onlyoffice Document Server — сервер для совместного редактирования документов.
  • Let’s Encrypt — бесплатный центр сертификации для выдачи SSL/TLS сертификатов.
  • DHPARAM — параметры Диффи-Хеллмана для усиления обмена ключами в TLS.

Содержание

  • Предварительные требования
  • Шаг 1: Установка зависимостей пакетов
  • Шаг 2: Установка и настройка PostgreSQL
  • Шаг 3: Генерация SSL-сертификата и dhparam
  • Шаг 4: Установка ONLYOFFICE Document Server
  • Шаг 5: Настройка HTTPS для Document Server
  • Шаг 6: Тестирование
  • Критерии приёмки
  • Рольовые чек-листы
  • Устранение неисправностей и советы
  • Альтернативные подходы и миграция
  • Безопасность и соответствие
  • Резюме

Предварительные требования

Для корректной работы Document Server рекомендуется минимальная конфигурация сервера:

  • 2 ГБ ОЗУ
  • 4 ГБ SWAP
  • 2 vCPU (ядра)
  • 40 ГБ свободного диска
  • Доменное имя с A/AAAA записью, указывающей на сервер
  • Доступ root/sudo

Важно: для продакшна рекомендуется выделять больше памяти и CPU в зависимости от числа одновременных пользователей.

Шаг 1 — Установка зависимостей пакетов

В этом шаге устанавливаются необходимые системные службы: Redis, RabbitMQ и nginx-extras — они требуются Document Server для очередей, кэша и веб-сервера.

Обновите списки пакетов и установите зависимости:

sudo apt update
sudo apt install redis-server rabbitmq-server nginx-extras gnupg2

Проверьте, что сервисы включены и автоматически запускаются при загрузке:

systemctl is-enabled nginx
systemctl is-enabled rabbitmq-server
systemctl is-enabled redis-server

Ожидаемый результат: команды должны вернуть “enabled”. Если какой-то сервис не включён — включите через:

sudo systemctl enable <имя_сервиса>

Совет: при проблемах с зависимостями посмотрите вывод apt и лог /var/log/apt/term.log.

Иллюстрация подготовки сервера

ALT: Подготовка сервера Debian перед установкой Onlyoffice — терминал с командами обновления пакетов

Шаг 2 — Установка и настройка PostgreSQL

Onlyoffice использует PostgreSQL как базу данных. Установим PostgreSQL и создадим базу и пользователя для Document Server.

Установите PostgreSQL:

sudo apt install postgresql

Запустите и добавьте в автозагрузку:

systemctl start postgresql
systemctl enable postgresql

Войдите в консоль PostgreSQL под системным пользователем postgres:

sudo -i -u postgres psql

Внутри psql выполните команды для создания базы и роли (в примере имя и пароль — onlyoffice):

CREATE DATABASE onlyoffice;
CREATE USER onlyoffice WITH password 'onlyoffice';
GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;

Выйдите из psql командой \q.

Установка PostgreSQL

ALT: Установка и создание базы данных PostgreSQL для Onlyoffice — окно терминала с psql

Совет по безопасности: замените пароль ‘onlyoffice’ на сложный пароль и храните в менеджере секретов. При необходимости настройте pg_hba.conf для ограничения доступа по IP.

Шаг 3 — Генерация SSL сертификата Let’s Encrypt и dhparam

Мы будем запускать Document Server по HTTPS. Генерируем сертификат Let’s Encrypt и файл dhparam для повышения безопасности TLS.

Установите certbot:

sudo apt install certbot

Замените в команде домен и email на свои и выполните генерацию (сервер должен быть доступен по HTTP, порт 80):

certbot certonly --standalone --agree-tos -m youremail@example.com -d your.domain.tld

После успешного выполнения сертификаты будут в каталоге /etc/letsencrypt/live/your.domain.tld/

Генерация dhparam может занять продолжительное время (особенно для 4096 бит). Сгенерируйте его и поместите в /etc/ssl/certs/:

cd /etc/ssl/certs/
openssl dhparam -out dhparam.pem 4096

Файл /etc/ssl/certs/dhparam.pem будет использован в конфигурации Nginx.

Важно: продвинутые админы могут сгенерировать dhparam меньшей длины (2048) при ограниченных ресурсах, но 4096 даёт лучший уровень безопасности.

Шаг 4 — Установка ONLYOFFICE Document Server

Добавим GPG-ключ и репозиторий ONLYOFFICE (репозиторий рассчитан на старую ветку, но совместим с Buster):

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5
sudo echo "deb https://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list

Обновите списки и установите пакет:

sudo apt update
sudo apt install onlyoffice-documentserver

Во время установки пакет может запросить пароль к базе данных PostgreSQL для подключения — введите тот пароль, который вы создали ранее (‘onlyoffice’ в примере).

Добавление репозитория Onlyoffice

ALT: Добавление репозитория Onlyoffice в список источников APT — снимок терминала и файл списка

После установки Document Server будет слушать по HTTP на порту 80 (по умолчанию). Не запускайте nginx до настройки HTTPS, иначе certbot не сможет получить сертификат в режиме standalone.

Шаг 5 — Настройка HTTPS для Document Server

Document Server поставляет шаблоны конфигурации Nginx в /etc/onlyoffice/documentserver/nginx/. Мы используем SSL-шаблон ds-ssl.conf.tmpl.

Остановите nginx перед изменениями:

systemctl stop nginx

Скопируйте шаблон SSL в рабочий конфиг:

cd /etc/onlyoffice/documentserver/nginx/
cp ds-ssl.conf.tmpl ds.conf

Откройте файл ds.conf в редакторе (vim/nano) и укажите пути к сертификатам Let’s Encrypt:

ssl_certificate /etc/letsencrypt/live/your.domain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/your.domain.tld/privkey.pem;
ssl_dhparam /etc/ssl/certs/dhparam.pem;

Сохраните файл.

Проверьте конфигурацию Nginx:

nginx -t

Если проверка успешна, перезапустите nginx:

systemctl restart nginx

После этого Document Server будет доступен по HTTPS.

Настройка SSL для Onlyoffice

ALT: Конфигурация Nginx для Onlyoffice с указанием путей к сертификатам Let’s Encrypt и dhparam

Совет: автоматизируйте обновление сертификатов с помощью cron или systemd timer (certbot renew). После обновления перезапускайте nginx.

Шаг 6 — Тестирование

Откройте в браузере адрес вашего сервера, например:

https://your.domain.tld/

Вы должны увидеть страницу приветствия Onlyoffice Document Server, подтверждающую, что сервер запущен.

Onlyoffice запущен

ALT: Страница приветствия Onlyoffice Document Server в браузере — подтверждение успешной установки

Проверочные команды и сценарии:

  • Проверка процесса Document Server:
systemctl status onlyoffice-documentserver
  • Проверка доступности HTTPS порта из консоли:
curl -vk https://your.domain.tld/ | head -n 30
  • Проверка логов Nginx и приложения:
journalctl -u nginx -n 200
journalctl -u onlyoffice-documentserver -n 200
tail -f /var/log/nginx/error.log

Критерии приёмки

  1. Веб-страница Document Server доступна по HTTPS и сертификат валиден.
  2. Службы nginx, rabbitmq-server, redis-server и postgresql запущены и enabled.
  3. База данных onlyoffice существует и к ней можно подключиться.
  4. Команда curl возвращает корректный HTML-контент без ошибок TLS.
  5. Логи не содержат повторяющихся ошибок и исключений при старте.

Рольовые чек-листы

Admin (системный администратор):

  • Проверить конфигурацию DNS и открытые порты 80/443.
  • Установить зависимости и Document Server.
  • Выполнить настройку TLS и dhparam.
  • Настроить бэкапы базы данных.

DevOps (развёртывание):

  • Настроить CI/CD для обновлений только при проверенном тестовом окружении.
  • Автоматизировать renew сертификатов и перезапуск nginx.
  • Мониторить метрики (CPU/память/латентность).

Security engineer:

  • Проверить настройки firewall (ufw/iptables) — открыть только необходимые порты.
  • Настроить fail2ban для защиты от грубфорса.
  • Провести аудит конфигурации TLS (оценивая шифры и поддержку TLSv1.2/1.3).

Устранение неисправностей и советы

  • Если certbot не может получить сертификат: убедитесь, что порт 80 открыт и nginx остановлен (для –standalone). Либо используйте webroot-плагин.
  • Если nginx не стартует: выполните nginx -t и проверьте синтаксис конфигурации. Частая ошибка — неправильный путь к сертификату.
  • Проблемы подключения к PostgreSQL: проверьте pg_hba.conf и статус службы postgresql.
  • Если Document Server возвращает ошибки при редактировании документов: проверьте логи onlyoffice-documentserver, redis и rabbitmq.

Мини-рутинная проверка (после изменений):

systemctl restart onlyoffice-documentserver nginx
journalctl -u onlyoffice-documentserver -n 200 --no-pager
nginx -t && systemctl restart nginx

Альтернативные подходы и миграция

  1. Docker / Docker Compose:
    • Onlyoffice предоставляет контейнерные образы — целесообразно для изоляции и упрощённого обновления.
    • Подходит, если вы уже используете контейнерную платформу.
  2. Kubernetes:
    • Для крупной инфраструктуры и масштабирования используйте K8s с PersistentVolumes и Secrets для сертификатов.
  3. Сторонние RPM/DEB источники:
    • Можно использовать официальные пакеты для других дистрибутивов или собрать из исходников при особых требованиях.

Когда не использовать этот способ:

  • Если вы хотите быстро протестировать продукт на локальной машине — проще запустить Docker-контейнер.
  • Если у вас ограниченные ресурсы — контейнеры могут быть более оптимальны для лёгкой разработки.

Безопасность и соответствие

  • Резервное копирование: настраивайте регулярные бэкапы PostgreSQL и ключевых конфигурационных файлов.
  • Секреты: храните пароли и приватные ключи в безопасном хранилище (Vault, AWS Secrets Manager и т.п.).
  • GDPR/Конфиденциальность: оцените, какие документы обрабатываются и где хранятся; при необходимости настройте локальные политики хранения и шифрования на уровне диска.

Рекомендации по усилению TLS:

  • Включите только TLSv1.2 и TLSv1.3.
  • Используйте современные шифры и HSTS.

Проверочные тесты и приёмка (короткий чек-лист)

  • Откройте https://your.domain.tld — страница загрузилась.
  • Попробуйте открыть и отредактировать документ через интерфейс (создание, сохранение).
  • Выполните curl и убедитесь, что заголовок ответа содержит “Strict-Transport-Security” при включённом HSTS.
  • Выполните проверку SSL через инструменты (openssl s_client или внешние сканеры).

Сводка

Вы установили Onlyoffice Document Server на Debian Buster 10, настроили PostgreSQL, сгенерировали сертификаты Let’s Encrypt и dhparam и включили HTTPS через Nginx. В руководстве приведены проверки работоспособности, рекомендации по безопасности, роли и сценарии устранения неполадок.

Возможные следующие шаги:

  • Настроить интеграцию с приложением (Nextcloud, Confluence, собственный портал).
  • Внедрить мониторинг и алертинг для служб.
  • Планировать масштабирование в зависимости от нагрузки.

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро