- Технологический стек
- Архитектура решения
- Установка и настройка MULTIDIRECTORY
- Ввод ОС в домен
- Настройка Kerberos
- Настройка DNS
- Настройка DHCP
- Доверие доменов
- Групповые политики
- Подключение MF SelfService Portal к MD
- Управление пользователями, группами и ресурсами
- Подключение 2FA MULTIFACTOR
- Политики доступа
- Схема LDAP
- Журналирование событий
- Парольные политики
- Роли и полномочия
- LDAP-аутентификация в Ansible AWX
- LDAP-аутентификация в ArgoCD
- LDAP-аутентификация в GitLab
- LDAP-аутентификация в GitFlic
- LDAP-аутентификация в GLPI
- LDAP-аутентификация в Jenkins
- LDAP-аутентификация в Harbor
- LDAP-аутентификация в Nexus
- LDAP-аутентификация в PostgreSQL
- LDAP-аутентификация в Proxmox VE
- LDAP-аутентификация в Rancher
- LDAP-аутентификация в SpaceVM
- LDAP-аутентификация в Tantor
- LDAP-аутентификация в zVirt
- LDAP-аутентификация в Штурвал
Установка и настройка MULTIDIRECTORY
Общая информация
В статье описывается установка и настройка MULTIDIRECTORY. Для подробного ознакомления с архитектурой ознакомьтесь со статьей.
Требования для установки MULTIDIRECTORY
- Компонент устанавливается на Linux-сервер, протестирован на Ubuntu, Debian, Astra, ALT, РЕД ОС.
- Минимальные параметры сервера, рассчитанного на 1000 пользователей:
4 CPU (с поддержкой AVX инструкций), 6 GB RAM, 40 GB HDD.- Необходимо зарегистрировать домен и сопоставить его с IP вашего сервера.
- В случае использования локального домена, необходимы сертификаты для SSL/TLS. Объект сертификата должен совпадать с доменным именем, по которому будет доступен веб-интерфейс.
- Необходим статический IP-адрес. Пример: webadmin.domain.ru -> 255.255.255.255.
- При использовании локальной доменной записи необходимо добавить запись на ваш DNS-сервер со ссылкой на IP-адрес машины, где устанавливается MULTIDIRECTORY. Пример: webadmin.domain.internal -> 10.0.0.20
- Для работы MULTIDIRECTORY в
Linuxнеобходимо произвести установку Docker и Docker-Compose.- MULTIDIRECTORY использует порт 53 для запуска и работы контейнера с DNS сервером, для корректного запуска освободите данный порт.
- При использовании локального домена требуется сгенерировать или добавить свой сертификат вручную.
Подключение внешней СУБД
В случае необходимости подключения внешней СУБД, а не встроенной, воспользуйтесь данной инструкцией:
Подключение внешней СУБД
Обратите внимание
Все сервисы работают при помощи Traefik, используя PostgreSQL в качестве базы данных. Другие СУБД несовместимы.
При первоначальной установке происходит автоматическая настройка файла конфигурации .env
Для изменения подключения ко внешней БД замените следующие параметры на необходимые в файле .env:
POSTGRES_HOST=1.2.3.4 # Укажите ip-адрес POSTGRES_USER=user_login # Укажите учетные данные POSTGRES_PASSWORD=password # Укажите пароль от учетной записи
Обратите внимание
Создайте пользователя во внешней базе данных PostgreSQL с правами создания базы и задайте пароль созданный в файле .env
На сервере где установлена внешняя СУБД настройте файлы конфигурации:
- postgresql.conf — изменив параметр listen_addresses
- pg_hba.conf — добавив строки для разрешения подключения к базе данных
После выполнения данных действий, перезапустите сервис PostgreSQL.
Переменные файла .env
Описание переменных файла .env
| Переменная | Описание |
|---|---|
DEFAULT_NAMESERVER |
IP-адрес хост-сервера (DNS), используется как основной nameserver. |
POSTGRES_USER |
Имя пользователя PostgreSQL. |
POSTGRES_DB |
Имя базы данных PostgreSQL. |
POSTGRES_HOST |
Хост базы данных PostgreSQL (имя контейнера или внешний сервер). |
POSTGRES_PASSWORD |
Пароль пользователя PostgreSQL (может генерироваться автоматически). |
DOMAIN |
Домен WEB-интерфейса MULTIDIRECTORY. |
SECRET_KEY |
Секретный ключ . |
SALT_API_USER |
Пользователь для доступа к Salt API. |
SALT_API_USER_PASS |
Пароль пользователя Salt API (может генерироваться автоматически). |
SALT_API_ENABLED |
Флаг включения Salt API. |
SALT_API_URL |
URL сервиса Salt API. |
PDNS_API_KEY |
API-ключ PowerDNS. |
PDNS_DIST_KEY |
API-ключ dnsdist. |
HOST_MACHINE_NAME |
Имя текущей машины (хоста), определяется автоматически. |
Установка MULTIDIRECTORY
Установка MULTIDIRECTORY Enterprise Edition
Скачайте архив с предоставленными Вам образами.
Выполните разархивацию при помощи команды:
sudo tar -xvf Enterprise_complete.tar -C /opt
Перейдите в папку с файлами MULTIDIRECTORY:
cd /opt/multidirectory
Запустите скрипт mdctl.sh:
sudo ./mdctl.sh
Выберите язык:

