NetWorker: Jak skonfigurować „AD przez SSL” (LDAPS) z poziomu sieciowego interfejsu użytkownika NetWorker (NWUI)
Podsumowanie: Ten artykuł bazy wiedzy zawiera szczegółowe informacje na temat procesu konfigurowania usługi „AD przez SSL” (LDAPS) z poziomu sieciowego interfejsu użytkownika NetWorker (NWUI).
Instrukcje
Aby skonfigurować uwierzytelnianie SSL, zaimportuj główną instytucję certyfikującą (lub łańcuch CA) do pliku cacerts używanego przez serwer uwierzytelniania (AUTHC) NetWorker. W środowiskach z pojedynczym serwerem NetWorker serwer NetWorker jest serwerem uwierzytelniania. W większych strefach danych jeden serwer AUTHC może być podstawowym serwerem uwierzytelniania dla wielu serwerów. Aby uzyskać więcej informacji, patrz: NetWorker: Jak zidentyfikować, który serwer jest serwerem uwierzytelniania używanym przez NMC i NWUI
Konfigurowanie serwera uwierzytelniania NetWorker na potrzeby uwierzytelniania SSL przy użyciu urzędu zewnętrznego
Serwery NetWorker systemu Linux:
- Otwórz sesję SSH na serwerze NetWorker AUTHC.
- Przełącz się do katalogu głównego:
$ sudo su -
- Użyj protokołu OpenSSL, aby uzyskać certyfikat urzędu certyfikacji (lub łańcuch certyfikatów) z serwera domeny:
# openssl s_client -connect DOMAIN_SERVER_ADDRESS:636 -showcerts > /dev/null
-----BEGIN CERTIFICATE----- i -----END CERTIFICATE-----. Jeśli używany jest łańcuch certyfikatów, obejmuje on wiele certyfikatów, z których jako pierwsze wymienione są certyfikaty pośrednie, a na końcu wymieniony jest certyfikat głównego urzędu certyfikacji.
- Pojedynczy certyfikat: Skopiuj certyfikat zawierający
-----BEGIN CERTIFICATE-----i-----END CERTIFICATE-----i umieść go w pliku o nazwie RCAcert.crt w wybranej lokalizacji. - Łańcuch certyfikatów: Skopiuj każdy certyfikat (w tym jego
-----BEGIN CERTIFICATE-----i-----END CERTIFICATE-----fields) i umieścić je w osobnych plikach. Na przykład ICA3cert.crt, ICA2cert.crt, ICA1cert.crt i na końcu RCAcert.crt.
- Aby ułatwić ten proces, ustaw następujące zmienne wiersza polecenia:
# java_bin=<path to java bin dir> *NOTE* For NetWorker Runtime Environment (NRE) this is /opt/nre/java/latest/bin. If you are using Oracle licensed Java Runtime Environment, specify the path to your JRE bin directory. # RCAcert=<path to RCAcer.crt> # ICA1cert=<path to ICA2cert.crt> *NOTE* Only required if you are using a certificate chain, repeat this for each intermediate cert ICA2cert.crt, ICA3.crt and so forth.
[root@nsr certs]# java_bin=/opt/nre/java/latest/bin [root@nsr certs]# RCAcert=/root/certs/RCAcert.crt [root@nsr certs]#
- Importowanie certyfikatów:
W przypadku NetWorker 19.12 (i starszych):
# $java_bin/keytool -import -alias ICA3 -keystore $java_bin/../lib/security/cacerts -file $ICA3cert -storepass changeit # $java_bin/keytool -import -alias ICA2 -keystore $java_bin/../lib/security/cacerts -file $ICA2cert -storepass changeit # $java_bin/keytool -import -alias ICA1 -keystore $java_bin/../lib/security/cacerts -file $ICA1cert -storepass changeit # $java_bin/keytool -import -alias RCA -keystore $java_bin/../lib/security/cacerts -file $RCAcert -storepass changeit
B. Jeśli otrzymasz alert o zduplikowanym aliasie (starszy, wygasły certyfikat), usuń istniejący certyfikat o takim samym aliasie:
# $java_bin/keytool -delete -alias ALIAS_NAME -keystore $java_bin/../lib/security/cacerts -storepass changeit
W przypadku NetWorker 19.13 (i nowszych):
# $java_bin/keytool -import -alias ICA3 -cacerts -storepass changeit -file $ICA3cert # $java_bin/keytool -import -alias ICA2 -cacerts -storepass changeit -file $ICA2cert # $java_bin/keytool -import -alias ICA1 -cacerts -storepass changeit -file $ICA1cert # $java_bin/keytool -import -alias RCA -cacerts -storepass changeit -file $RCAcert
B. Jeśli otrzymasz alert o zduplikowanym aliasie (starszy, wygasły certyfikat), usuń istniejący certyfikat o takim samym aliasie:
# $java_bin/keytool -delete -alias ALIAS_NAME -cacerts -storepass changeit
- Uruchom ponownie usługi serwera NetWorker. Ponowne uruchomienie usług powoduje ponowne załadowanie
cacertspodczas uruchamiania AUTHC. Jeśli usługi NetWorker nie zostaną ponownie uruchomione po zaimportowaniu certyfikatów, proces konfiguracji urzędu zewnętrznego w rozwiązaniu NetWorker zakończy się niepowodzeniem z powodu błędu związanego z certyfikatem.
# nsr_shutdown # systemctl start networker
- Przejdź do Tworzenie zasobu urzędu zewnętrznego "AD przez SSL" z NWUI.
Serwery NetWorker systemu Windows:
System Windows nie ma domyślnie zainstalowanego OpenSSL. Jeśli jest zainstalowany w twoim systemie, możesz postępować zgodnie z tymi samymi instrukcjami z powyższej sekcji Linux . Jeśli nie jest zainstalowany, możesz zainstalować go z platformy innej firmy lub wykonać następujące kroki, aby zebrać certyfikat bez OpenSSL.
- Otwórz wiersz poleceń PowerShell z podwyższonym poziomem uprawnień na serwerze uwierzytelniania NetWorker (AUTHC).
- Uruchom następujący skrypt, zastępując
EXTERNAL_AUTH_SERVER_ADDRESSz nazwą hosta lub adresem IP LDAP lub Active Directory (AD):
$server = "EXTERNAL_AUTH_SERVER_ADDRESS"
$port = 636
$tcp = New-Object System.Net.Sockets.TcpClient
$tcp.Connect($server, $port)
$ssl = New-Object System.Net.Security.SslStream(
$tcp.GetStream(),
$false,
{ param($sender,$cert,$chain,$errors) $true }
)
try {
$ssl.AuthenticateAsClient($server)
"=== Protocol ==="
$ssl.SslProtocol
"=== Cipher ==="
"$($ssl.CipherAlgorithm) ($($ssl.CipherStrength)-bit)"
""
"=== Server Certificate ==="
$remoteCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($ssl.RemoteCertificate)
"Subject : $($remoteCert.Subject)"
"Issuer : $($remoteCert.Issuer)"
"NotBefore: $($remoteCert.NotBefore)"
"NotAfter : $($remoteCert.NotAfter)"
""
$b64 = [Convert]::ToBase64String($remoteCert.RawData, [Base64FormattingOptions]::InsertLineBreaks)
"-----BEGIN CERTIFICATE-----"
$b64
"-----END CERTIFICATE-----"
}
finally {
$ssl.Dispose()
$tcp.Dispose()
}
PS C:\Users\administrator.AMER> $server = "dc.amer.lan"
PS C:\Users\administrator.AMER> $port = 636
PS C:\Users\administrator.AMER>
PS C:\Users\administrator.AMER> $tcp = New-Object System.Net.Sockets.TcpClient
PS C:\Users\administrator.AMER> $tcp.Connect($server, $port)
PS C:\Users\administrator.AMER>
PS C:\Users\administrator.AMER> $ssl = New-Object System.Net.Security.SslStream(
>> $tcp.GetStream(),
>> $false,
>> { param($sender,$cert,$chain,$errors) $true }
>> )
PS C:\Users\administrator.AMER>
PS C:\Users\administrator.AMER> try {
>> $ssl.AuthenticateAsClient($server)
>>
>> "=== Protocol ==="
>> $ssl.SslProtocol
>> "=== Cipher ==="
>> "$($ssl.CipherAlgorithm) ($($ssl.CipherStrength)-bit)"
>> ""
>> "=== Server Certificate (exactly what the DC sends) ==="
>>
>> $remoteCert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2($ssl.RemoteCertificate)
>>
>> "Subject : $($remoteCert.Subject)"
>> "Issuer : $($remoteCert.Issuer)"
>> "NotBefore: $($remoteCert.NotBefore)"
>> "NotAfter : $($remoteCert.NotAfter)"
>> ""
>>
>> $b64 = [Convert]::ToBase64String($remoteCert.RawData, [Base64FormattingOptions]::InsertLineBreaks)
>> "-----BEGIN CERTIFICATE-----"
>> $b64
>> "-----END CERTIFICATE-----"
>> }
>> finally {
>> $ssl.Dispose()
>> $tcp.Dispose()
>> }
=== Protocol ===
Tls13
=== Cipher ===
Aes256 (256-bit)
=== Server Certificate ===
Subject : CN=DC.amer.lan
Issuer : CN=amer-DC-CA, DC=amer, DC=lan
NotBefore: 11/29/2025 01:17:22
NotAfter : 11/29/2026 01:17:22
-----BEGIN CERTIFICATE-----
MIIGDDCCBPSgAwIBAgITNAAAAAT93FoJVZwLkQAAAAAABDANBgkqhkiG9w0BAQsFADBAMRMwEQYK
...REMOVED FOR BREVITY...
c1HhZw24yOwFSOtTQg==
-----END CERTIFICATE-----
- Skopiuj certyfikat, zaczynając od
---BEGIN CERTIFICATE---i kończąc na---END CERTIFICATE---i wklej go do nowego pliku. Jeśli istnieje łańcuch certyfikatów, należy to zrobić dla każdego certyfikatu. - Ustaw zmienne wiersza poleceń dla głównego urzędu certyfikacji i wszelkich certyfikatów pośrednich (jeśli są używane):
$RCAcert = "<path to RCAcert.crt>" $ICA1cert = "<path to ICA1cert.crt>"
$JAVA_BIN = "<path to NetWorker's JAVA bin directory>"
PS C:\Users\Administrator> $RCAcert = "C:\tmp\certs\RCAcert.crt"
PS C:\Users\Administrator> $JAVA_BIN = "C:\Program Files\NRE\java\jdk-17.0.17\bin"
- Importuj certyfikaty:
W przypadku NetWorker 19.12 (i starszych):
& $JAVA_BIN\keytool.exe -import -alias ICA3 -keystore $JAVA_BIN\..\lib\security\cacerts -file $ICA3cert -storepass changeit & $JAVA_BIN\keytool.exe -import -alias ICA2 -keystore $JAVA_BIN\..\lib\security\cacerts -file $ICA2cert -storepass changeit & $JAVA_BIN\keytool.exe -import -alias ICA1 -keystore $JAVA_BIN\..\lib\security\cacerts -file $ICA1cert -storepass changeit & $JAVA_BIN\keytool.exe -import -alias RCA -keystore $JAVA_BIN\..\lib\security\cacerts -file $RCAcert -storepass changeit
& $JAVA_BIN\keytool.exe -delete -alias ALIAS_NAME -keystore $JAVA_BIN\..\lib\security\cacerts -storepass changeit
W przypadku NetWorker 19.13 (i nowszych):
& $JAVA_BIN\keytool.exe -import -alias ICA3 -cacerts -storepass changeit -file $ICA3cert & $JAVA_BIN\keytool.exe -import -alias ICA2 -cacerts -storepass changeit -file $ICA2cert & $JAVA_BIN\keytool.exe -import -alias ICA1 -cacerts -storepass changeit -file $ICA1cert & $JAVA_BIN\keytool.exe -import -alias RCA -cacerts -storepass changeit -file $RCAcert
& $JAVA_BIN\keytool.exe -delete -alias ALIAS_NAME -cacerts -storepass changeit
- Uruchom ponownie usługi serwera NetWorker. Ponowne uruchomienie usług powoduje ponowne załadowanie pliku cacerts podczas uruchamiania AUTHC. Jeśli usługi NetWorker nie zostaną ponownie uruchomione po zaimportowaniu certyfikatów, proces konfiguracji urzędu zewnętrznego w rozwiązaniu NetWorker zakończy się niepowodzeniem z powodu błędu związanego z certyfikatem.
net stop nsrd net start nsrd
Tworzenie zasobu urzędu zewnętrznego „AD przez SSL” za pomocą NWUI.
- Z poziomu przeglądarki internetowej uzyskaj dostęp do serwera NWUI: https://nazwa_serwera_nwui:9090/nwui
- Zaloguj się przy użyciu konta administratora NetWorker.
- W menu rozwiń pozycję Authentication Server i kliknij opcję External Authorities.
- W sekcji External Authorities kliknij przycisk Add+.
- Wypełnij pola konfiguracyjne:
|
Field
|
Wartość
|
|
Nazwa
|
Nazwa opisowa, bez spacji, konfiguracji LDAP lub AD. Maksymalna liczba znaków to 256. W nazwie konfiguracji należy używać tylko znaków ASCII.
|
|
Server Type
|
AD over SSL
|
|
Provider Server Name
|
Określa nazwę hosta lub adres IP serwera usługi Active Directory.
|
|
Port
|
Dla protokołu SSL używany jest port 636. To pole powinno zostać wypełnione automatycznie, jeśli wybrano opcję „AD over SSL”.
|
|
Tenant
|
Wybierz dzierżawę, jeśli jest skonfigurowana. Jeśli żadna dzierżawa nie jest skonfigurowana ani wymagana, można użyć wartości domyślnej.
Konfiguracja dzierżawy wymaga następującej składni logowania " tenant_name\domain_name\user_name" Jeśli używany jest domyślny dzierżawca (wspólny), składnia logowania jest następująca: "domain_name\user_nameDzierżawca
— kontener organizacyjny najwyższego poziomu dla usługi uwierzytelniania NetWorker. Każdy zewnętrzny urząd uwierzytelniania w lokalnej bazie danych jest przypisany do dzierżawy. Dzierżawa może zawierać jedną lub więcej domen, ale nazwy domen muszą być unikatowe w obrębie dzierżawy. Usługa uwierzytelniania NetWorker tworzy jedną zintegrowaną nazwę dzierżawy Default, która zawiera domenę domyślną. Tworzenie wielu dzierżaw ułatwia zarządzanie złożonymi konfiguracjami. Na przykład dostawcy usług z ograniczonymi strefami danych (RDZ) mogą utworzyć wiele dzierżaw, aby świadczyć izolowane usługi w zakresie ochrony danych użytkownikom dzierżawy. |
|
Domena
|
Pełna nazwa domeny, w tym wszystkie wartości DC; Na przykład: example.com
|
|
User DN
|
Określa pełną nazwę CN=Administrator,CN=Users,DC=example,DC=com.
|
|
User DN Password
|
Określa hasło konta użytkownika używane do uzyskiwania dostępu i odczytywania usługi AD bezpośrednio.
|
|
Group Object Class
|
Wymagane. Klasa obiektu identyfikująca grupy w hierarchii LDAP lub AD.
● W przypadku LDAP użyj groupOfUniqueNames lub groupOfNames
● W przypadku AD użyj group
|
|
Group Search Path (opcjonalnie)
|
Nazwa wyróżniająca określająca ścieżkę wyszukiwania, która powinna być używana przez usługę uwierzytelniania podczas wyszukiwania grup w hierarchii LDAP lub AD.
|
|
Group Name Attribute
|
Atrybut identyfikujący nazwę grupy; Na przykład: cn.
|
|
Group Member Attribute
|
Członkostwo użytkownika w grupie:
● W przypadku LDAP:
○ Gdy klasą obiektów grupowych jest
groupOfNames Atrybut jest zwykle member.
○ Gdy klasą obiektów grupowych jest groupOfUniqueNames Atrybut jest zwykle uniquemember.
● W przypadku AD wartość jest zwykle member.
|
|
User Object Class
|
Klasa obiektów identyfikująca użytkowników w hierarchii LDAP lub AD. Na przykład: person.
|
|
User Search Path (opcjonalnie)
|
Nazwa wyróżniająca określająca ścieżkę wyszukiwania, która powinna być używana przez usługę uwierzytelniania podczas wyszukiwania użytkowników w hierarchii LDAP lub AD. Określ ścieżkę wyszukiwania względem podstawowej nazwy wyróżniającej określonej w polu configserver-address . Na przykład w przypadku usługi AD określ cn=users.
|
|
User ID Attribute
|
Identyfikator użytkownika powiązany z obiektem użytkownika w hierarchii LDAP lub AD.
W przypadku protokołu LDAP atrybut ten jest zwykle uid.
W przypadku usługi AD ten atrybut jest zwykle sAMAccountName.
|
UWAGA: Skontaktuj się z administratorem AD/LDAP, aby upewnić się, które pola właściwe dla AD/LDAP są potrzebne w Twoim środowisku.
- Po zakończeniu kliknij save.
- Powinno zostać wyświetlone podsumowanie skonfigurowanego zasobu urzędu zewnętrznego:

- W menu Server > User Groups edytuj grupy użytkowników zawierające uprawnienia, które mają być delegowane do grup lub użytkowników AD/LDAP. Aby przyznać pełne uprawnienia administratora, określ nazwę wyróżniającą grupy/użytkownika AD w polu External Roles dla ról Application Administrators and Security Administrators.
Na przykład: CN=NetWorker_Admins,DC=amer,DC=lan

Można to zrobić także z poziomu wiersza poleceń:
nsraddadmin -e "Distinguished_Name"
nsr:~ # nsraddadmin -e "CN=NetWorker_Admins,OU=Groups,dc=amer,dc=lan"
134751:nsraddadmin: Added role 'CN=NetWorker_Admins,OU=Groups,dc=amer,dc=lan' to the 'Security Administrators' user group.
134751:nsraddadmin: Added role 'CN=NetWorker_Admins,OU=Groups,dc=amer,dc=lan' to the 'Application Administrators' user group.
- Po określeniu nazw wyróżniających grup lub użytkowników AD kliknij przycisk Save.
- Wyloguj się z interfejsu NWUI i zaloguj się ponownie przy użyciu konta AD:

- Ikona użytkownika w prawym górnym rogu wskazuje, który użytkownik jest zalogowany.
Dodatkowe informacje
Jak sprawdzić członkostwo w grupie AD i uzyskać wartości nazwy wyróżniającej (DN) wymagane dla uprawnień NetWorker:
Możesz użyć przycisku authcmgmt na serwerze NetWorker, aby potwierdzić widoczność grup/użytkowników AD/LDAP:
authc_mgmt -u Administrator -p 'NetWorker_Admin_Pass' -e query-ldap-users -D query-tenant=tenant_name -D query-domain=domain_name authc_mgmt -u Administrator -p 'NetWorker_Admin_Pass' -e query-ldap-groups -D query-tenant=tenant_name -D query-domain=domain_name authc_mgmt -u Administrator -p 'NetWorker_Admin_Pass' -e query-ldap-groups-for-user -D query-tenant=tenant_name -D query-domain=domain_name -D user-name=ad_username
Przykład:
[root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e query-ldap-users -D query-tenant=default -D query-domain=amer.lan The query returns 47 records. User Name Full Dn Name Administrator CN=Administrator,CN=Users,dc=amer,dc=lan ... bkupadmin CN=Backup Administrator,CN=Users,dc=amer,dc=lan [root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e query-ldap-groups -D query-tenant=default -D query-domain=amer.lan The query returns 72 records. Group Name Full Dn Name Administrators CN=Administrators,CN=Builtin,dc=amer,dc=lan ... NetWorker_Admins CN=NetWorker_Admins,OU=Groups,dc=amer,dc=lan [root@nsr ~]# authc_mgmt -u Administrator -p '!Password1' -e query-ldap-groups-for-user -D query-tenant=default -D query-domain=amer.lan -D user-name=bkupadmin The query returns 1 records. Group Name Full Dn Name NetWorker_Admins CN=NetWorker_Admins,OU=Groups,dc=amer,dc=lan
UWAGA: W przypadku niektórych systemów polecenia
authc mogą zakończyć się niepowodzeniem z błędem „nieprawidłowe hasło”, nawet jeśli podano prawidłowe hasło. Dzieje się tak ze względu na podawanie hasła w formie widocznego tekstu w opcji -p . W przypadku wystąpienia tego błędu usuń -p password z poleceń. Po uruchomieniu polecenia zostanie wyświetlony monit o wprowadzenie ukrytego hasła.
Inne powiązane artykuły:
- NetWorker: Konfigurowanie uwierzytelniania LDAP/AD przy użyciu skryptów authc_config
- NetWorker: Konfigurowanie uwierzytelniania AD/LDAP
- NetWorker: Resetowanie hasła administratora
- NetWorker: Integracja LDAPS kończy się niepowodzeniem z komunikatem „An SSL handshake error occurred while attempt to connect to LDAPS server: Unable to find valid certification path to requested target”
- NetWorker: Jak zaimportować lub zastąpić certyfikaty podpisane przez instytucję certyfikującą dla „AUTHC” i „NWUI” (Linux)
- NetWorker: Jak zaimportować lub zastąpić certyfikaty podpisane przez instytucję certyfikującą dla „AUTHC” i „NWUI” (Windows)