Установка MyBB на Debian 10 (buster) — пошаговое руководство
Это пошаговое руководство покажет, как установить форум MyBB на Debian 10 (buster): подготовить систему, поставить PHP и MariaDB, получить сертификат Let’s Encrypt с помощью acme.sh, настроить Nginx, установить MyBB и выполнить базовое укрепление безопасности. Подходит для небольших и средних сообществ; альтернативы и чек‑листы в конце.
Введение
MyBB — бесплатная и открытая платформа для форумов. Простая в использовании и расширяемая с помощью плагинов и тем. Определение: MyBB — форумное ПО с традиционной архитектурой PHP + СУБД.
Важно: замените все вхождения example.com на ваш реальный домен.
Основные требования
Минимальные требования для MyBB 1.8 и Merge System 1.8:
- PHP версии 5.2 и выше; рекомендуется PHP 7.3 или новее. PHP — язык выполнения скриптов на сервере.
- СУБД: MySQL ≥ 5.0, PostgreSQL ≥ 8.1 или SQLite ≥ 3. Рекомендуются MariaDB/MySQL 8.0 или PostgreSQL 10.
- Веб‑сервер: Apache, Nginx, Lighttpd или IIS.
- PHP‑расширения: SimpleXML, mbstring, gd и соответствующее расширение для вашей СУБД (php-mysql или php-pgsql).
Примечание: в примерах используется домен example.com и пользователь www-data. Подставьте свои значения.
Требования перед началом
- Сервер с Debian 10 (buster).
- Нерoot‑пользователь с правами sudo.
Начальные шаги
Проверьте версию Debian:
lsb_release -ds
# Debian GNU/Linux 10 (buster)Настройте часовой пояс:
sudo dpkg-reconfigure tzdataОбновите пакеты системы:
sudo apt update && sudo apt upgrade -yУстановите базовые утилиты:
sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-httpsШаг 1 — Установка PHP и расширений
Установите PHP и необходимые расширения (пример для PHP 7.3):
sudo apt install -y php php-cli php-fpm php-gd php-mbstring php-xml php-mysql php-pgsqlПроверка загруженных расширений:
php -m
# пример вывода
# ctype
# curl
# exif
# fileinfo
# ...Проверка версии PHP:
php --version
# пример вывода
# PHP 7.3.x (cli)PHP‑FPM обычно автоматически запускается и включается для автозапуска на Debian 10.
Шаг 2 — Установка acme.sh и получение сертификата Let’s Encrypt (опционально)
HTTPS не обязателен, но рекомендуется. Для получения TLS‑сертификата используем acme.sh — лёгкий shell‑клиент для Let’s Encrypt.
Установка acme.sh:
sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --accountemail you@example.com
source ~/.bashrc
cd ~Проверка версии:
acme.sh --version
# пример: v2.8.2Получите RSA и ECDSA сертификаты для вашего домена:
# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256Для тестовых сертификатов добавьте флаг --staging.
После успешного выполнения сертификаты окажутся в домашней директории пользователя, например:
- RSA: /home/username/example.com
- ECDSA: /home/username/example.com_ecc
Создайте директории для хранения сертификатов system‑wide (используем /etc/letsencrypt):
sudo mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_eccУстановите (скопируйте) сертификаты в системную папку и настройте команду перезагрузки nginx:
# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"acme.sh автоматически обновляет сертификаты при необходимости.
Выйдите из root и вернитесь к обычному sudo‑пользователю:
exitВажно: если вы используете брандмауэр, временно откройте порт 80 для валидации standalone. После установки закройте его или настройте перенаправление.
Шаг 3 — Установка MariaDB и создание базы данных
Установите MariaDB:
sudo apt install -y mariadb-serverПроверка версии:
mysql --version
# пример: mysql Ver 15.1 Distrib 10.3.x-MariaDBЗапустите скрипт безопасности:
sudo mysql_secure_installationОтветьте на вопросы, рекомендуемые значения отмечены ниже:
Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? Y
Disallow root login remotely? Y
Remove test database and access to it? Y
Reload privilege tables now? YСоздайте базу данных и пользователя для MyBB:
sudo mysql -u root -p
# введите пароль
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exitЗамените dbname, username и password на свои значения.
Шаг 4 — Установка и настройка Nginx
Установите Nginx:
sudo apt install -y nginxПроверка версии:
sudo nginx -v
# nginx version: nginx/1.14.2Создайте конфигурацию сайта в /etc/nginx/sites-available/mybb.conf. Пример конфигурации:
server {
listen 80;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
server_name forum.example.com;
root /var/www/mybb;
location / {
index index.php;
}
# Deny access to internal files.
location ~ /(inc|uploads/avatars) {
deny all;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}Активируйте конфигурацию и проверьте синтаксис:
sudo ln -s /etc/nginx/sites-available/mybb.conf /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx.serviceСоветы по Nginx:
- Для автоматического перенаправления с HTTP на HTTPS добавьте блок server (listen 80) с редиректом на https://$host$request_uri.
- При изменении сокета PHP‑FPM проверьте путь в fastcgi_pass (php7.4, php8.0 и т.д.).
Шаг 5 — Установка MyBB
Создайте директорию для сайта и скачайте дистрибутив MyBB:
sudo mkdir -p /var/www/mybb
cd /var/www/mybb
sudo wget https://resources.mybb.com/downloads/mybb_1821.zip
sudo unzip mybb_1821.zip
sudo mv /var/www/mybb/Upload/* /var/www/mybbУдалите архив и временную папку:
sudo rm mybb_1821.zip
sudo rmdir UploadИзмените владельца на www-data (пользователь веб‑сервера):
sudo chown -R www-data:www-data /var/www/mybbОткройте в браузере https://example.com/install и следуйте мастеру установки. После успешной установки обязательно удалите каталог install:
sudo rm -rf /var/www/mybb/install/Шаг 6 — Завершение настройки MyBB
Перейдите в браузере в каталог install вашего сайта. Мастер установки последовательно проверит требования, создаст таблицы и предложит задать основные параметры форума, включая создание администратора.

На этапе лицензии подтвердите лицензионное соглашение и нажмите “Next”.

Мастер проверит системные требования. Нужные поля будут помечены.

Выполните ввод параметров доступа к базе данных.

Мастер создаст таблицы и заполнит их данными по умолчанию.

Загрузятся данные тем и шаблонов интерфейса.

Задайте базовые параметры форума: название, URL, часовой пояс и т. п.

Создайте администратора форума — эта учётная запись получит полный доступ в AdminCP.

После завершения вы увидите страницу “Finish Setup” — установка завершена.

Для входа в административную панель добавьте /admin к URL:

Пример интерфейса администрирования:

Пример публичного интерфейса форума:

Поздравляем — MyBB установлен.
Безопасность и повышение надёжности (рекомендации)
- Удалите каталог установки (/install). Вы уже сделали это, но проверьте ещё раз.
- Проверьте права доступа: файлы должны принадлежать www-data, а конфигурационные файлы — с минимальными правами (600/640).
- Закройте директорию uploads/avatars и inc в Nginx (приведено в конфигурации).
- Настройте регулярное резервное копирование базы данных и папки uploads (S3/rsync/строгие локальные бэкапы).
- Включите HTTPS и HSTS; настройте автоматическое перенаправление с HTTP на HTTPS.
- Обновляйте систему и плагины MyBB; проверьте совместимость перед обновлением.
- Ограничьте доступ к AdminCP по IP или через VPN при необходимости.
Резервное копирование и откат
Минимальный набор для восстановления после сбоя:
- Полная дамп базы данных (mysqldump) с архивированием и ротацией.
- Резервирование папки /var/www/mybb/uploads (аватары, вложения).
- Конфигурационные файлы Nginx и PHP‑FPM.
Пример простой команды дампа MariaDB:
mysqldump -u username -p dbname > /var/backups/mybb-db-$(date +%F).sqlКритерии приёмки:
- Форум доступен по HTTPS и отвечает кодом 200.
- Вход в AdminCP работает с правами администратора.
- Таблицы MyBB созданы и заполнены.
- Резервные копии создаются по расписанию.
Отладка частых проблем
- 502 Bad Gateway после установки PHP‑FPM: проверьте путь сокета fastcgi_pass и статус php7.3-fpm.service.
- Ошибка подключения к базе: проверьте credentials в config.php и доступность MariaDB.
- Белая страница PHP: включите display_errors в тестовой среде или смотрите логи /var/log/nginx/error.log и /var/log/php7.3-fpm.log.
- Проблемы с правами: проверьте владельца и права на /var/www/mybb и вложения.
Альтернативные подходы
- Apache вместо Nginx: используйте mod_php или PHP‑FPM с конфигурацией VirtualHost.
- Docker: контейнеризация MyBB + СУБД упрощает развёртывание и миграции. Подходит для CI/CD и изолированных окружений.
- Управляемый хостинг: если вы не хотите администрировать сервер — выбирайте провайдера с поддержкой PHP‑форумов.
Чек‑лист по ролям
Операторы (Ops):
- Установить и обновить пакеты.
- Настроить Nginx, PHP‑FPM, сертификаты.
- Настроить бэкапы и мониторинг.
Разработчики (Dev):
- Проверить совместимость плагинов с версией MyBB.
- Настроить среду для разработки и миграции.
Администраторы форума (Admin):
- Создать учётную запись администратора.
- Настроить тематические разделы и права пользователей.
- Проводить регулярные проверки безопасности.
Мини‑методология развертывания
- Подготовка сервера (обновления, брандмауэр).
- Установка стеков (PHP, СУБД, веб‑сервер).
- Получение сертификата и настройка HTTPS.
- Развёртывание MyBB и проверка установки.
- Резервное копирование и мониторинг.
- Регулярные обновления и тестирование плагинов.
Полезные советы по миграции и обновлению
- Перед обновлением MyBB сделайте полный бэкап базы и файлов.
- Тестируйте обновление на копии базы в отдельной среде.
- Отключайте сторонние плагины перед крупным обновлением и включайте по одному.
Совместимость и примечания
- Проверьте совместимость версий PHP и MyBB; старые плагины могут требовать PHP 5.x.
- При использовании PostgreSQL меняются драйверы и некоторые SQL‑диалекты.
GDPR и приватность
- Обеспечьте прозрачную политику конфиденциальности для пользователей форума.
- Минимизируйте хранение персональных данных и применяйте резервирование с учётом шифрования при необходимости.
Быстрая карта принятия решений (Mermaid)
flowchart TD
A[Подготовка сервера] --> B[Установка PHP и СУБД]
B --> C[Настройка веб‑сервера]
C --> D[Установка MyBB]
D --> E{HTTPS?}
E -- Да --> F[Установка acme.sh и сертификата]
E -- Нет --> G[Пропустить сертификат]
F --> H[Укрепление безопасности]
G --> HБыстрая сводка (фактбокс)
- Платформа: MyBB 1.8.x
- ОС: Debian 10 (buster)
- Рекомендуемый PHP: 7.3+
- СУБД: MariaDB/MySQL или PostgreSQL
Короткое объявление для пользователей (100–200 слов)
Я установил и настроил новый форум на MyBB под Debian 10. Форум защищён HTTPS, база данных на MariaDB, настроена автоматическая ротация сертификатов с помощью acme.sh и базовое резервное копирование. Административная панель доступна через /admin. Если у вас есть предложения по темам или плагинам — напишите в разделе предложений.
Социальная превью‑заготовка
OG title: Установка MyBB на Debian 10 — пошагово OG description: Подробное руководство по установке MyBB на Debian 10: PHP, MariaDB, Nginx, Let’s Encrypt и базовая безопасность.
Полезные ссылки
Итог: вы развернули рабочий форум MyBB, настроили HTTPS и сделали базовые шаги по безопасности. Далее — настройка тем, плагинов и регулярное обслуживание.
Резюме
- Установите PHP, MariaDB и Nginx.
- Получите сертификат через acme.sh для HTTPS.
- Разверните MyBB и удалите папку install.
- Настройте бэкапы и повысите безопасность.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента