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

Установка Wekan на Debian 10 с Nginx и бесплатным SSL

• 5 min read • DevOps • Обновлено 19 Nov 2025
Установка Wekan на Debian 10 — Nginx и Let's Encrypt
Установка Wekan на Debian 10 — Nginx и Let's Encrypt

Wekan — открытая Kanban-доска на Meteor, которую удобно развернуть на Debian 10 с помощью snap. В инструкции показаны этапы: обновление сервера, установка snap и Wekan, настройка Nginx как обратного прокси, получение бесплатного сертификата Let’s Encrypt через Certbot, базовая проверка работы и подсказки по безопасности и резервному копированию. Замените примеры доменов на свои и проверьте DNS перед началом.

О чём эта статья

Данная пошаговая инструкция помогает развернуть Wekan на Debian 10 (Buster), пропустить трафик через Nginx и защитить соединение сертификатом Let’s Encrypt. Подойдёт для небольших команд и личных инстансов.

Важно: заменить wekan.linuxbuz.com на ваш реальный домен во всех конфигурациях.

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

  • Сервер с Debian 10 (Buster) с root-доступом.
  • Действующий домен, указывающий на IP сервера (A/AAAA записи).
  • Настроенный пароль root или доступ через sudo.

Начинаем — обновление системы

Перед установкой обновите систему и перезагрузите при необходимости:

apt-get update -y
apt-get upgrade -y

После завершения обновления рекомендуется перезагрузить сервер:

reboot

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

Установка Wekan через snap

Snap — самый быстрый способ получить Wekan на Debian 10.

  1. Установите snapd:
apt-get install snapd -y
  1. Установите Wekan через snap:
snap install wekan

Snap автоматически запустит Wekan и встроенный MongoDB. Проверить статус сервиса:

systemctl status snap.wekan.wekan

Пример ожидаемого вывода (сокращённо):

? snap.wekan.wekan.service - Service for snap application wekan.wekan
   Loaded: loaded (/etc/systemd/system/snap.wekan.wekan.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2019-12-22 07:43:34 UTC; 7s ago
 Main PID: 7836 (wekan-control)
    Tasks: 11 (limit: 2359)
   Memory: 156.3M
   CGroup: /system.slice/snap.wekan.wekan.service

По умолчанию Wekan слушает порт 8080; для изменения порта (например, на 3001):

snap set wekan port='3001'

Примените изменения перезапуском сервисов:

systemctl restart snap.wekan.mongodb
systemctl restart snap.wekan.wekan

Управление сервисами Wekan и MongoDB

Обычные команды управления:

# Остановить/запустить Wekan
systemctl stop snap.wekan.wekan
systemctl start snap.wekan.wekan

# Остановить/запустить встроенную MongoDB
systemctl stop snap.wekan.mongodb
systemctl start snap.wekan.mongodb

Совет: используйте systemctl status … для диагностики и journalctl -u для логов.

Настройка Nginx как обратного прокси

Рекомендуется запускать Wekan за обратным прокси (Nginx) для TLS, логирования и балансировки.

  1. Установите Nginx:
apt-get install nginx -y
  1. Откройте /etc/nginx/nginx.conf и убедитесь, что задан server_names_hash_bucket_size. Например, отредактируйте файлом:
nano /etc/nginx/nginx.conf

Найдите и раскомментируйте/установите:

        server_names_hash_bucket_size 64;
  1. Перезапустите Nginx:
systemctl restart nginx
  1. Создайте виртуальный хост для Wekan. Откройте файл:
nano /etc/nginx/conf.d/wekan.conf

Добавьте конфигурацию (замените server_name на ваш домен):

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}
server {
    listen 80;
    server_name wekan.linuxbuz.com;
    if ($http_user_agent ~ "MSIE" ) {
        return 303 https://browser-update.org/update.html;
    }
    location / {
        proxy_pass http://127.0.0.1:3001;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade; # allow websockets
        proxy_set_header Connection $connection_upgrade;
        proxy_set_header X-Forwarded-For $remote_addr; # preserve client IP
    }
}
  1. Проверка синтаксиса и перезапуск:
nginx -t
systemctl restart nginx

Примечание: убедитесь, что порт 3001 совпадает с тем, который настроен в snap (см. snap get wekan).

Защита Wekan с помощью Let’s Encrypt (Certbot)

Для получении бесплатного сертификата используем Certbot с плагином для Nginx.

  1. Добавьте репозиторий backports (если ещё не добавлен):
echo "deb http://ftp.debian.org/debian buster-backports main" >> /etc/apt/sources.list
  1. Обновите и установите Certbot для Nginx:
apt-get update -y
apt-get install python-certbot-nginx -t buster-backports
  1. Запрос сертификата (замените домен на ваш):
certbot --nginx -d wekan.linuxbuz.com

Во время выполнения Certbot попросит ввести email и согласиться с условиями. Затем спросит, нужно ли перенаправлять HTTP на HTTPS — рекомендовано выбирать перенаправление (Redirect).

После успешной установки Certbot сохранит ключи в /etc/letsencrypt/live/<ваш_домен>/ и напомнит про автоматическое обновление через certbot renew.

