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

Установка Open Source Social Network (OSSN) на Ubuntu 18.04 LTS

• 6 min read • Linux • Обновлено 18 Nov 2025
Установка OSSN на Ubuntu 18.04
Установка OSSN на Ubuntu 18.04

Кратко о OSSN

Open Source Social Network (OSSN) — это свободное программное обеспечение для создания собственной социальной сети, написанное на PHP. Подходит для публичных сетей, сообществ и приватных интранетов. Коротко: платформа даёт профиль пользователей, друзья, фото, чат, поиск и панель администратора.

Определение: LAMP — стек из Linux, Apache, MariaDB/MySQL и PHP.

Требования

  • Сервер с Ubuntu 18.04 LTS
  • Непользователь root с правами sudo
  • Домен или запись в /etc/hosts, если домен не настроен в DNS
  • Рекомендуется резервная копия перед установкой

1. Установка стека LAMP

OSSN работает поверх веб-сервера и требует PHP и MariaDB. На момент руководства OSSN не поддерживает PHP 7.2, поэтому используется PHP 7.1 из репозитория Ondřej.

Добавьте репозиторий:

sudo add-apt-repository ppa:ondrej/php

Установите Apache, MariaDB, PHP 7.1 и необходимые расширения:

sudo apt-get install apache2 mariadb-server php7.1 php7.1-mysql php7.1-curl php7.1-json php7.1-cgi libapache2-mod-php7.1 php7.1-mcrypt php7.1-xmlrpc php7.1-gd php7.1-mbstring php7.1 php7.1-common php7.1-xmlrpc php7.1-soap php7.1-xml php7.1-intl php7.1-cli php7.1-ldap php7.1-zip php7.1-readline php7.1-imap php7.1-tidy php7.1-recode php7.1-sq php7.1-intl wget unzip -y

Запустите и включите службы Apache и MariaDB:

sudo systemctl start apache2
sudo systemctl enable apache2
sudo systemctl start mariadb
sudo systemctl enable mariadb

Важно: команды выше нужно выполнять от пользователя с sudo.

2. Настройка MariaDB (базы данных)

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

sudo mysql_secure_installation

Ответьте на вопросы примерно так:

Enter current password for root (enter for none):
Set root password? [Y/n]: N
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Далее войдите в консоль MariaDB и создайте базу и пользователя:

mysql -u root -p

В SQL-консоли выполните:

CREATE DATABASE ossndb;
CREATE USER ossn;
GRANT ALL PRIVILEGES ON ossndb.* TO 'ossn'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;

Примечание: замените ‘password’ на надёжный пароль и сохраните его — он понадобится при установке OSSN.

Важно: создание пользователя через CREATE USER ossn; без пароля обычно требует отдельного шага. Приведённый пример использует декларативную форму GRANT … IDENTIFIED BY для простоты.

3. Скачивание и размещение OSSN

Скачайте последнюю сборку OSSN и распакуйте её:

cd /tmp
wget https://www.opensource-socialnetwork.org/download_ossn/latest/build.zip
unzip build.zip

Скопируйте файлы в корень веб-сервера, создайте папку для данных и назначьте права:

sudo cp -r ossn /var/www/html/
sudo mkdir /var/www/html/ossn_data
sudo chown -R www-data:www-data /var/www/html/ossn/
sudo chmod -R 755 /var/www/html/ossn/
sudo chown -R www-data:www-data /var/www/html/ossn_data

Пояснение: www-data — стандартный пользователь Apache в Ubuntu; права 755 дают исполнение и чтение владельцу и группе, чтение остальным.

4. Конфигурация Apache для OSSN

Создайте файл виртуального хоста:

sudo nano /etc/apache2/sites-available/ossn.conf

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


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/ossn
     ServerName example.com

     
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     

     ErrorLog ${APACHE_LOG_DIR}/ossn_error.log
     CustomLog ${APACHE_LOG_DIR}/ossn_access.log combined

Замените example.com на ваш домен. Сохраните файл и включите сайт и модуль rewrite:

sudo a2ensite ossn.conf
sudo a2enmod rewrite
sudo systemctl restart apache2

Важно: OSSN проверяет mod_rewrite через HTTP-запрос к самому себе. Домен в ServerName должен резолвиться в IP сервера либо через DNS, либо через /etc/hosts.

Если домен не существует в DNS, добавьте запись в /etc/hosts:

sudo nano /etc/hosts

Добавьте строку вида:

192.168.1.100 example.com www.example.com

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

Если этого не сделать, при установке появится ошибка “MOD_REWRITE REQUIRED”.

5. Доступ к веб-установщику и шаги инсталляции

Откройте браузер и перейдите по адресу http://example.com (замените на ваш домен или IP). Веб-установщик проведёт проверку системных требований.

Логотип Open Source Social Network

Обязательно убедитесь, что все требования отмечены как выполненные, затем нажмите Далее.

Все требования выполнены — проверка совместимости OSSN

Заполните название сайта и параметры базы данных (имя БД, пользователь, пароль, хост). Нажмите Установить.

Ввод настроек базы данных в установщике OSSN

Создайте администратора — укажите логин, email и пароль администратора.

Создание учётной записи администратора в OSSN

По завершении установки вы увидите подтверждение. Нажмите Завершить.

Установка OSSN завершена — экран подтверждения

Затем войдите в систему под учётной записью администратора.

Вход как администратор OSSN

После входа вы попадёте в панель администратора.

Панель управления администратора OSSN

Через меню “просмотр сайта” можно увидеть фронтенд.

Внешний вид фронтенда OSSN

Поздравляем — OSSN установлена на Ubuntu 18.04 LTS.

Важное после установки — безопасность и настройки

  • Смените все пароли по умолчанию (SSH, MariaDB root, пользователь ossn, админ OSSN).
  • Закройте доступ к SSH для root: в /etc/ssh/sshd_config установите PermitRootLogin no и перезапустите sshd.
  • Настройте брандмауэр ufw: откройте порты 80 и 443, закройте лишние.
  • Включите HTTPS: используйте Let’s Encrypt certbot для получения бесплатных сертификатов.
  • Регулярно обновляйте систему и PHP-пакеты.

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

  • Сайт доступен по HTTP/HTTPS и открывается главная страница OSSN
  • Панель администратора доступна и вы можете войти под заданным админом
  • Создана и подключена база ossndb, пользователь ossn имеет привилегии
  • Права на каталоги /var/www/html/ossn и /var/www/html/ossn_data принадлежат www-data
  • mod_rewrite включён и работает

Тестовые сценарии и проверка

  1. Перейти на http://example.com — загрузка главной страницы OSSN
  2. Зайти в админку с логином и паролем администратора
  3. Создать новую учётную запись пользователя и добавить фото
  4. Проверить логирование ошибок Apache в /var/log/apache2/ossn_error.log
  5. Попробовать reset пароля администратора через email (если настроен почтовый сервис)

Техническое руководство по откату (incident runbook)

  1. Если сайт не запускается после изменения конфигурации Apache:
    • Откатите файл /etc/apache2/sites-available/ossn.conf к предыдущей версии или временно отключите сайт: sudo a2dissite ossn.conf && sudo systemctl reload apache2
  2. Если база данных повреждена:
    • Остановите приложение (закройте доступ через брандмауэр)
    • Восстановите дамп базы из последней резервной копии: mysql -u root -p ossndb < backup.sql
  3. При ошибках прав доступа файлов:
    • sudo chown -R www-data:www-data /var/www/html/ossn/
    • sudo chmod -R 755 /var/www/html/ossn/
  4. Если PHP недоступен после обновления пакетов:
    • Верните совместимую версию PHP (7.1) или проверьте логи /var/log/apache2/error.log