Ознакомьтесь с минимальными системными требованиями и подтвердите ознакомление:

Выберите пункт «1. Установить Single»:

Введите ваш домен:

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

Подтвердите запуск контейнеров после установки:

Введите короткое имя хоста, на котором будет установлена MULTIDIRECTORY:

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

Введите или оставьте по умолчанию вышестоящие DNS сервера:

Подтвердите начало установки:

После завершения установки Вам будет предложено перейти в Web-интерфейс MULTIDIRECTORY:

После перехода в Web-интерфейс проведите настройку согласно шагам ниже.
Настройка Web-интерфейса MULTIDIRECTORY
После успешной настройки и запуска сервисов Docker – перейдите в браузер. В поисковую строку введите адреса, выведенные вам после установки MULTIDIRECTORY.
Вы попадете в настройку WEB-интерфейса вашей MULTIDIRECTORY.
Проверьте правильность написания домена, выберите необходимые вам настройки:
- Введите имя вашего домена.
- Настроить DNS. Если стоит галочка, то настройка DNS будет произведена сразу же (настройку DNS можно произвести и позже в WEB-интерфейсе администратора).
- Настроить Kerberos. Если стоит галочка, то настройка Kerberos произойдет сразу же (настройку Kerberos можно произвести и позже из интерфейса администратора
MULTIDIRECTORY). - Сгенерировать пароли для Kerberos. Если стоит галочка, то произойдет автоматическая генерация паролей для Kerberos. После настройки WEB-интерфейса сгенерированные пароли будут выгружены в файл.
Нажмите кнопку «Далее».

Настройка Kerberos
Если НЕ была выбрана автоматическая генерация паролей для Kerberos
Если вы сняли галочку с пункта «Сгенерировать пароли для Kerberos автоматически», появится окно, в которое необходимо будет внести пароли для krbadmin и стэша.
- Krbadmin — это служебная учетная запись сервера Kerberos. Она используется для взаимодействия с сервером LDAP. Данная учетная запись ограничена полномочиями и может управлять только своей выделенной областью в дереве LDAP.
- Пароль stash, используется для защиты мастер ключа шифрования базы данных Kerberos. Вы можете выгрузить внесенные вами пароли в файл.
Требование к паролям:
- Пароли должны быть более 7 символов;
- Пароли не должны быть одинаковыми у krbadmin и стэша (они должны отличаться друг от друга);
- Пароли должны содержать заглавные и строчные буквы (A-Z и a-z) и цифры (0-9).
После внесения паролей нажмите кнопку «Далее».

Внесите данные администратора, под которыми будет осуществлен первоначальный вход.
Требование к паролям:
- Пароли должны быть более 7 символов;
- Пароли должны содержать заглавные и строчные буквы (A-Z и a-z) и цифры (0-9).
Для продолжения нажмите кнопку «Далее».

В появившемся окне проверьте правильность созданной учетной записи администратора:
- UPN.
- Отображаемое имя.
- Email.
Нажмите кнопку «Далее».

Загрузка лицензии
Загрузите предоставленную Вам лицензию:
Нажмите кнопку «Далее».

Настройка DNS
Если был выбран пункт «Настроить DNS» откроется мастер настройки:
Нажмите кнопку «Далее».

Обозначение полей
- TTL по умолчанию — продолжительность кэширования записи серверами и клиентами до её истечения. Значение измеряется в секундах.
Если был выбран пункт «Привязать к внешнему DNS серверу»
- IP — адрес Вашего внешнего DNS сервера, который будет использоваться.
- TSIG Ключ — содержимое файла, которое было сгенерировано на внешнем DNS сервере.

После заполнения всех полей нажмите кнопку «Далее».
Геораспределенная установка MULTIDIRECTORY Enterprise Edition
Скачайте архив с предоставленными Вам образами.
Выполните разархивацию при помощи команды:
sudo tar -xvf Enterprise_complete.tar -C /opt
Перейдите в папку с файлами MULTIDIRECTORY:
cd /opt/multidirectory
Запустите скрипт mdctl.sh:
sudo ./mdctl.sh
Выберите язык скрипта:

Выберите 2 пункт (Установить MD с несколькими контроллерами домена(Geo)):

Описание вводимых параметров
Обратите внимание на выводимый текст скрипта при установке, во избежание ошибок!
- Выбреите тип сертификата для MD-узлов — сертификат безопасности который будет распространен на устанавливаемые узлы.
- Загрузка Docker-образов — подтвердите загрузку образов на узлах.
- Доступные архивы Docker-образов — выберите доступный архив с образами MD.
- Запустить контейнеры — выбор, запускать ли контейнера при установки кластера.
- Выбор DNS серверов для рекурсии (пересылки) запросов — пропишите собственные DNS сервера или нажмите «Enter» для добавления стандартных записей.
- IP-адрес master-узла PostgreSQL — введите IP-адрес сервера, который будет являться мастер базой PostgreSQL для реплик.
- Короткий hostname node PostgreSQL — укажите произвольное наименование машины.
- Завершить ввод PostgreSQL-узлов — подтвердите ввод данных для добавления узлов PostgreSQL.
- IP-адрес узла MD — укажите IP-адрес серверов, где будет устанавливаться MULTIDIRECTORY.
- Короткий hostname MD-узла — укажите произвольное наименование машины.
- Завершить ввод MD-узлов — подтвердите ввод данных для добавления узлов MULTIDIRECTORY.
- Введите имя deployment-пользователя для установки MULTIDIRECTORY — укажите учетную запись с root правами для установки компонентов кластера.
- SSH-порт — выберите предпочитаемый порт SSH или нажмите «Enter» для выбора стандартного 22 порта.

Описание вводимых параметров
- user@servers — укажите пароль от учетной записи указаной выше в скрипте установки для каждого узла.
- Начать установку Geo сейчас — подтвердите начало установки кластера на узлах, нажмите «Enter» выбрав ответ по умолчанию [y].
- Продолжить установку MULTIDIRECTORY на указанных серверах — подтвердите установку кластера MULTIDIRECTORY на указанных узлах, если все верно или прервите установку, если введеные данные не верны, комбинацией класишь «Ctrl+c»
После подтверждения вводимых данных, начнется установка кластера MULTIDIRECTORY.

Описание вводимых параметров
- Обнаружено расхождение времени или отсутствует синхронизация. Настроить PostgreSQL master как локальный NTP-сервер — выберите установить ли мастера PostgreSQL, как локального синхронизатора времени для реплик.
После всплывающей информации о завершении настройки первого узла, перейдите в интерфейс MULTIDIRECTORY по IP-адресу или FQDN, пройдите все настройки и перейдите в командную строку для продолжения установки на остальных узлах.

Описание вводимых параметров
- Вы завершили настройку в интерфейсе первого MD-узла — по завершению настройки первого узла, нажмите [y] для продолжения установки кластера MULTIDIRECTORY.
Далее продолжится установка на последующих серверах, в конце появится отладочная информация об успешной установки кластера на узлах и ссылками для перехода в интерфейс MD.

