Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы
Редакторы
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
Команда
Команда
Мобильные редакторы
Мобильные редакторы
Облачный офис
Облачный офис
Почта
Почта
Органайзер
Органайзер
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

LDAP Монитор: инструкция по установке и работе плагина на Корпоративный сервер 2024 (Linux)

Обновлено: 20.12.25

Скачать плагин

Важно

Скачать плагин можно по ссылке ↗
MD5: 429887F808ED3714B4FC4D252F5A8BFE

1. Список необходимых пакетов

для ВМ без внешних репозиториев и без доступа в интернет

1.1. Что должно быть установлено (пакеты / команды)

На сервере Корпоративный сервер 2024

Обязательно:

  • nodejs
    • backend-плагин написан на Node.js
    • сервис запускает node *.js
    • версия ≥ 10 (рекомендуется 16+)

Важно

Установщик пытается установить nodejs сам,
но в офлайне рекомендуется установить заранее системным пакетом


Дополнительно (обычно уже есть в системе, но важно):

  • openssl
  • ss (из пакета iproute2)
    используется для проверки занятости портов

Скрипт активно:

  • патчит index.html
  • модифицирует nginx-конфиг
  • создает systemd-unit

2. Назначение скрипта

r7-ldap-install.sh

Скрипт выполняет установку / обновление / удаление LDAP Monitor:

  • разворачивает backend в: /opt/r7-ldap-ws-monitor
  • создаёт systemd-сервис: r7-ldap-monitor
  • копирует JS-инжекты в: /var/www/r7-office/admin/assets/
  • патчит index.html админки:
    • /assets/inject-manager.js
    • /assets/inject-ldap-card.js
    • /assets/inject-ldap-tab.js
  • патчит nginx:
    • добавляет location /ldap
    • настраивает proxy + websocket-заголовки
  • поддерживает режим удаления
    (с вопросом — удалять ли inject-manager.js)

3. Подготовка перед запуском

3.1. Подготовить файлы рядом со скриптом

LDAP Monitor

В одной директории со скриптом должны быть:

r7-ldap-install.sh

data/

├── inject-manager.js
├── inject-ldap-card.js
├── inject-ldap-tab.js
└── ldap-monitor/
──├── index.html
──└── ldap-monitor.js

Важно

inject-manager.js копируется только если его ещё нет и используется всеми плагинами совместно

3.2. Проверить ожидаемые пути

Скрипты жёстко рассчитывают на следующие пути:

  • assets: /var/www/r7-office/admin/assets
  • index.html: /var/www/r7-office/admin/index.html
  • nginx config: /etc/nginx/sites-available/admin

Если у вас нестандартная установка — требуется адаптация скрипта.

4. Запуск скрипта

4.1. Установка

unzip Plugin-ldap.zip -d r7-ldap-monitor && cd r7-ldap-monitor
chmod +x r7-ldap-install.sh
sudo ./r7-ldap-install.sh

Запуск сразу указывает на ключ —info для получения описания скрипта и предлагает сменить пароль, если предлагаемый порт занят или выбрать по умолчанию

Далее происходит установки и вывод конечного результата.

Во время установки:

  • скрипт требует root
  • запрашивает порт(ы)
  • проверяет, свободны ли они
  • при конфликте предлагает выбрать другой
  • выполняет установку
  • выводит финальный статус

4.2. Повторный запуск

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

  • выполняется обновление
  • существующие файлы корректно перезаписываются
  • inject-manager.js не дублируется
  • порядок инжектов сохраняется

Использование ключей

4.3. Проверка после установки

systemctl status r7-ldap-monitor --no-pager
journalctl -u r7-ldap-monitor -n 200 --no-pager
nginx -t
systemctl reload nginx

4.4. Удаление

LDAP

sudo ./r7-ldap-install.sh --uninstall

Во время удаления:

  • сервис останавливается и удаляется
  • backend-каталоги очищаются
  • nginx-патчи удаляются
  • будет задан вопрос:
    Важно

    Удалять ли inject-manager.js?

Это важно, если установлены другие плагины.

5. Порядок работы скрипта (последовательность)

Установка

  • Проверка прав root
  • Проверка / запрос портов
  • Проверка занятости портов (ss)
  • Проверка Node.js (установка при необходимости)
  • Проверка структуры файлов
  • Копирование backend в /opt/...
  • Создание systemd-unit’ов (inline)
  • systemctl daemon-reload
  • Включение и запуск сервисов
  • Копирование JS в assets
  • Патч index.html
    (manager → plugin-инжекты)
  • Патч nginx (location + websocket)
  • nginx -t и reload
  • Финальный отчёт и статус сервисов

6. Как работает плагин (архитектура)

6.1. Общая схема

  • Пользователь работает только через админку R7 Office
  • Админка:
    • загружает JS-инжекты
    • отправляет HTTP / WS-запросы
  • nginx:
    • проксирует запросы на localhost
  • backend:
    • обрабатывает API
    • отдаёт данные интерфейсу

6.2. inject-manager.js

  • общий менеджер вкладок / карточек
  • подключается один раз
  • все плагины:
    • вставляются ниже него
    • не дублируют его установку

6.3. LDAP Monitor

  • backend: ldap-monitor.js
  • протокол: HTTP + (при необходимости) WS
  • UI:
  • вкладка LDAP
  • карточка на «Обзоре»
  • nginx проксирует: /ldaplocalhost:<PORT>

7. Что именно меняется в системе (для аудита)

Установка затрагивает:

  • /opt/r7-ldap-ws-monitor/*
  • /etc/systemd/system/*.service
  • /etc/nginx/sites-available/admin
  • /var/www/r7-office/admin/assets/*.js
  • /var/www/r7-office/admin/index.html

Для критичных файлов создаются .bak-копии.