zVirt и шифрованная связь
1. Замена сертификата Менеджера управления, выданного Центром сертификации
Не изменяйте разрешения и параметры владения для каталога /etc/pki и его подкаталогов. Разрешение для каталога /etc/pki и /etc/pki/ovirt-engine должно оставаться в значении по умолчанию: 755.
|
Вы можете настроить в своей организации сертификат, выданный альтернативным Центром сертификации, чтобы идентифицировать Менеджер управления для пользователей, подключающихся через HTTPS.
| Сертификат стороннего ЦС (Certificate Authority) предоставляется в виде PEM-файла. Цепочка сертификатов должна быть полной вплоть до корневого сертификата. Порядок цепочки сертификатов является критически важным, цепочка должна строится от последнего промежуточного ЦС до корневого ЦС. В противном случае при проверке подлинности сервера может произойти сбой. |
| Использование сертификата, выданного альтернативным Центром сертификации, для HTTPS-подключений не влияет на сертификат, используемый для аутентификации между Менеджером управления и хостами. Они будут продолжать использовать самоподписанный сертификат, созданный Менеджером управления. |
1.1. Соглашения
-
/root - расположение файлов полученных от ЦС или в процессе выполнения процедуры замены.
-
/root/apache.p12 - сертификат полученный от ЦС в формате PKCS#12.
-
/root/ca.pem - сертификат ЦС.
-
/root/apache.key - новый закрытый ключ веб-сервера.
-
/root/apache.cer - новый сертификат веб-сервера.
|
1.2. Описание процедуры замены SSL-сертификата
Процедура замены SSL-сертификата зависит от версии zVirt.
См. инструкцию для zVirt версии 3.3 и выше.
2. Настройка шифрованной связи между Менеджером управления и LDAP-сервером
Чтобы настроить шифрованную связь между Менеджером управления и LDAP-сервером, получите корневой сертификат LDAP-сервера, выданный Центром сертификации, скопируйте этот корневой сертификат в Менеджер управления и создайте сертификат, выданный Центром сертификации, в PEM-кодировке. Тип хранилища ключей может быть любым типом, поддерживаемым Java. В следующей процедуре используется формат Java KeyStore (JKS).
| Дополнительные сведения о создании сертификата Центра сертификации в кодировке PEM и импорте сертификатов см. в разделе X.509 CERTIFICATE TRUST STORE файла README, размещенного в /usr/share/doc/ovirt-engine-extension-aaa-ldap-version. |
-
В Менеджере управления скопируйте корневой сертификат LDAP-сервера, выданный Центром сертификации, в каталог /tmp и импортируйте корневой сертификат Центра сертификации с помощью
keytool, чтобы создать сертификат Центра сертификации в кодировке PEM. Следующая команда импортирует корневой сертификат Центра сертификации в /tmp/myrootca.pem и создает корневой сертификат Центра сертификации в кодировке PEM myrootca.jks в /etc/ovirt-engine/aaa/. Выпишите местонахождение сертификата и пароль. Если вы используете интерактивный инструмент настройки, то это – вся информация, которая вам понадобится. Если вы настраиваете LDAP-сервер вручную, выполните оставшуюся часть процедуры, чтобы обновить файлы конфигурации.$ keytool \ -importcert \ -noprompt \ -trustcacerts \ -alias _myrootca_ \ -file _/tmp/myrootca.pem_ \ -keystore _/etc/ovirt-engine/aaa/myrootca.jks_ \ -storepass _password_ -
Обновите файл /etc/ovirt-engine/aaa/profile1.properties, внеся в него сведения о сертификате:
${local:_basedir}– это каталог, где находится файл конфигурации свойств LDAP, указывающий на каталог /etc/ovirt-engine/aaa. Если вы создали сертификат Центра сертификации в кодировке PEM в другом каталоге, замените${local:_basedir}полным путем к сертификату.-
Чтобы использовать startTLS (рекомендуется):
# Create keystore, import certificate chain and uncomment pool.default.ssl.startTLS = true pool.default.ssl.truststore.file = ${local:_basedir}/_myrootca.jks_ pool.default.ssl.truststore.password = _password_ -
Чтобы использовать SSL:
# Create keystore, import certificate chain and uncomment pool.default.serverset.single.port = 636 pool.default.ssl.enable = true pool.default.ssl.truststore.file = ${local:_basedir}/_myrootca.jks_ pool.default.ssl.truststore.password = _password_
-
Чтобы продолжить настройку внешнего провайдера LDAP, см. раздел Настройка внешнего провайдера LDAP. Чтобы продолжить настройку LDAP и Kerberos для единого входа, см. раздел Настройка LDAP и Kerberos для единого входа.
3. Включение шифрованных консолей VNC для FIPS
Вы можете настроить шифрованные консоли VNC на работу с Менеджером управления и хостами, на которых включен FIPS.
Чтобы настроить шифрованные консоли VNC, выполните следующие процедуры:
-
Включите FIPS в zVirt
-
Настройте параметры консоли кластера, которому принадлежит хост, чтобы включить шифрование VNC.
-
Запустите Ansible-плейбук VNC SASL на каждом хосте.
-
Настройте инструмент удаленного просмотра (Remote Viewer) так, чтобы он доверял сертификату Менеджера управления, выданному Центром сертификации.
3.1. Настройка кластера на включение шифрования VNC
-
На Портале администрирования нажмите .
-
Выберите кластер, в котором нужно включить шифрование VNC, и нажмите Изменить (Edit). Откроется окно Изменить кластер (Edit Cluster).
-
Выберите вкладку Консоль (Console).
-
Установите флажок в поле Включить VNC шифрование (Enable VNC Encryption) и нажмите OK.
3.2. Запуск Ansible-плейбука VNC SASL для каждого хоста
-
На Портале администрирования переведите созданные вами хосты с включенным FIPS в режим обслуживания:
-
На Портале администрирования нажмите .
-
В столбце Количество ВМ (Virtual Machines) убедитесь, что ни на одном хосте нет виртуальных машин. Выполните миграцию на лету, чтобы удалить все виртуальные машины со всех хостов, если необходимо. Подробные сведения см. в разделе Миграция виртуальных машин между хостами руководства по управлению виртуальными машинами.
-
Выберите каждый хост и нажмите Управление (Management) → Обслуживание (Maintenance), а атем OK.
-
-
Подключитесь к командной строке машины, на которой запущен Менеджер управления.
-
Если Менеджер управления работает на автономной машине, подключитесь к ее командной строке. Например, введите:
ssh root@zvirt-host -
Если Менеджер управления работает как hosted engine, нажмите , чтобы выбрать виртуальную машину hosted engine, по умолчанию названную
HostedEngine, и затем нажмите Консоль (Console).
-
-
На машине с Менеджером управления запустите Ansible-плейбук VNC SASL для каждого хоста.
cd /usr/share/ovirt-engine/ansible-runner-service-project/project/ ansible-playbook --ask-pass --inventory=<hostname>, ovirt-vnc-sasl.ymlВ качестве <hostname> введите полное имя хоста (Hostname), показанное в разделе .
-
Выберите хост и нажмите Настройки (Installation) → Переустановить (Reinstall).
-
После переустановки выберите хост и нажмите Управление (Management) → Перезапустить (Restart).
-
После перезагрузки выберите хост и нажмите Управление (Management) → Включить (Activate).
Поиск и устранение неполадок
При запуске Ansible-плейбука VNC SASL задача может завершиться сбоем с выводом следующего сообщения об ошибке:
Using a SSH password instead of a key is not possible because Host Key checking is enabled and sshpass does not support this. Please add this host's fingerprint to your known_hosts file to manage this host.
Чтобы решить эту проблему, выключите проверку ключа хоста, выполнив одно из следующих действий:
-
Выключите проверку ключа хоста навсегда, раскомментировав следующую строку в файле /etc/ansible/ansible.cfg:
#host_key_checking = False -
Выключите проверку ключа хоста на время, выполнив следующую команду:
export ANSIBLE_HOST_KEY_CHECKING=False.
3.3. Настройка инструмента удаленного просмотра (Remote Viewer) так, чтобы он доверял сертификату Менеджера управления, выданному Центром сертификации
Настройте консоль инструмента удаленного просмотра (Remote Viewer) на клиентской машине, virt-viewer или remote-viewer так, чтобы она доверяла Центру сертификации Менеджера управления.
-
Перейдите по адресу
https://<engine_address>/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA. -
Включите все настройки доверия.
-
На клиентской машине, где нужно запустить консоль VNC, создайте каталог для файла сертификата:
$ mkdir ~/.pki/CAЕсли на этом шаге возникнет ошибка, такая как mkdir: cannot create directory ‘/home/example_user/.pki/CA’: File exists, примите меры, чтобы не допустить перезаписывания ~/.pki/CA/cacert.pem на следующем шаге. Например, включите текущую дату в имя файла. -
Загрузите сертификат:
$ curl -k -o ~/.pki/CA/cacert-<today's date>.pem \ '\https://<engine_address>/ovirt-engine/services/pki-resource?resource=ca-certificate&format=X509-PEM-CA' -
Установите центр сертификации в браузер:
- Установка сертификата CA в Firefox
-
-
Перейдите в веб-браузере по
URL-адресупортала и на странице приветствия выберитеCA сертификат. -
Файл с именем
pki-resource(без расширения файла) будет загружен. -
Откройте окно параметров/настроек:
-
Windows: откройте меню Инструменты и выберите Параметры…
-
Mac: откройте меню Firefox и выберите Настройки…
-
Linux: откройте меню Правка и выберите Настройки.
-
-
Выберите Конфиденциальность и безопасность и прокрутите вниз до Сертификаты.
-
Щелкните Просмотреть сертификаты…. Откроется диспетчер сертификатов.
-
Выберите вкладку Полномочия.
-
Нажмите Импорт
-
Выберите файл корневого сертификата, который вы хотите импортировать (измените тип файла на Все файлы, чтобы просмотреть загруженный файл).
-
Установите флажки, указывающие параметры доверия, и нажмите OK.
-
Нажмите OK в Диспетчере сертификатов и закройте окно Параметры/Настройки.
-
Убедитесь, что все процессы Firefox остановлены.
-
Перезапустите Firefox и перейдите по
URL-адресупортала. Значок
в адресной строке указывает на то, что сертификат CA установлен.
-
- Установка сертификата CA в Google Chrome
-
-
Перейдите веб-браузере по
URL-адресупортала и на странице приветствия выберите CA сертификат. -
Файл с именем
pki-resource(без расширения файла) будет загружен. -
Перейдите в → вкладка Центры и нажмите ИМПОРТ.
-
Выберите файл корневого сертификата, который вы хотите импортировать (измените тип файла на Все файлы, чтобы просмотреть загруженный файл).
-
Установите все флажки, указывающие параметры доверия, и нажмите OK.
-
Закройте Chrome и убедитесь, что все процессы Chrome остановлены.
-
Перезапустите
Chromeи перейдите поURL-адресупортала. Значок
в адресной строке указывает на то, что сертификат CA установлен.
-
-
Установите библиотеки SASL SCRAM на клиентскую машину:
$ sudo dnf install cyrus-sasl-scram
-
Запустите виртуальную машину на одном из созданных хостов с включенным FIPS.
-
Подключитесь к виртуальной машине с помощью консоли VNC.