Кластер успешно установлен, если появилась данная отладочная информация.
Установка MULTIDIRECTORY Community Edition
Linux
Создайте папку для MULTIDIRECTORY:
mkdir MultiDirectory; cd MultiDirectory;
Скачайте необходимые файлы:
wget -O setup.sh https://raw.githubusercontent.com/MultiDirectoryLab/MultiDirectory/main/.package/setup.sh wget -O docker-compose.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/docker-compose.yml wget -O traefik.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/traefik.yml wget -O kea-ctrl-agent.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/kea-ctrl-agent.conf wget -O dnsdist.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/dnsdist.conf wget -O pdns.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/pdns.conf wget -O recursor.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/recursor.conf
Запустите установку:
bash setup.sh
После заполнения будет создан файл .env.
Windows (PowerShell)
Создайте папку:
mkdir MultiDirectory; cd MultiDirectory;
Скачайте файлы:
curl -O https://raw.githubusercontent.com/MultiDirectoryLab/MultiDirectory/main/.package/setup.ps1 curl -O https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/docker-compose.yml curl -O https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/traefik.yml curl -O https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/kea-ctrl-agent.conf
Запустите сервисы при помощи команды:
docker compose pull; docker compose up -d
Настройка Web-интерфейса MULTIDIRECTORY
После успешной настройки и запуска сервисов Docker – перейдите в браузер. В поисковую строку введите домен, который ранее был указан при генерации .env-файла.
Вы попадете в настройку WEB-интерфейса вашей MULTIDIRECTORY.
Проверьте правильность написания домена, выберите необходимые вам настройки:
- Введите имя вашего домена.
- Настроить DNS. Если стоит галочка, то настройка DNS будет произведена сразу же (настройку DNS можно произвести и позже в WEB-интерфейсе администратора).
- Настроить Kerberos. Если стоит галочка, то настройка Kerberos произойдет сразу же (настройку Kerberos можно произвести и позже из интерфейса администратора
MULTIDIRECTORY). - Сгенерировать пароли для Kerberos. Если стоит галочка, то произойдет автоматическая генерация паролей для Kerberos. После настройки WEB-интерфейса сгенерированные пароли будут выгружены в файл.
Нажмите кнопку «Далее».

Настройка Kerberos
Если НЕ была выбрана автоматическая генерация паролей для Kerberos
Если вы сняли галочку с пункта «Сгенерировать пароли для Kerberos автоматически», появится окно, в которое необходимо будет внести пароли для krbadmin и стэша.
- Krbadmin — это служебная учетная запись сервера Kerberos. Она используется для взаимодействия с сервером LDAP. Данная учетная запись ограничена полномочиями и может управлять только своей выделенной областью в дереве LDAP.
- Пароль stash, используется для защиты мастер ключа шифрования базы данных Kerberos. Вы можете выгрузить внесенные вами пароли в файл.
Требование к паролям:
- Пароли должны быть более 7 символов;
- Пароли не должны быть одинаковыми у krbadmin и стэша (они должны отличаться друг от друга);
- Пароли должны содержать заглавные и строчные буквы (A-Z и a-z) и цифры (0-9).
После внесения паролей нажмите кнопку «Далее».

Внесите данные администратора, под которыми будет осуществлен первоначальный вход.
Требование к паролям:
- Пароли должны быть более 7 символов;
- Пароли должны содержать заглавные и строчные буквы (A-Z и a-z) и цифры (0-9).
Для продолжения нажмите кнопку «Далее».

В появившемся окне проверьте правильность созданной учетной записи администратора:
- UPN.
- Отображаемое имя.
- Email.
Нажмите кнопку «Далее».

Настройка DNS
Если был выбран пункт «Настроить DNS» откроется мастер настройки:
Нажмите кнопку «Далее».

Обозначение полей
- TTL по умолчанию — продолжительность кэширования записи серверами и клиентами до её истечения. Значение измеряется в секундах.
Если был выбран пункт «Привязать к внешнему DNS серверу»
- IP — адрес Вашего внешнего DNS сервера, который будет использоваться.
- TSIG Ключ — содержимое файла, которое было сгенерировано на внешнем DNS сервере.

После заполнения всех полей нажмите кнопку «Далее».
Создание учетной записи администратора завершено. Вход в WEB-интерфейс MULTIDIRECTORY будет осуществлен автоматически.
Обновление MULTIDIRECTORY
Чтобы обновить вашу MULTIDIRECTORY, используйте следующие шаги:
Обновление MULTIDIRECTORY Enterprise
Скачайте архив с предоставленными Вам образами.
Выполните разархивацию при помощи команды:
sudo tar -xvf Enterprise_complete.tar -C /opt
Перейдите в папку с файлами MULTIDIRECTORY:
cd /opt/multidirectory
При запущенной MULTIDIRECTORY запустите скрипт mdctl.sh:
sudo ./mdctl.sh
Выберите пункт «4. Обновить установку»:

Подтвердите начало обновления:

Важно!
При обновлении с версий ниже 3.0.0 обновление произойдет автоматически на версию 3.0.0, после этого будет возможно обновление на последнюю доступную версию.
Выберите образ из списка доступных образов:

После обновления скрипт предложит перейти в Web-интерфейс:

Обновление MultiDirectory Community
Linux
Важно
Для обновления/установки новой версии MULTIDIRECTORY, скачайте файлы и запустите setup.sh/setup.ps1 перед запуском контейнеров docker compose up -d
wget -O setup.sh https://raw.githubusercontent.com/MultiDirectoryLab/MultiDirectory/main/.package/setup.sh wget -O docker-compose.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/docker-compose.yml wget -O traefik.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/traefik.yml wget -O kea-ctrl-agent.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/kea-ctrl-agent.conf wget -O dnsdist.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/dnsdist.conf wget -O pdns.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/pdns.conf wget -O recursor.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/recursor.conf
Windows
wget -O setup.ps1 https://raw.githubusercontent.com/MultiDirectoryLab/MultiDirectory/main/.package/setup.ps1
wget -O docker-compose.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/docker-compose.yml
wget -O traefik.yml https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/traefik.yml
wget -O kea-ctrl-agent.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/kea-ctrl-agent.conf
wget -O dnsdist.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/dnsdist.conf
wget -O pdns.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/pdns.conf
wget -O recursor.conf https://github.com/MultiDirectoryLab/MultiDirectory/releases/download/v2.8.0/recursor.conf
Проверка логирования сервисов и контейнеров
Расширенное логирование
Если вы хотите, чтобы логи передавались в расширеном формате, то в файле .env укажите формат логирования:
DEBUG=1
После добавления расширенного логирования перезагрузите сервисы командой:
docker compose down; docker compose up -d
Проверка логирования контейнеров
Просматривать логи контейнеров вы можете обращаясь к контейнеру по его имени, или же по ID. Для просмотра имен и ID контейнеров воспользуйтесь командой:
docker ps
Для просмотра логов по имени контейнера в реальном времени используйте команду:
docker logs -f CONTAINER NAME # вместо CONTAINER NAME укажите имя контейнера, указанного в соответствующим столбце.
Для просмотра логов по ID контейнера в реальном времени используйте команду:
docker logs -f CONTAINER ID # вместо CONTAINER NAME укажите имя контейнера, указанного в соответствующим столбце.
Просмотр файлов логирования MULTIDIRECTORY
Файлы логирования MULTIDIRECTORY располагаются в каталоге /MultiDirectory/logs. Записываются 4 вида файлов логирования в следующем формате:
- admin_dd-mm-yyyy.log — в данный файл ведется логирование действий в WEB-интерфейсе администратора.
- kadmin_dd-mm-yyyy.log — в данный файл ведется логирование Kerberos (если он ранее был настроен).
- ldap_dd-mm-yyyy.log — в данный файл ведется логирование действий по протоколам ldap и ldaps.
- mfa_dd-mm-yyyy.log — в данный файл ведется логирование двухфакторной аутентификации (если ранее она была настроена).
Для просмотра файла логирования вы можете использовать команду:
tail -f admin_dd-mm-yyyy.log # файл admin используется как пример
Проверка версии MULTIDIRECTORY
Проверка версии в web-интерфейсе
Для проверки версии в web-интерфейсе нажмите на значок шестеренки и выберите пункт «Настройка MULTIDIRECTORY».

В открывшемся окне выберите пункт «О программе».

Проверка версии на сервере
Для проверки версии MULTIDIRECTORY в контейнере Docker используйте команду:
docker image inspect ghcr.io/multidirectorylab/multidirectory | grep VERSION
Проверка версии при помощи API
Для проверки версии MULTIDIRECTORY через API перейдите по ссылке https://your-domain.ru/api/docs.
Примечание
Замените «your-domain.ru» на имя вашего домена.

