Дерево страниц

Данная статья применима к:

  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7), РУСБ.10015-10
  • Astra Linux Special Edition РУСБ.10015-17
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10015-03 (очередное обновление 7.6)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
  • Astra Linux Special Edition РУСБ.10015-16 исп. 1
  • Astra Linux Special Edition РУСБ.10015-16 исп. 2
  • Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
  • Astra Linux Common Edition 2.12

Организационные мероприятия по обеспечению восстановления

Во избежание потери данных рекомендуется сохранять созданные резервные копии на отдельных серверах или носителях. Создание резервных копий должно выполняться на регулярной основе, дополнительно рекомендуется создавать резервные копии непосредственно перед обновлениями системы.

При сохранении резервных копий, созданных с использованием защитного преобразования данных, необходимо также сохранить ключи, с использованием которых создавалась копия. Для предотвращения несанкционированного доступа к данным резервные копии и ключи рекомендуется хранить раздельно.

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

  • для восстановления контроллеров домена с помощью репликации необходимо заранее сохранить файлы - контейнеры p12 с сертификатами этих контроллеров;
  • необходимо обеспечить сохранность файлов, находящихся в каталоге /etc/ssl/freeipa на первом созданном контроллере домена. В случае утери этих файлов дальнейшая работа с доменом станет невозможной.

Создание резервной копии контроллера домена FreeIPA

Для создания резервной копии действующего контроллера домена (далее - КД) FreeIPA следует использовать инструмент ipa-backup (входит в состав пакета freeipa-server). Особенности инструмента ipa-backup:

  • Поддерживается два варианта создания резервной копии:
    • Полная резервная копия. Для создания полной резервной копии требуется остановка служб FreeIPA (остановка и перезапуск служб выполняются автоматически);
    • Резервная копия данных. Может выполняться без остановки служб FreeIPA;
  • Данные создаваемой резервной копии могут подвергаться защитному преобразованию с использованием принятого по умолчанию GPG-ключа пользователя root или заданного ключа. Пароли не поддерживаются;
  • Резервные копии сохраняются в подкаталогах каталога /var/lib/ipa/backup:
    • Полные резервные копии в подкаталогах ipa-full-YEAR-MM-DD-HH-MM-SS (используется время GMT);
    • Резервные копия данных в подкаталогах ipa-data-YEAR-MM-DD-HH-MM-SS (используется время GMT);
  • В каждом подкаталоге создается файл с именем header. Пример файла:

    [ipa]
    type = FULL
    time = 2021-09-22T14:03:50
    host = ipa0.ipadomain0.ru
    ipa_version = 4.6.4
    version = 1
    services = NTP,KDC,KPASSWD,KEYS,OTPD,HTTP,DNS,DNSKeySync,ADTRUST,EXTID

    Файл header содержит следующую информацию:

    • тип резервной копии (полная или данных);
    • время создания резервной копии;
    • имя хоста;
    • номер версии FreeIPA;
    • номер версии резервной копии;
    • список сервисов, используемых хостом.
  • Резервные копии не могут быть восстановлены на компьютере, имеющем конфигурацию, отличающуюся от исходного компьютера;
  • Резервные копии не могут быть восстановлены с другой версией FreeIPA.

Команда для создания полной резервной копии:

sudo ipa-backup

Preparing backup on ipa0.ipadomain0.ru
Stopping IPA services
Backing up userRoot in IPADOMAIN0-RU to LDIF
Backing up IPADOMAIN0-RU
Backing up files
Backed up to /var/lib/ipa/backup/ipa-full-2021-09-22-17-04-02
Starting IPA service
The ipa-backup command was successful

Восстановление контроллера домена FreeIPA из реплики

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

  • имеется локальная сеть с адресом 10.0.20.0/24;
  • были созданы два контроллера домена ipa0.ipadomain0.ru и ipa1.ipadomain0.ru (с IP-адресом 10.0.2.22);
  • контроллер ipa1.ipadomain0.ru  был полностью уничтожен.
  • При работе без использования центра сертификации DogTag: для восстановления контроллера из реплики необходимо иметь контейнер p12 с сертификатами. Этот контейнер должен быть сохранен заранее и доступен при восстановлении. В случае утери контейнера с сертификатами можно создать новую реплику с новым сертификатом, но восстановить утерянную реплику невозможно;
  • При работе с использованием центра сертификации DogTag действия по восстановлению сертификатов не требуются, будет создана новая реплика, возможно, с тем же именем хоста, но с новыми сертификатами.
  • на сохранившемся контроллере домена ipa0.ipadomain0.ru:
    • удалить соглашение о репликации с потерянным контроллером:

      sudo ipa-replica-manage del ipa1.ipadomain0.ru

    • убедиться, что удалены DNS-записи об утерянном сервере. Должны быть удалены все упоминания восстанавливаемого контроллера домена в записях типов "SRV record", "A record", "NS record":

      ipa dnsrecord-find ipadomain0.ru | egrep "(SRV|A|NS) record:"
      Если записи не удалены - повторить удаление соглашения о репликации, при необходимости - удалить записи через web-интерфейс FreeIPA;

    • добавить запись типа "PTR" в реверсивную зону:

      ipa dnsrecord-add 20.0.10.in-addr.arpa. 22 --ptr-rec ipa1.ipadomain0.ru.
      где 22 - адрес восстанавливаемого компьютера;

  • на новом компьютере:
    • установить ОС;
    • войти под локальной учетной записью привилегированного пользователя (для Astra Linux Special Edition - привилегированного пользователя с высоким уровнем целостности);
    • назначить серверу полное имя (FQDN) такое же, как у исходного сервера;
    • настроить сеть так же, как она была настроена на исходном сервере;
    • ввести новый компьютер в домен;
    • перезагрузить сервер;
    • войти под учетной записью доменного администратора;

    • инициализировать новую реплику (если не используется DogTag - то можно использовать сохраненный контейнер p12 с сертификатом старого контроллера домена. См. FreeIPA: настройка репликации). Примеры команд:

      • Без использования DogTag:

        sudo astra-freeipa-replica -a ipa1.ipadomain0.ru-200305-142302.p12 --pin 12345678

      • С использованием DogTag:

        sudo astra-freeipa-replica --dogtag

Восстановление контроллера домена FreeIPA из резервной копии

Восстановление состояния контроллера домена

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

sudo ipa-restore ipa-full-2021-09-22-17-04-02/

Directory Manager (existing master) password:

Preparing restore from /var/lib/ipa/backup/ipa-full-2021-09-22-17-04-02/ on ipa0.ipadomain0.ru
Performing FULL restore from FULL backup
Temporary setting umask to 022
Restoring data will overwrite existing live data.
Continue to restore? [no]: yes
Each master will individually need to be re-initialized or
re-created from this one. The replication agreements on
masters running IPA 3.1 or earlier will need to be manually
re-enabled. See the man page for details.
Disabling all replication.
Stopping IPA services
Configuring certmonger to stop tracking system certificates for CA
Systemwide CA database updated.
Restoring files
Systemwide CA database updated.
Restoring from userRoot in IPADOMAIN0-RU
Restarting GSS-proxy
Starting IPA services
Restarting SSSD
Restarting oddjobd
Restoring umask to 18
The ipa-restore command was successful

Если резервная копия находится в нестандартном каталоге, то вместо имени резервной копии можно указать полный путь к каталогу резервной копии:

sudo ipa-restore /var/lib/ipa/backup/ipa-full-2021-09-22-17-04-02/

Восстановление когда данные домена полностью уничтожены

Для восстановления контроллера домена FreeIPA на новом компьютере при отсутствии реплик и наличии полной резервной копии:

  • установить ОС на новый компьютер;
  • войти под локальной учетной записью привилегированного пользователя (для Astra Linux Special Edition - привилегированного пользователя с высоким уровнем целостности);
  • назначить серверу полное имя (FQDN) такое же, как у исходного сервера;
  • настроить сеть так же, как она была настроена на исходном сервере;
  • развернуть контроллер домена FreeIPA с пустой базой данных по инструкции Контроллер ЕПП FreeIPA в Astra Linux;
  • перезагрузить сервер;
  • войти под локальной учетной записью привилегированного пользователя (для Astra Linux Special Edition - привилегированного пользователя с высоким уровнем целостности);

    Не использовать вход в сессию администратора домена до восстановления контроллера домена из резервной копии.
  • скопировать резервную копию на новый компьютер. Если при создании резервной копии использовалось защитное преобразование - обеспечить доступ к использованным при создании ключам;
  • выполнить команду восстановления. Для выполнения команды потребуется указать пароль администратора нового контроллера домена FreeIPA и подтвердить удаление существующих данных:

    sudo ipa-restore /var/lib/ipa/backup/ipa-full-2021-09-22-17-04-02/

    Directory Manager (existing master) password:

    Preparing restore from /var/lib/ipa/backup/ipa-full-2021-09-22-17-04-02/ on ipa0.ipadomain0.ru
    Performing FULL restore from FULL backup
    Temporary setting umask to 022
    Restoring data will overwrite existing live data.
    Continue to restore? [no]: yes
    Each master will individually need to be re-initialized or
    re-created from this one. The replication agreements on
    masters running IPA 3.1 or earlier will need to be manually
    re-enabled. See the man page for details.
    Disabling all replication.
    Stopping IPA services
    Configuring certmonger to stop tracking system certificates for CA
    Systemwide CA database updated.
    Restoring files
    Systemwide CA database updated.
    Restoring from userRoot in IPADOMAIN0-RU
    Restarting GSS-proxy
    Starting IPA services
    Restarting SSSD
    Restarting oddjobd
    Restoring umask to 18
    The ipa-restore command was successful

  • перезагрузить сервер;
  • войти под учетной записью администратора домена, используя старые имя и пароль;

    Если до восстановления контроллера домена из резервной копии производился вход в сессию администратора домена с таким же именем - то вход будет невозможен.
    В этом случае необходимо удалить домашний каталог этой доменной учетной записи.  

Проверка корректности восстановления

Для простой проверки корректности восстановления можно проверить списки пользователей, хостов и контроллеров, выполнив соответствующие команды на восстановленном контроллере домена:

kinit admin
ipa user-find
ipa host-find
ipa server-find

Ошибка при попытке входа в web-интерфейс FreeIPA после восстановления

Если после восстановления реплики и перезагрузки при попытке входа в web-интерфейс FreeIPA возникает ошибка "Login failed due to an unknown reason":

и в журнале /var/log/syslog регистрируются ошибки вида:

... named-pkcs11[929]: LDAP error: Can't contact LDAP server: bind to LDAP server failed

Необходимо проверить сетевые настройки (файл /etc/resolv.conf) и изменить их так, чтобы первым был указан собственный IP-адрес восстановленной реплики.

Обновление серверов FreeIPA

Обновление серверов FreeIPA выполняется при общем обновлении системы:

Использование для обновления команды ipa-server-upgrade не поддерживается.
  • Нет меток