Обновление серверной части Avanpost DS из архива .tar

ВНИМАНИЕ:

Перед обновлением серверной части Avanpost DS необходимо сделать резервную копию по инструкции: "7.11. Резервное копирование Avanpost DS и восстановление из копии".

Для обновления серверной части Avanpost DS необходимо подключиться к каждому контроллеру домена по SSH и выполнить шаги:

ВНИМАНИЕ:

Каждый шаг необходимо выполнить на всех контроллерах в домене, прежде чем переходить к следующему шагу.

Шаг 1. Сделать резервную копию конфигурационного файла Avanpost DS на каждом контроллере домена.

Для этого необходимо выполнить команду:

Пример команды
sudo cp /opt/avanpost/ads/config/config.yaml /opt/avanpost/ads/config/config.yaml.backup

Примечание

При обновлении актуальный конфигурационный файл может быть заменен на дефолтный.

Шаг 2. Остановить службу "ads" на каждом контроллере домена.

Для этого необходимо выполнить команду:

sudo systemctl stop ads

Шаг 3. Загрузить дистрибутивы Avanpost DS Server на сервер по SFTP в директорию "/tmp" на каждый контроллер домена.

Примечание

Вместо SFTP можно воспользоваться SCP:

Шаблон команды
scp [Путь до архива] [реквизиты для подключения по SSH]:[Полный путь папки назначения]
Пример команды
scp /home/admin/Avanpost.DS.Server.Linux.v*.tar.gz root@192.168.1.11:/tmp/

Шаг 4. Переместить архивы с дистрибутивами Avanpost DS Server в директорию "/opt/avanpost/ads/", разархивировать и удалить архивы на каждом контроллере домена.

Для этого необходимо выполнить команды:

sudo tar -xvzf /tmp/Avanpost.DS.Server.Linux.v*.tar.gz -C /opt/avanpost/ads && \
sudo rm /tmp/Avanpost.DS.Server.Linux.v*.tar.gz && \
sudo tar -xvzf /tmp/Avanpost.DS.Server.Linux.Tools.v*.tar.gz -C /opt/avanpost/tools && \
sudo rm /tmp/Avanpost.DS.Server.Linux.Tools.v*.tar.gz

Шаг 5. Скопировать утилиту dscli в директорию "/opt/avanpost/dscli/dscli".

Для этого требуется выполнить команду:

sudo cp /opt/avanpost/tools/dscli/dscli /opt/avanpost/dscli/dscli

Шаг 6. Переименовать копию конфигурационного файла "config.yaml.bak" в "config.yaml" на каждом контроллере домена..

Для этого необходимо выполнить команду:

cp /opt/avanpost/ads/config/config.yaml.backup /opt/avanpost/ads/config/config.yaml

Шаг 7. Выполнить миграцию БД на каждом контроллере домена. (только для версии Avanpost DS 1.7 и выше)

Для этого требуется выполнить команду:

sudo /opt/avanpost/ads/cmd/ads/ads migrator upgrade

Шаг 8. Выдать права на директорию "/opt/avanpost" на каждом контроллере домена.

Для этого необходимо выполнить команду:

sudo chown -R ads:ads /opt/avanpost/

Шаг 9. Запустить сервис "ads" на каждом контроллере домена.

Для этого необходимо выполнить команду:

sudo systemctl start ads

Шаг 10. Проверить разделы веб-интерфейса администратора Avanpost DS. 

Необходимо проверить наличие:

  • Пользователей в разделе "Пользователи";
  • Групп в разделе "Группы";
  • Рабочих станций в разделе "Рабочие станции";
  • Организационных подразделений в разделе "Иерархия";
  • DNS зон и записей в разделе "DNS";
  • Групповых и парольных политик в разделе "Политики";
  • Сайтов, подсетей и связей репликации в разделе "Репликация";
  • Записей в разделе "Журнал безопасности".


ВНИМАНИЕ:

Шаги 10-13 требуется выполнить только при обновлении Avanpost DS на версию 1.9.0+ с версии 1.8.2 или более ранней.