Вопросы и ответы
Вопрос: Как обновить сертификаты Kerberos?
Ответ:
-
- Удалите старые сертификаты
krbcert.pemиkrbkey.pemв папке../MultiDirectory/certs/.
- Удалите старые сертификаты
-
- Перезагрузите MULTIDIRECTORY командой:
docker compose down; docker compose up -d
Вопрос: Контейнер traefik_certs_dumper выдает ошибку:
ERROR | extra.dump_acme_certs:dump_acme_cert.39 - Error loading TLS certificate, exiting...
Ответ: Неправильное имя сертификатов или их отсутствие. Проверьте папку ./certs.
Файлы сертификатов должны строго называться:
-
cert.pem
-
privkey.pem
Шаги для генерации или добавления сертификатов описаны ниже.
Вопрос: Контейнеры multidirectory-ldap-server-* не запускаются (статус «Error») В логах:
File "/app/ldap_protocol/server.py", line 176, in _read_acme_cert
raise acme_exc from err
SystemError: Let's Encrypt certificate not found. The `acme.json` file might not have been generated or lacks certificate details.
This can also occur if the certificate failed to generate for localhost, as Let's Encrypt only issues certificates for public domains.
Try deleting and recreating the `acme.json` file, or consider using a self-signed certificate for local environments or closed networks.
Ответ: Проблема с генерацией сертификата. Выполните:
-
- Перейдите в папку
../MultiDirectory/.
- Перейдите в папку
-
- Выполните команду для генерации сертификата (замените
your-domain.ruна имя вашего домена):
- Выполните команду для генерации сертификата (замените
openssl req -nodes -new -x509 -keyout ./certs/privkey.pem -out ./certs/cert.pem -subj '/C=RU/ST=Moscow/L=Moscow/O=Global Security/OU=Multifactor/CN=your-domain.ru'
Вопрос: Я хочу чтобы MULTIDIRECTORY работала с моим сертификатом, что мне для этого нужно сделать?
Ответ: Для добавления самоподписанных сертификатов выполните следующие действия:
-
- В файле
traefik.ymlзакомментируйте следующие строки:
- В файле
# certificatesResolvers: # md-resolver: # acme: # tlschallenge: true # email: support.md@multifactor.com # storage: /letsencrypt/acme.json
P.S.: названия сертификатов обязательно должны быть:
-
- privkey.pem
-
- cert.pem
Вопрос: Контейнер при запуске возвращает ошибку «137»
Ответ: Для устранения выполните одно из действий:
-
- Добавьте Swap-файл в папку MULTIDIRECTORY (пример инструкции);
-
- Увеличьте объем ОЗУ;
-
- Очистите память от сторонних процессов.
Вопрос: Я хочу добавить сертификат для ldaputil (только для Let’s Encrypt)
Ответ:
-
- Загрузите сертификат и обновите хранилище:
wget -O /usr/local/share/ca-certificates/isrgrootx1.crt https://letsencrypt.org/certs/isrgrootx1.pem update-ca-certificates
-
- В файл
ldap.confдобавьте строку:
- В файл
TLS_CACERT /etc/ssl/certs/isrgrootx1.pem
Вопрос: При работе в веб-интерфейсе меня перенаправляет на страницу входа (установлено на виртуализации: QEMU, Proxmox и т.п.)
Ответ:
-
- Посмотрите логи контейнера dragonfly.
-
- Если есть ошибка:
An attept to execute an instruction failed. The root cause might be an old hardware. Exiting...
То необходимо установить тип виртуализации CPU: host / host passthrough.
Вопрос: После установки, я не могу войти в систему, при этом установка прошла корректно и без ошибок.
Ответ:
-
- Посмотрите логи контейнера dragonfly.
-
- Если есть ошибка:
An attempt to execute an instruction failed.The root cause might be an old hardware. Exiting...
Выполните проверку вашего процессора на поддержку AVX инструкций.
grep flags /proc/cpuinfo | head -1 | tr ' ' '\n' | grep -i avx
Если вывод команды оказался пустым, ваш процессор не соответствует минимальным техническим требованиям, для корректной работы контейнера dragonfly.
Вопрос: В ходе установки, возникает ошибка связанная с недоступностью 53-го порта.
Пример ошибки:
Error response from daemon: failed to set up container networking: driver failed programming external connectivity on endpoint traefik: failed to bind host port 0.0.0.0:53/tcp: address already in use
Ответ:
-
- Занятый порт 53 системой.
Выполните следующую команду, DNS сервера можно изменить на другие:
sudo bash -c 'F=/etc/systemd/resolved.conf; DNS="1.0.0.1 8.8.4.4"; cp -a "$F"{,.bak.$(date +%Y%m%d-%H%M%S)} 2>/dev/null || true; grep -q "^\[Resolve\]" "$F" || printf "\n[Resolve]\n" >>"$F"; sed -i -E "/^[[:space:]]*#?[[:space:]]*DNSStubListener[[:space:]]*=.*/d; /^[[:space:]]*#?[[:space:]]*DNS[[:space:]]*=.*/d" "$F"; awk -v dns="$DNS" '\''{print} /^\[Resolve\]$/ {print "DNS="dns; print "DNSStubListener=no"}'\'' "$F" > "$F.tmp" && mv "$F.tmp" "$F"; ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf; systemctl restart systemd-resolved; echo OK'