Важно: убедитесь, что порт 80 открыт в брандмауэре и DNS уже указывает на сервер, иначе проверка http-01 не пройдёт.

Доступ к веб-интерфейсу Wekan

Откройте https://wekan.linuxbuz.com в браузере (замените домен). Первая страница — экран входа/регистрации.

Wekan логотип и приветственная страница

Пример шагов регистрации и входа:

Страница входа Wekan

Создание учётной записи Wekan

Вход в систему Wekan

Доска Wekan после входа

Создайте аккаунт, подтвердите данные и войдите — вы увидите панель управления и первую Kanban-доску.

Частые проблемы и устранение неполадок

  • Certbot не может пройти проверку: проверьте DNS (A-запись), откройте 80/443 и убедитесь, что Nginx обслуживает запросы.
  • Вебсокеты не работают: убедитесь, что в конфигурации Nginx указаны proxy_set_header Upgrade и Connection, а также proxy_http_version 1.1.
  • Wekan не запускается: смотрите логи сервиса и MongoDB: journalctl -u snap.wekan.wekan и journalctl -u snap.wekan.mongodb.
  • Порт конфликтует: проверьте, какой порт слушает Wekan (snap get wekan или systemctl status) и прокси-конфигурацию.

Совет: для диагностики временно включите подробное логирование Nginx и просматривайте /var/log/nginx/error.log.

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

Wekan через snap использует встроенную MongoDB. Регулярно делайте бэкапы данных:

  • Создавайте резервные копии каталога /var/snap/wekan (или соответствующего пути в snap) и каталога /var/snap/wekan/common (если есть вложения).
  • Экспорт базы через mongodump, подключаясь к экземпляру MongoDB snap (учтите порт, обычно 27019):
# Пример использования mongodump (установите mongodb-clients если нужно)
mongodump --host 127.0.0.1 --port 27019 --db wekan --out /root/wekan-backups/$(date +%F)
  • Для восстановления используйте mongorestore.

Важно: тестируйте процесс восстановления на тестовом сервере.

Безопасность и рекомендации по эксплуатации

  • Настройте автоматическое обновление snap пакетов или своевременно проверяйте обновления: snap refresh wekan.
  • Настройте регулярное обновление сертификатов: certbot renew (можно в cron или systemd timer).
  • Разграничьте доступ: используйте сильные пароли, двухфакторную аутентификацию, если доступна через интеграции.
  • Ограничьте доступ к серверу по SSH (ключи, отключите root по паролю, настройте Fail2Ban).
  • Храните бэкапы ключей Let’s Encrypt и конфигурации Certbot в безопасном месте.

Альтернативные способы установки

  • Docker: официальный/сообществный образ Wekan позволяет быстро масштабировать и изолировать зависимости.
  • Установка вручную (git, Meteor): полезно для разработчиков и кастомных сборок, но сложнее в сопровождении.

Когда выбирать:

  • Snap — быстрый старт, минимум конфигурации.
  • Docker — контроль окружения, удобство развёртывания и миграции.
  • Ручная сборка — для разработки и модификаций кода.

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

  1. Домен корректно указывает на сервер; SSL валиден (https открыт и не вызывает предупреждений).
  2. Wekan отвечает через Nginx и показывается интерфейс досок.
  3. WebSocket соединения работают (обновление карточек и реальное взаимодействие без ошибок).
  4. Сделан хотя бы один бэкап базы данных и проверено восстановление на тестовом экземпляре.

Роль‑ориентированный чеклист

Администратор:

  • Обновил систему и snapd
  • Установил Wekan и проверил systemctl status
  • Настроил Nginx и сертификат
  • Сделал тестовый бэкап и восстановление

Пользователь:

  • Зарегистрировался и создал доску
  • Протестировал создание/перемещение карточек
  • Проверил доступность медиа (вложения)

Мини‑методология обновлений (чтобы не сломать прод)

  1. Тестирование на staging — зеркале продовой конфигурации.
  2. Создать бэкап БД и конфигураций перед обновлением.
  3. Обновить snap/dockers в maintenance window.
  4. Проверить логи и функциональность — WebSocket, авторизация.
  5. Откат по заранее проверенному бэкапу при критических ошибках.

Краткий глоссарий (1‑строчные определения)

  • Snap: система упаковки приложений для Linux, упрощающая установку и обновления.
  • Certbot: клиент Let’s Encrypt для получения и установки TLS-сертификатов.
  • Reverse proxy: сервер, перенаправляющий запросы к бэкендам (например, Nginx).
  • WebSocket: протокол для постоянного двустороннего соединения между клиентом и сервером.

Резюме

Вы установили Wekan через snap, настроили Nginx как обратный прокси, получили бесплатный SSL от Let’s Encrypt и проверили базовую работоспособность. Для надёжной эксплуатации — автоматизируйте обновления, регулярно делайте бэкапы и тестируйте восстановление.

Важное

  • Всегда заменяйте примерные домены на свои.
  • Не пренебрегайте резервным копированием перед обновлением.

Дополнительные ресурсы и ссылки

  • Документация Wekan: официальный репозиторий и вики проекта.
  • Certbot: документация по автоматическому обновлению сертификатов.
  • Nginx: руководство по настройке прокси и WebSocket.
Поделиться: 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 быстро