Советы по безопасности и жёсткая настройка

  • Отключите неиспользуемые PHP-модули.
  • Установите ограничение доступа к каталогу данных через .htaccess или конфигурацию Apache.
  • Ограничьте доступ к административным маршрутам по IP, если возможно.
  • Настройте бэкапы базы и файлов (ежедневно для БД, еженедельно для файлов).
  • Установите мониторинг метрик (дискового пространства, использования памяти, количества процессов PHP).

Совместимость и миграция

  • OSSN, описанное здесь, требует PHP 7.1. Для размещения на более новых версиях PHP проверьте официальные релизы OSSN: возможно, требуется патч или обновление кода.
  • При миграции с другой машины: скопируйте /var/www/html/ossn и /var/www/html/ossn_data, выгрузите/загрузите базу через mysqldump.
  • Убедитесь, что версии MySQL/MariaDB совместимы — типичные операции SQL в OSSN стандартные, но проверьте код пользовательских плагинов.

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

Sysadmin:

  • Проверка прав на директории
  • Настройка брандмауэра и SSH
  • Регулярное обновление и мониторинг

Dev / интегратор:

  • Проверить расширения PHP и совместимость
  • Настроить логирование ошибок и трассировку
  • Тестировать плагины и темы OSSN в staging перед prod

Администратор сообщества:

  • Настроить правила регистрации и модерации
  • Проверить настройки почты и восстановления паролей
  • Назначить резервных админов и права

Быстрая методология развертывания (мини‑метод)

  1. Подготовка сервера и резервные копии
  2. Установка Apache, PHP 7.1 и MariaDB
  3. Настройка базы данных и пользователя
  4. Размещение файлов OSSN и назначение прав
  5. Создание виртуального хоста и включение mod_rewrite
  6. Веб-установка и проверка функционала
  7. Настройка HTTPS, бэкапов и мониторинга

Диаграмма выбора: использовать ли виртуальную машину или реальный сервер

tree
  root''Где разворачивать OSSN?''
    development''Локальная/VM для разработки''
    production''Продакшн-сервер''
    development --> |'тест/плагины'| localvm''VM / VirtualBox / VMWare''
    production --> |'высокая нагрузка'| cloud''Облачный VPS / Baremetal''
    production --> |'малый проект'| smallvps''Небольшой VPS''

Фактбокс — ключевые параметры

  • Целевая ОС: Ubuntu 18.04 LTS
  • Необходимая версия PHP: 7.1 (для данного релиза OSSN)
  • СУБД: MariaDB (совместима с MySQL)
  • Веб-сервер: Apache с mod_rewrite

Виртуальный образ этого руководства

Этот туториал доступен как готовая виртуальная машина в формате OVF/OVA (совместима с VMWare и VirtualBox). Учётные данные в образе (необходимо сменить пароли):

SSH / Shell: username: administrator, password: howtoforge (пользователь имеет sudo)

OSSN: username: admin, password: howtoforge

MySQL: username: root, password: howtoforge username: ossn, password: password

IP машины по умолчанию: 192.168.1.100 (файл /etc/netplan/01-netcfg.yaml)

Пожалуйста, немедленно поменяйте все пароли после запуска образа.

Частые ошибки и способы их устранения

  • “MOD_REWRITE REQUIRED” — проверьте, включён ли модуль rewrite и правильно ли резолвится домен.
  • Ошибки подключения к БД — проверьте правильность имени БД, пользователя и пароля, а также хост (обычно localhost).
  • 403 Forbidden — проверьте права на папки и директивы AllowOverride/Require в конфигурации Apache.

Ссылки

Короткое резюме: OSSN можно быстро развернуть на Ubuntu 18.04 LTS при соблюдении требований к PHP и Apache. Следуйте чек‑листам безопасности и делайте регулярные бэкапы.

Важное: после установки обязательно смените пароли по умолчанию и настройте HTTPS.

Поделиться: 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 быстро