Шаг 11. Установить пакеты. (Только при обновлении Avanpost DS на версию 1.9.0+ с версии 1.8.2 или более ранней)

Для этого необходимо выполнить команды:

RedOS
sudo dnf install openssl tar nginx xmlsec1 xmlsec1-openssl wget curl pdns pdns-backend-ldap pdns-recursor bind-utils cyrus-sasl-gssapi sssd authselect-compat mesa-libGL pam_krb5
 Astra 1.7, 2.12
sudo apt install openssl nginx xmlsec1 libxmlsec1-openssl dnsutils ssh sssd libsss-sudo krb5-user libsasl2-modules-gssapi-heimdal acl
 Astra 1.8
sudo apt install nginx xmlsec1 libxmlsec1-openssl wget pdns-server pdns-backend-ldap pdns-recursor dnsutils krb5-user libsasl2-modules-gssapi-heimdal acl
 Alt
sudo apt-get install openssl tar nginx libxmlsec1 libxmlsec1-openssl wget curl pdns pdns-backend-ldap pdns-recursor bind-utils kstart krb5-kinit sssd sssd-client task-auth-ad-sssd sssd-winbind-idmap sssd-tools sssd-pac sssd-ldap sssd-dbus sssd-ad python3-module-sssd python3-module-sssdconfig sssd-krb5 sssd-krb5-common
МСВСфера
sudo dnf install openssl tar nginx xmlsec1 xmlsec1-openssl wget curl pdns pdns-backend-ldap pdns-recursor bind-utils cyrus-sasl-gssapi sssd authselect-compat mesa-libGL pam_krb5

Шаг 12. Ввести контроллер в домен. (Только при обновлении Avanpost DS на версию 1.9.0+ с версии 1.8.2 или более ранней)

Команда ввода контроллера в домен ("dscli joindc") доступна начиная с версии Avanpost DS 1.8.3.17.

Если КД был введен в домен как рабочая станция до версии Avanpost DS 1.8.3.17, то в разделе "Иерархия" веб-интерфейса Avanpost DS требуется перенести все КД из подразделения "hosts" в подразделение "domaincontrollers", затем выполнить команду ввода контроллера в домен "dscli joindc".  Это необходимо для корректной работы автоматически сгенерированных политик HBAC.

При вводе КД в домен как рабочую станцию запись КД помещается в подразделение "domaincontrollers". Если требуется переместить запись КД в другое подразделение, необходимо отредактировать политики HBAC в случае их использования.

Подробнее о настройке политик HBAC см. статью: "6.9. Управление групповыми политиками".

Для этого необходимо выполнить команду по шаблону:

Шаблон команды
sudo /opt/avanpost/tools/dscli/dscli joindc -domain [Домен2ур].[Домен1ур] -login [Логин]

Заменить [Домен1ур] на свой домен первого уровня, а [Домен2ур] — на свой домен второго уровня.

Заменить [Логин] на логин администратора Avanpost DS.

Пример команды
sudo /opt/avanpost/tools/dscli/dscli joindc -domain avanpost.local -login lipov

Шаг 13. Включить и добавить в автозагрузку службы "dscli.service", "dscli.timer" и "dscli-health.service". (Только при обновлении Avanpost DS на версию 1.9.0+ с версии 1.8.2 или более ранней)

Для этого необходимо выполнить команду:

sudo systemctl enable --now dscli.service && sudo systemctl enable --now dscli.timer && sudo systemctl enable --now dscli-health.service

Примечание

Служба "dscli" применяет групповые политики, а так же отслеживает изменения IP-адреса на хосте и отправляет их на контроллер Avanpost DS.

Шаг 14. Перезагрузить сервис "ads" и проверить его статус на каждом контроллере домена. (Только при обновлении Avanpost DS на версию 1.9.0+ с версии 1.8.2 или более ранней)

Для этого требуется выполнить команды:

sudo systemctl restart ads && sudo systemctl status ads

Обсуждение