NetWorker: come configurare "AD over SSL" (LDAPS) da NWUI (NetWorker Web User Interface)
Riepilogo: Questo articolo delle Knowledge Base descrive in dettaglio il processo necessario per configurare "AD over SSL" (LDAPS) da NWUI (NetWorker Web User Interface).
Istruzioni
Per configurare l'autenticazione SSL, importare la CA root (o la catena CA) nel file cacerts utilizzato dal server di autenticazione (AUTHC) di NetWorker. Negli ambienti con singolo server NetWorker, il server NetWorker è il server di autenticazione. Nelle datazone più grandi, un server AUTHC può essere il server di autenticazione primario per più server. Per ulteriori informazioni, consultare: NetWorker: Come identificare il server di autenticazione utilizzato da NMC e NWUI
Configurazione del server di autenticazione NetWorker per l'autenticazione SSL con un autorità esterna
Server NetWorker Linux:
- Aprire una sessione SSH sul server AUTHC NetWorker.
- Passare a root:
$ sudo su -
- Utilizzare OpenSSL per ottenere il certificato CA (o la catena di certificati) dal server di dominio:
# openssl s_client -connect DOMAIN_SERVER_ADDRESS:636 -showcerts > /dev/null
-----BEGIN CERTIFICATE----- e -----END CERTIFICATE-----. Se si utilizza una catena di certificati, esistono più certificati, di cui i primi elencati sono certificati intermedi e l'ultimo è la CA radice.
- Certificato singolo: Copiare il certificato comprensivo di
-----BEGIN CERTIFICATE-----e-----END CERTIFICATE-----e inseriscilo in un file chiamato RCAcert.crt in una posizione a tua scelta. - Catena di certificati: Copiare ogni certificato (inclusi i relativi
-----BEGIN CERTIFICATE-----e-----END CERTIFICATE-----campi) e inserirli in singoli file. ad esempio ICA3cert.crt, ICA2cert.crt, ICA1cert.crt e infine RCAcert.crt.
- Per facilitare il processo, impostare le seguenti variabili nella riga di comando:
# 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]#
- Importare i certificati:
Per NetWorker 19.12 (e versioni precedenti):
# $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. Se si riceve un avviso di un alias duplicato (certificato precedente scaduto), eliminare il certificato esistente con lo stesso alias:
# $java_bin/keytool -delete -alias ALIAS_NAME -keystore $java_bin/../lib/security/cacerts -storepass changeit
Per NetWorker 19.13 (e versioni successive):
# $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. Se si riceve un avviso di un alias duplicato (certificato precedente scaduto), eliminare il certificato esistente con lo stesso alias:
# $java_bin/keytool -delete -alias ALIAS_NAME -cacerts -storepass changeit
- Riavviare i servizi del server NetWorker. Il riavvio dei servizi ricarica il
cacertsdurante l'avvio di AUTHC. Se i servizi NetWorker non vengono riavviati dopo l'importazione dei certificati, il processo di configurazione dell'autorità esterna in NetWorker non riesce e viene visualizzato un errore correlato al certificato.
# nsr_shutdown # systemctl start networker
- Passare a Creazione di una risorsa di autorità esterna "AD over SSL" da NWUI.
Server NetWorker Windows:
Windows non dispone di OpenSSL installato per impostazione predefinita. Se è installato sul sistema, è possibile seguire le stesse istruzioni della sezione Linux precedente. Se non è installato, è possibile installarlo da una piattaforma di terze parti o utilizzare la seguente procedura per raccogliere il certificato senza OpenSSL.
- Aprire un prompt PowerShell con privilegi elevati nel server NetWorker Authentication (AUTHC).
- Eseguire lo script seguente, sostituendo
EXTERNAL_AUTH_SERVER_ADDRESScon il nome host o l'IP LDAP o 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-----
- Copiare il certificato a partire da
---BEGIN CERTIFICATE---e finendo con---END CERTIFICATE---e incollarlo in un nuovo file. Se è presente una catena di certificati, è necessario eseguire questa operazione con ogni certificato. - Impostare le variabili della riga di comando per la CA radice ed eventuali certificati intermedi (se utilizzati):
$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"
- Importare i certificati:
per NetWorker 19.12 (e versioni precedenti):
& $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
Per NetWorker 19.13 (e versioni successive):
& $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
- Riavviare i servizi del server NetWorker. Il riavvio dei servizi ricarica il file cacerts durante l'avvio di AUTHC. Se i servizi NetWorker non vengono riavviati dopo l'importazione dei certificati, il processo di configurazione dell'autorità esterna in NetWorker non riesce e viene visualizzato un errore correlato al certificato.
net stop nsrd net start nsrd
Creazione di una risorsa autorità esterna "AD over SSL" da NWUI.
- Da un web browser, accedere al server NWUI: https://nwui-server-name:9090/nwui.
- Accedere utilizzando l'account amministratore di NetWorker.
- Nel menu, espandere Authentication Server e cliccare su External Authorities.
- In External Authorities, cliccare su Add+.
- Compilare i campi di configurazione:
|
Campo
|
Valore
|
|
Name
|
Nome descrittivo, senza spazi, per la configurazione di LDAP o AD. Il numero massimo di caratteri è 256. Specificare solo caratteri ASCII nel nome della configurazione.
|
|
Server Type
|
AD over SSL
|
|
Provider Server Name
|
Specifica il nome host o l'indirizzo IP del server Active Directory.
|
|
Port
|
Per SSL si utilizza la porta 636; questo campo dovrebbe essere compilato automaticamente se è stato selezionato "AD over SSL".
|
|
Tenant
|
Selezionare il tenant, se configurato. Se non è configurato o richiesto alcun tenant, è possibile utilizzare l'opzione "default".
La configurazione di un tenant richiede la seguente sintassi di accesso: " tenant_name\domain_name\user_name" Se viene utilizzato il tenant predefinito (comune), la sintassi di accesso è "domain_name\user_name"
Tenant: container aziendale di primo livello per NetWorker Authentication Service. Ogni autorità di autenticazione esterna nel database locale è assegnata a un tenant. Un tenant può contenere uno o più domini, ma i nomi di dominio devono essere univoci all'interno del tenant. NetWorker Authentication Service crea un nome tenant integrato Default, che contiene il dominio predefinito. La creazione di più tenant consente di gestire le configurazioni complesse. Ad esempio, i provider di servizi con datazone limitate (RDZ) possono creare più tenant per fornire servizi di protezione dei dati isolati agli utenti dei tenant. |
|
Domain
|
Il nome di dominio completo, inclusi tutti i valori DC; Per esempio: example.com
|
|
User DN
|
Specifica il nome CN=Administrator,CN=Users,DC=example,DC=com.
|
|
User DN Password
|
Specifica la password dell'account utente utilizzato per accedere e leggere AD Direct.
|
|
Group Object Class
|
Obbligatoria. La classe di oggetti che identifica i gruppi nella gerarchia LDAP o AD.
● Per LDAP, utilizzare groupOfUniqueNames oppure groupOfNames
● Per AD, utilizzare group
|
|
Group Search Path (opzionale)
|
Nome distinto che specifica il percorso di ricerca che il servizio di autenticazione deve utilizzare per la ricerca di gruppi nella gerarchia LDAP o AD.
|
|
Group Name Attribute
|
L'attributo che identifica il nome del gruppo; Per esempio cn.
|
|
Group Member Attribute
|
L'appartenenza a un gruppo dell'utente all'interno di un gruppo:
● Per LDAP:
○ Quando la classe Group Object è
groupOfNames L'attributo è in genere member.
○ Quando la classe Group Object è groupOfUniqueNames L'attributo è in genere uniquemember.
● Per AD, il valore è comunemente member.
|
|
User Object Class
|
Classe di oggetti che identifica gli utenti nella gerarchia LDAP o AD, Esempio: person.
|
|
User Search Path (opzionale)
|
Nome distinto che specifica il percorso di ricerca che il servizio di autenticazione deve utilizzare per la ricerca di utenti nella gerarchia LDAP o AD. Specificare un percorso di ricerca relativo al DN di base specificato nella configserver-address . Ad esempio, per AD, specificare cn=users.
|
|
User ID Attribute
|
ID utente associato all'oggetto utente nella gerarchia LDAP o AD.
Per LDAP, questo attributo è in genere uid.
Per AD, questo attributo è in genere sAMAccountName.
|
NOTA: consultare il proprio amministratore AD/LDAP per verificare quali campi specifici AD/LDAP sono necessari per il proprio ambiente.
- Al termine, cliccare su Save.
- Dovrebbe ora essere visualizzato un riepilogo della risorsa autorità esterna configurata:

- Dal menu Server > User Groups, modificare i gruppi di utenti che contengono diritti che si desidera delegare a utenti o gruppi o AD/LDAP. Per concedere diritti di amministratore completi, specificare i DN utente/gruppo AD nel campo External Roles dei ruoli Application Administrators e Security Administrators.
Esempio: CN=NetWorker_Admins,DC=amer,DC=lan

Questa operazione può essere eseguita dalla riga di comando.
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.
- Una volta specificato il DN utente o gruppo AD, cliccare su Save.
- Disconnettersi dall'interfaccia di NWUI e accedere nuovamente utilizzando l'account AD.

- L'icona utente nell'angolo in alto a destra indica l'account utente connesso.
Informazioni aggiuntive
Come controllare l'appartenenza a un gruppo AD e ottenere i valori DN (Distinguished Name) necessari per le autorizzazioni di NetWorker:
È possibile utilizzare il comando authcmgmt sul server NetWorker per verificare che i gruppi/utenti AD/LDAP siano visibili:
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
Esempio:
[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
NOTA: su alcuni sistemi, i comandi
authc potrebbero non riuscire con un errore "incorrect password" anche quando si inserisce la password corretta. Ciò è dovuto al fatto che la password è stata specificata come testo visibile con l'opzione -p . Se si verifica questo problema, rimuovere -p password dai comandi. Verrà richiesto di inserire la password nascosta dopo l'esecuzione del comando.
Altri articoli pertinenti:
- NetWorker: come configurare LDAP/AD utilizzando gli script authc_config
- NetWorker: come configurare l'autenticazione AD/LDAP
- NetWorker: Come reimpostare la password dell'amministratore
- NetWorker: l'integrazione LDAPS ha esito negativo con errore "An SSL handshake error occurred while attempting to connect to LDAPS server: Unable to find valid certification path to requested target"
- NetWorker: come importare o sostituire i certificati firmati dall'autorità di certificazione per "AUTHC" e "NWUI" (Linux)
- NetWorker: come importare o sostituire i certificati firmati dall'autorità di certificazione per "AUTHC" e "NWUI" (Windows)