NetWorker. Импорт или замена сертификатов, подписанных центром сертификации, для «Authc» и «NWUI» (Linux)
Summary: Ниже приведены общие действия по замене самозаверяющего сертификата NetWorker по умолчанию сертификатом, подписанным источником сертификатов (CA) для служб «authc» и «nwui».
Instructions
В данных инструкциях описывается, как заменить самозаверяющий сертификат NetWorker по умолчанию сертификатом, подписанным ИС, для authc и nwui на сервере NetWorker.
Требования к именованию файлов не требуются, но для типа файла следует ссылаться на расширения. Примеры команд приведены для Linux. Инструкции для Windows см. в разделе:.
NetWorker. Импорт или замена сертификатов, подписанных центром сертификации, для «Authc» и «NWUI» (Windows)
Используемые файлы сертификатов:
<server>.csr: NetWorker server certificate signing request <server>.key: NetWorker server private key <server>.crt: NetWorker server CA-signed certificate <CA>.crt: CA root certificate <ICA>.crt: CA intermediate certificate (optional if it is available)
Используемые хранилища ключей:
authc.keystore authc.truststore cacerts nwui.keystore
Создайте закрытый ключ и файл запроса на заверение сертификата (CSR) для предоставления вашему CA.
-
Используйте утилиту командной строки OpenSSL для создания файла закрытого ключа сервера NetWorker (
<server>.key) и файл CSR (<server>.csr).# openssl req -new -newkey rsa:4096 -nodes -out /tmp/<server>.csr -keyout /tmp/<server>.key
-
Отправьте файл запроса подписи сертификата (
<server>.csr) в ЦС для создания файла сертификата, подписанного ИС (<server>.crt). Источник сертификатов должен предоставить файл сертификата, подписанного CA (<server>.crt), корневой сертификат (<CA>.crt) и любые промежуточные сертификаты CA (<ICA>.crt).
Этапы предварительной проверки:
Убедитесь в наличии следующего:
- server.crt, содержащий сертификат PEM, первая строка которого — -----BEGIN CERTIFICATE----- а последняя — -----END CERTIFICATE-----
- Файл ключа начинается с -----BEGIN RSA PRIVATE KEY----- и заканчивается словами -----END RSA PRIVATE KEY-----
- Убедитесь, что все сертификаты являются действительными файлами формата PEM, выполнив команду
openssl x509 -in <cert> -text -noout. - Проверьте указанный выше вывод, чтобы убедиться, что используется правильный сертификат.
- Проверьте выходные данные следующих двух команд:
openssl rsa -pubout -in server.key
openssl x509 -pubkey -noout -in server.crt
Выходные данные этих двух команд должны совпадать.
Для упрощения шагов и команд, описанных ниже, мы создаем следующие переменные:
java_bin=/opt/nre/java/latest/bin nsr=<path to /nsr partition> # In case of NVE for instance this is /data01/nsr cert=<path to server crt file> key=<path to server key file> RCAcert=<path to Root CA file> ICAcert=<path to intermediate CA crt file>
Если имеется несколько промежуточных сертификатов, создайте переменные для каждого сертификата: ICA1, ICA2 и т. д
. Необходимо знать правильные пароли хранилища ключей NetWorker. Эти пароли задаются во время настройки AUTHC и NWUI. Если вы не уверены, см.:
Вы также можете использовать переменные передачи хранилища ключей (вариант 1) или сохранить их в файле, чтобы скрыть пароль (вариант 2):
Пример для варианта 1:
authc_storepass='P4ssw0rd!' nwui_storepass='Password1!'
Пример для варианта 2:
authc_storepass=$(cat authc_storepass_file.txt) nwui_storepass=$(cat nwui_storepass_file.txt)
Прежде чем приступить, обратите внимание на следующее.
Создайте резервную копию хранилища ключей и обновленных файлов конфигурации.
tar -zcvf /tmp/NSR_$(hostname -s)_$(date -I).tar.gz $java_bin/../lib/security/cacerts $nsr/nwui/monitoring/app/conf/nwui.keystore /opt/nsr/authc-server/conf /nsr/nwui/monitoring/nwuidb/pgdata
Этапы замены сертификата службы аутентификации:
Переменная authc Для выполнения описанной ниже процедуры не обязательно останавливать обслуживание. Однако для загрузки новых сертификатов его необходимо перезапустить.
-
Импорт сертификатов
-
Импортируйте корневой сертификат (
<CA>.crt) и любые промежуточные сертификаты CA (<ICA>.crt) вauthc.keystore.$java_bin/keytool -import -alias RCA -keystore $nsr/authc/conf/authc.keystore -file $RCAcert -storepass $authc_storepass $java_bin/keytool -import -alias RCA -keystore /opt/nsr/authc-server/conf/authc.truststore -file $RCAcert -storepass $authc_storepass $java_bin/keytool -import -alias ICA -keystore $nsr/authc/conf/authc.keystore -file $ICAcert -storepass $authc_storepass $java_bin/keytool -import -alias ICA -keystore /opt/nsr/authc-server/conf/authc.truststore -file $ICAcert -storepass $authc_storepass
-
Используйте файл закрытого ключа сервера NetWorker (
<server>.key) и новый файл сертификата, подписанного ИС (<server>.crt) для создания файла хранилища PKCS12 дляemcauthctomcatиemcauthcsamlпсевдоним.openssl pkcs12 -export -in $cert -inkey $key -name emcauthctomcat -out /tmp/$hostname.tomcat.authc.p12 -password pass:$authc_storepass openssl pkcs12 -export -in $cert -inkey $key -name emcauthcsaml -out /tmp/$hostname.saml.authc.p12 -password pass:$authc_storepass
ПРИМЕЧАНИЕ. Пароль файла pkcs12 должен совпадать с паролем хранилища ключей. Вот почему в данном случае мы создадим его с помощью методаauthcStorePass. -
Импортируйте файлы хранилища PKCS12 в
authc.keystore.$java_bin/keytool -importkeystore -destkeystore /nsr/authc/conf/authc.keystore -srckeystore /tmp/$hostname.tomcat.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass $java_bin/keytool -importkeystore -destkeystore /nsr/authc/conf/authc.keystore -srckeystore /tmp/$hostname.saml.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass
-
Импортируйте файлы хранилища PKCS12 в
authc.truststore.$java_bin/keytool -importkeystore -destkeystore /opt/nsr/authc-server/conf/authc.truststore -srckeystore /tmp/$hostname.tomcat.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass $java_bin/keytool -importkeystore -destkeystore /opt/nsr/authc-server/conf/authc.truststore -srckeystore /tmp/$hostname.saml.authc.p12 -srcstoretype PKCS12 -srcstorepass $authc_storepass -deststorepass $authc_storepass
-
Удалите самозаверяющий сертификат NetWorker по умолчанию и импортируйте новый файл сертификата, подписанного ИС (
<server>.crt) вauthc.truststore.$java_bin/keytool -delete -alias emcauthctomcat -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass $java_bin/keytool -import -alias emcauthctomcat -keystore /opt/nsr/authc-server/conf/authc.truststore -file $cert -storepass $authc_storepass $java_bin/keytool -delete -alias emcauthcsaml -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass $java_bin/keytool -import -alias emcauthcsaml -keystore /opt/nsr/authc-server/conf/authc.truststore -file $cert -storepass $authc_storepass
-
Наконец, импортируйте этот сертификат в файл хранилища ключей Java cacerts в
emcauthctomcatпсевдоним:$java_bin/keytool -delete -alias emcauthctomcat -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcauthctomcat -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit
-
-
Отредактируйте файл
admin_service_default_url=localhostзначение в полеauthc-cli-app.propertiesдля отражения имени сервера NetWorker, которое используется в файле сертификата, подписанного ИС:cat /opt/nsr/authc-server/conf/authc-cli-app.properties admin_service_default_protocol=https admin_service_default_url=<my-networker-server.my-domain.com> admin_service_default_port=9090 admin_service_default_user= admin_service_default_password= admin_service_default_tenant= admin_service_default_domain= - Перезапуск служб NetWorker необходим для
authc, чтобы использовать новый импортированный сертификат.
nsr_shutdown systemctl start networker
-
Восстанавливать
authcДоверие на сервере NetWorker:nsrauthtrust -H <local host or Authentication_service_host> -P 9090
Постпроверки Authc:
Выходные данные каждого псевдонима «Отпечаток сертификата» совпадают с псевдонимами других хранилищ ключей:
$java_bin/keytool -list -keystore $java_bin/../lib/security/cacerts -storepass changeit | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore /opt/nsr/authc-server/conf/authc.truststore -storepass $authc_storepass | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore $nsr/authc/conf/authc.keystore -storepass $authc_storepass | grep emcauthctomcat -A1
Выходные данные должны быть примерно такими же, как показано ниже:
Certificate fingerprint (SHA-256): FD:54:B4:11:42:87:FF:CA:80:77:D2:C7:06:87:09:72:70:85:C1:70:39:32:A9:C0:14:83:D9:3A:29:AF:44:90
Это отпечаток сертификата, который был установлен. Это указывает на то, что новый сертификат был правильно добавлен в различные хранилища ключей.
openssl x509 -in $cert -fingerprint -sha256 -noout
Если у authc Служба запущена и работает, можно проверить, что сертификат, который она предоставляет входящему подключению, совпадает с указанным выше:
openssl x509 -in <(openssl s_client -connect localhost:9090 -prexit 2>/dev/null </dev/null | sed -n -e '/BEGIN\ CERTIFICATE/,/END\ CERTIFICATE/ p') -fingerprint -sha256 -noout
* Вышеуказанная команда была запущена с самого сервера NetWorker, поэтому она подключается к локальному хосту. Подключения извне <nw server name>:9090
Пользовательский интерфейс NetWorker (nwui) Этапы замены сервисного сертификата:
Мы предполагаем, что метод nwui службы выполняются на сервере NetWorker.
-
Остановите
nwuiслужбаsystemctl stop nwui
-
Удалите самозаверяющие сертификаты NetWorker по умолчанию и импортируйте новый файл сертификата, подписанного ИС (
<server>.crt) в хранилище ключей cacerts. Для единообразия мы заменяем всеnwui-связанные сертификаты с сертификатом, подписанным ИС.- Перед выполнением следующих действий необходимо определить, используется ли среда выполнения NetWorker (NRE) или Java Runtime Environment (JRE).
- Если используется JRE, путь /cacerts имеет следующий адрес:
$java_bin/../lib/security/cacerts. - Если используется NRE, путь /cacerts имеет следующий
/opt/nre/java/latest/lib/security/cacerts.$java_bin/keytool -delete -alias emcnwuimonitoring -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuimonitoring -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit $java_bin/keytool -delete -alias emcnwuiserv -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuiserv -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit $java_bin/keytool -delete -alias emcnwuiauthc -keystore $java_bin/../lib/security/cacerts -storepass changeit $java_bin/keytool -import -alias emcnwuiauthc -keystore $java_bin/../lib/security/cacerts -file $cert -storepass changeit
-
Используйте файл закрытого ключа сервера NetWorker (
<server>.key) и новый файл сертификата, подписанного ИС (<server>.crt) для создания файла хранилища PKCS12 дляemcauthctomcatиemcauthcsamlпсевдоним дляnwuiоперационной среды служб аутентификации.openssl pkcs12 -export -in $cert -inkey $key -name emcauthctomcat -out /tmp/$hostname.tomcat.nwui.p12 -password pass:$nwui_storepass openssl pkcs12 -export -in $cert -inkey $key -name emcauthcsaml -out /tmp/$hostname.saml.nwui.p12 -password pass:$nwui_storepass
ПРИМЕЧАНИЕ. Пароль файла pkcs12 должен совпадать с паролем хранилища ключей. Вот почему в данном случае мы создадим его с помощью методаnwuiStorePass. -
Импортируйте файлы .p12, сертификат корневого центра сертификации и сертификаты промежуточного источника сертификатов в
nwuiоперационной среды служб аутентификации.$java_bin/keytool -importkeystore -destkeystore $nsr/nwui/monitoring/app/conf/nwui.keystore -srckeystore /tmp/$hostname.tomcat.nwui.p12 -srcstoretype PKCS12 -srcstorepass $nwui_storepass -deststorepass $nwui_storepass $java_bin/keytool -importkeystore -destkeystore $nsr/nwui/monitoring/app/conf/nwui.keystore -srckeystore /tmp/$hostname.saml.nwui.p12 -srcstoretype PKCS12 -srcstorepass $nwui_storepass -deststorepass $nwui_storepass $java_bin/keytool -import -alias RCA -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -file $RCAcert -storepass $nwui_storepass $java_bin/keytool -import -alias ICA -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -file $ICAcert -storepass $nwui_storepass
-
Переименуйте
emcnwuimonitoring,emcnwuiauthcиemcnwuiservcertificates, и поместите сертификат сервера в этот путь с таким же именем.mv /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer_orig cp $cert /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer chown nsrnwui:nsrnwui /nsr/nwui/monitoring/app/conf/emcnwuimonitoring.cer mv /opt/nwui/conf/emcnwuiauthc.cer /opt/nwui/conf/emcnwuiauthc.cer_orig cp $cert /opt/nwui/conf/emcnwuiauthc.cer chown nsrnwui:nsrnwui /opt/nwui/conf/emcnwuiauthc.cer mv /opt/nwui/conf/emcnwuiserv.cer /opt/nwui/conf/emcnwuiserv.cer_orig cp $cert /opt/nwui/conf/emcnwuiserv.cer chown nsrnwui:nsrnwui /opt/nwui/conf/emcnwuiserv.cer
-
Запустите
nwuiУслугиsystemctl start nwui
nwui Постпроверка:
Выходные данные каждого псевдонима «Отпечаток сертификата» совпадают с псевдонимами других хранилищ ключей:
$java_bin/keytool -list -keystore $nsr/nwui/monitoring/app/conf/nwui.keystore -storepass $nwui_storepass | grep emcauthctomcat -A1 $java_bin/keytool -list -keystore $java_bin/../lib/security/cacerts -storepass changeit | grep emcauthctomcat -A1 $java_bin/keytool -list -storepass $authc_storepass -keystore $nsr/authc/conf/authc.keystore | grep emcauthctomcat -A1
Это отпечаток сертификата, который был установлен. Это указывает на то, что новый сертификат был правильно добавлен в различные хранилища ключей.
openssl x509 -in $cert -fingerprint -sha256 -noout
nwui Действия по замене сертификата PostgreSQL
mv $nsr/nwui/monitoring/nwuidb/pgdata/server.crt /nsr/nwui/monitoring/nwuidb/pgdata/server.crt_orig mv $nsr/nwui/monitoring/nwuidb/pgdata/server.key /nsr/nwui/monitoring/nwuidb/pgdata/server.key_orig cp $cert $nsr/nwui/monitoring/nwuidb/pgdata/server.crt cp $key $nsr/nwui/monitoring/nwuidb/pgdata/server.key
<server>.crt и <server>.key files должен быть пользователем, от имени которого запущена база данных PostgreSQL.
- Linux: nsrnwui
Additional Information
Дополнительные сведения об импорте сертификата, подписанного ИС, см. в Руководстве по настройке безопасности Dell NetWorker.
Процедура замены самозаверяющего сертификата NetWorker Management Console (NMC) сертификатом, подписанным CA, подробно описана в следующей статье базы знаний:
NetWorker. Импорт или замена сертификатов, подписанных центром сертификации, для NMC