Инструмент astra-freeipa-server-crt реализует выпуск сертификатов для серверов (реплик) FreeIPA и предназначен для автоматизации работы в системах, в которых не применяется DogTag, являющийся штатной системой управления сертификатами FreeIPA.
Данная статья предполагает, что читатель ознакомлен с базовыми материалами по установке Контроллер ЕПП FreeIPA в Astra Linux
См. также:
Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8)
- 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-01 (очередное обновление 1.6) с установленным оперативным обновлением БЮЛЛЕТЕНЬ № 20200722SE16 (Update 6)
- Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7)
Сценарий применения
Первый контроллер домена FreeIPA инициализируется с помощью инструмента astra-freeipa-server с использованием автоматического выпуска самоподписанного корневого сертификата и без использования центра авторизации DogTag.
С точки зрения работы схемы репликации FreeIPA все серверы-реплики равноправны, однако с точки зрения установки, развертывания и сопровождения FreeIPA выделяется первый сервер. Особенность этого сервера состоит в том, что на нем,создаются ключ и сертификат удостоверяющего центра. Далее этот сервер (контроллер) условно называется "первый".На первом контролере при инициализации без использования DogTag в каталоге /etc/ssl/freeipa автоматически создаются файлы:
- /etc/ssl/freeipa/ca.key - закрытый ключ удостоверяющего центра;
- /etc/ssl/freeipa/ca.crt - сертификат закрытого ключа удостоверяющего центра;
- /etc/ssl/freeipa/server.key - закрытый ключ сервера;
- /etc/ssl/freeipa/server.crt - сертификат закрытого ключа сервера;
При добавлении сервера-реплики:
Пользователь-администратор на сервере-реплике выполняет настройки параметров хоста (IP-адрес, адрес сервера DNS, hostname) и установку пакетов. В том числе на сервере - реплике запускается служба SSH:
sudo systemctl enable --now ssh- Пользователь-администратор на сервере-реплике выполняет ввод сервера в домен;
Для выпуска сертификатов следующих устанавливаемых контроллеров-реплик используется инструмент astra-freeipa-server-crt. Пример команды, выполняемой на основном сервере:
sudo astra-freeipa-server-crt --host replica1.ipadomain.ru --export --push localadm@192.168.32.1 --pin 12345где:
--host - полное доменное имя нового сервера-реплики;
--export - указание выгрузить контейнер закрытого ключа и сертификата в файл-контейнер в формате pksc12;
--push - указание скопировать контейнер pkcs12 на сервер, где будет выполняться установка, в домашний каталог пользователя localadm (в общем случае это пользователь-администратор, заданный при установке системы) в файл с именем replica1.ipadomain.ru.p12 (в качестве имени используется полное доменное имя целевого сервера с расширением .p12);
--pin - пароль к создаваемому контейнеру.
Сертификаты по умолчанию создаются для того обновления ОС, на котором выполняется команда. Для создания сертификатов для других обновлений ОС следует дополнительно использовать опции:
--46 — создавать сертификаты для FreeIPA v4.6.x. Используется по умолчанию для Astra Linux Common Edition 2.12, Astra Linux Special Edition. 1.6/8.1;
--48 — создавать сертификаты для FreeIPA v4.8.x (Astra Linux Special Edition x.7).Установка FreeIPA на сервере-реплике выполняется пользователем-администратором, из его домашнего каталога, в который на предыдущем шаге скопирован контейнер pksc12. Команда:
sudo astra-freeipa-replica -a replica1.ipadomain.ru.p12 --pin 12345
По мере необходимости (например, при истечении срока действия сертификатов) выпуск новых сертификатов и отправка их на серверы-реплики выполняется командой:
sudo astra-freeipa-server-crt --host replica1.ipadomain.ru --push adminгде
--host - полное доменное имя сервера-реплики;
--push - указание автоматически установить выпущенный сертификат на сервере реплике, действуя от имени пользователя admin (имя администратора домена "по умолчанию").
Новые сертификаты следует выпускать с использованием ранее выпущенного закрытого ключа сервера. По умолчанию для новых серверов файлы с новыми ключами создаются с именем, совпадающим с именем сервера, и они же используются для создания новых сертификатов. Исключением является первый сервер, ключ которого лежит в файле /etc/ssl/freeipa/server.key. Для того, чтобы использовать ключ первого сервера при обновлении сертификатов этого сервера следует:Использовать опцию --sekey, позволяющую явно указать используемый ключ, например:
sudo astra-freeipa-server-crt --host `hostname` --sekey /etc/ssl/freeipa/server.keyПеред выпуском сертификата создать копию ключа в файле с нужным именем, например:
sudo ln -s /etc/ssl/freeipa/server.key /etc/ssl/freeipa/`hostname`.key
Справка по программе
Актуальная справка по программе доступна во встроенной подсказке: