NetWorker: Як імпортувати або замінити сертифікати, підписані центром сертифікації, для "Authc" та "NWUI" (Linux)
Summary: Це загальні кроки для заміни стандартного самопідписаного сертифіката NetWorker на сертифікат, підписаний Центром Сертифікації (CA), для сервісів "authc" та "nwui".
Instructions
Ці інструкції описують, як замінити стандартний самопідписаний сертифікат NetWorker на сертифікат, підписаний CA, для 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
-
Надішліть CSR-файл (
<server>.csr) для генерації файлу сертифіката, підписаного CA (<server>.crt). CA має надати файл сертифіката, підписаний CA (<server>.crt), кореневий сертифікат (<CA>.crt), а також будь-які проміжні сертифікати CA (<ICA>.crt).
Кроки попередньої перевірки:
Переконайтеся, що у вас є наступне:
- server.crt, який містить сертифікат PEM, перший рядок якого — -----BEGIN CERTIFICATE----- а останній рядок — -----END CERTIFICATE-----
- Файл ключа починається з -----START 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
Кроки заміни сертифіката автентифікації:
The 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 (
<server>.key) та новий сертифікат, підписаний CA (<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 і імпортуйте новий файл сертифіката, підписаний CA (
<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 keystore у розділі
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 Server, що використовується у файлі сертифіката, підписаному CA: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
Автентифікація після верифікацій:
Вихід кожного псевдоніму «Відбиток Сертифіката» збігається з результатами інших сховищ ключів:
$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, тому вона підключається до localhost. З'єднання з зовнішнього використання <nw server name>:9090
Інтерфейс користувача NetWorker (nwui) Кроки заміни сертифіката обслуговування:
Припускаємо, що nwui сервіси працюють на сервері NetWorker.
-
Зупиніться
nwuiслужбаsystemctl stop nwui
-
Видаліть стандартні самопідписані сертифікати NetWorker і імпортуйте новий файл сертифіката, підписаний CA (
<server>.crt) у сховище ключів Cacerts. Для послідовності ми замінюємо всіnwui-пов'язані сертифікати з сертифікатом, підписаним CA.- Необхідно визначити, чи використовується NetWorker Runtime Environment (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 (
<server>.key) та новий сертифікат, підписаний CA (<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-файли, кореневий сертифікат CA та проміжні сертифікати CA у
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іemcnwuiservІ помістити наш серверний сертифікат у цей шлях з тією ж назвою.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 файли мають бути користувачем, під яким працює база даних PostgreSQL.
- Linux: nsrnwui
Additional Information
Для додаткової інформації про імпорт сертифіката з підписаним CA дивіться Посібник з конфігурації безпеки Dell NetWorker.
Процес заміни самопідписаного сертифіката NetWorker Management Console (NMC) на сертифікат, підписаний CA, детально описаний у наступній базі знань:
NetWorker: Як імпортувати або замінити сертифікати, підписані центром сертифікації, для NMC