NetWorker. Настройка AD по протоколу SSL (LDAPS) в веб-интерфейсе пользователя NetWorker (NWUI)
Сводка: Эта статья детально описывает процесс, необходимый для настройки AD по протоколу SSL (LDAPS) из NetWorker Web User Interface (NWUI).
Инструкции
Чтобы настроить аутентификацию SSL, импортируйте корневой источник сертификатов (или цепочку центров сертификации) в файл cacerts, используемый сервером аутентификации NetWorker (AUTHC). В средах с одним сервером NetWorker сервер NetWorker является сервером аутентификации. В более крупных зонах данных один сервер AUTHC может быть основным сервером аутентификации для нескольких серверов. Подробнее см. в статьях: NetWorker. Как определить, какой сервер является сервером аутентификации, используемым NMC и NWUI
Настройка сервера аутентификации NetWorker для проверки подлинности SSL с внешним центром сертификации
Серверы Linux NetWorker:
- Откройте сеанс SSH на сервере AUTHC NetWorker.
- Переключитесь на пользователя root.
$ sudo su -
- Используйте OpenSSL для получения сертификата CA (или цепочки CA) с сервера домена:
# openssl s_client -connect DOMAIN_SERVER_ADDRESS:636 -showcerts > /dev/null
-----BEGIN CERTIFICATE----- и -----END CERTIFICATE-----. Если используется цепочка сертификатов, отображается несколько сертификатов, первые из которых являются промежуточными, а последний указанный сертификат — корневым CA.
- Один сертификат: Скопируйте сертификат, включая
-----BEGIN CERTIFICATE-----и-----END CERTIFICATE-----и поместите его в файл с именем RCAcert.crt в выбранное вами местоположение. - Цепочка сертификатов: Скопируйте все сертификаты (включая их
-----BEGIN CERTIFICATE-----и-----END CERTIFICATE-----полей) и помещают их в отдельные файлы. Например, ICA3cert.crt, ICA2cert.crt, ICA1cert.crt и, наконец, RCAcert.crt.
- Чтобы упростить процесс, задайте следующие переменные командной строки:
# 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]#
- Импортируйте сертификаты.
Для NetWorker 19.12 (и более ранних версий):
# $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
Б. Если вы получили оповещение о повторяющемся псевдониме (предыдущем сертификате с истекшим сроком действия), удалите существующий сертификат с таким же псевдонимом:
# $java_bin/keytool -delete -alias ALIAS_NAME -keystore $java_bin/../lib/security/cacerts -storepass changeit
Для NetWorker 19.13 (и более поздних версий):
# $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
Б. Если вы получили оповещение о повторяющемся псевдониме (предыдущем сертификате с истекшим сроком действия), удалите существующий сертификат с таким же псевдонимом:
# $java_bin/keytool -delete -alias ALIAS_NAME -cacerts -storepass changeit
- Перезапустите службы сервера NetWorker. Перезапуск служб приводит к перезагрузке
cacertsво время запуска AUTHC. Если после импорта сертификатов не будут перезапущены службы NetWorker, процесс настройки внешней авторизации в NetWorker может завершиться ошибкой, связанной с сертификатами.
# nsr_shutdown # systemctl start networker
- Перейдите в раздел Создание внешнего ресурса "AD over SSL" из NWUI.
Серверы Windows NetWorker:
По умолчанию OpenSSL в Windows не установлен. Если он установлен в вашей системе, вы можете следовать инструкциям из приведенного выше раздела о Linux . Если этот сертификат не установлен, его можно установить с платформы стороннего производителя или выполнить следующие действия для сбора сертификата без OpenSSL.
- Откройте запрос PowerShell с повышенными привилегиями на сервере проверки подлинности NetWorker (AUTHC).
- Запустите следующий сценарий, заменив
EXTERNAL_AUTH_SERVER_ADDRESSс именем хоста LDAP или Active Directory (AD) или IP-адресом:
$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-----
- Скопируйте сертификат, начиная с
---BEGIN CERTIFICATE---и заканчивая---END CERTIFICATE---, и вставьте его в новый файл. Если имеется цепочка сертификатов, это необходимо сделать с каждым сертификатом. - Задайте переменные командной строки для корневого CA и любого промежуточного сертификата (если используется):
$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"
- Импортируйте сертификаты.
Для NetWorker 19.12 (и более ранних версий):
& $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
Для NetWorker 19.13 (и более поздних версий):
& $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
- Перезапустите службы сервера NetWorker. Перезапуск служб перезагружает файл cacerts во время запуска AUTHC. Если после импорта сертификатов не будут перезапущены службы NetWorker, процесс настройки внешней авторизации в NetWorker может завершиться ошибкой, связанной с сертификатами.
net stop nsrd net start nsrd
Создание внешнего ресурса полномочий «AD по протоколу SSL» из NWUI.
- Откройте веб-браузер и перейдите на сервер NWUI по адресу https://nwui-server-name:9090/nwui
- Войдите в систему с помощью учетной записи администратора NetWorker.
- В меню разверните Authentication Server и нажмите External Authorities.
- В разделе «External Authorities» нажмите Add+.
- Заполните поля конфигурации:
|
Поле
|
Значение
|
|
Имя
|
Описательное имя без пробелов для конфигурации LDAP или AD. Максимальное количество символов — 256. Укажите символы ASCII только в имени конфигурации.
|
|
Server Type
|
AD по протоколу SSL
|
|
Provider Server Name
|
Указывает имя хоста или IP-адрес сервера Active Directory.
|
|
Порт
|
Порт 636 используется для SSL, это поле должно заполняться автоматически, если выбран параметр «AD over SSL».
|
|
Tenant
|
Выберите клиента, если он настроен. Если клиент не настроен или не требуется, можно использовать значение «default».
Для настройки клиента требуется следующий синтаксис входа " tenant_name\domain_name\user_name" Если используется клиент по умолчанию (common), то синтаксис входа будет "domain_name\user_nameКлиент
— организационный контейнер верхнего уровня для службы аутентификации NetWorker. Каждый внешний источник аутентификации в локальной базе данных назначается клиенту. Клиент может содержать один или несколько доменов, при этом имена доменов должны быть уникальными для клиента. Служба аутентификации NetWorker создает одно интегрированное имя клиента по умолчанию, которое содержит домен по умолчанию. Создание нескольких клиентов помогает управлять сложными конфигурациями. Например, поставщики услуг с ограниченными зонами данных (RDZ) могут создать несколько клиентов для предоставления пользователям клиентов изолированных услуг по защите данных. |
|
Domain
|
Полное доменное имя, включая все значения ЦОД; Например: example.com
|
|
User DN
|
Указывает полное отличительное имя CN=Administrator,CN=Users,DC=example,DC=com.
|
|
User DN Password
|
Указывает пароль учетной записи пользователя, которая используется для доступа к AD Direct и его чтения.
|
|
Group Object Class
|
Обязательное поле. Класс объекта, который идентифицирует группы в иерархии LDAP или AD.
● Для LDAP используйте groupOfUniqueNames или groupOfNames
● Для AD используйте group
|
|
«Group Search Path» (необязательно)
|
DN, определяющее путь поиска, который должен использоваться службой аутентификации для поиска групп в иерархии LDAP или AD.
|
|
Group Name Attribute
|
Атрибут, определяющий имя группы; Например cn.
|
|
Group Member Attribute
|
Членство пользователя в группе:
● Для LDAP:
○ Если класс объекта группы
groupOfNames Атрибут обычно имеет следующий вид member.
○ Если класс объекта группы groupOfUniqueNames Атрибут обычно имеет следующий вид uniquemember.
● Для AD значение обычно равно member.
|
|
User Object Class
|
Класс объекта, который идентифицирует пользователей в иерархии LDAP или AD. Например, person.
|
|
«User Search Path» (необязательно)
|
DN, определяющее путь поиска, который должен использоваться службой аутентификации для поиска пользователей в иерархии LDAP или AD. Укажите путь для поиска относительно базового доменного имени, указанного в configserver-address . Например, для AD укажите cn=users.
|
|
User ID Attribute
|
Идентификатор пользователя, связанный с объектом пользователя в иерархии LDAP или AD.
Для LDAP этот атрибут обычно имеет следующий uid.
Для AD этот атрибут обычно выглядит следующим образом: sAMAccountName.
|
ПРИМЕЧАНИЕ. Проконсультируйтесь с администратором AD/LDAP, чтобы узнать, какие поля AD/LDAP необходимо заполнить для вашей среды.
- По завершении нажмите save.
- Теперь должна появиться сводная информация о настроенном внешнем ресурсе полномочий:

- В меню Server > User Groups измените группы пользователей, имеющие права, которые необходимо делегировать группам или пользователям AD/LDAP. Чтобы предоставить полные права администратора, укажите DN группы/пользователя AD в поле «External Roles» для ролей Application Administrators и Security Administrators.
Например, CN=NetWorker_Admins,DC=amer,DC=lan

То же самое можно сделать с помощью командной строки:
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.
- После указания группы AD или имен DN пользователей нажмите Save.
- Выйдите из интерфейса NWUI и снова войдите в систему с помощью учетной записи AD:

- В правом верхнем углу экрана находится значок пользователя, который информирует о том, под какой учетной записью пользователь авторизован.
Дополнительная информация
Проверка членства в группе AD и получение значений различающегося имени (DN), необходимых для разрешений NetWorker:
Вы можете использовать метод authcmgmt на сервере NetWorker для подтверждения отображения групп/пользователей 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
Пример:
[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
ПРИМЕЧАНИЕ. В некоторых системах команды
authc могут завершаться сбоем с ошибкой «incorrect password», даже если указан правильный пароль. Это связано с тем, что пароль указан в качестве видимого текста вместе с параметром -p . При возникновении этой проблемы удалите -p password из команд. После выполнения команды вам будет предложено ввести скрытый пароль.
Другие актуальные статьи:
- NetWorker. Настройка LDAP/AD с помощью сценариев authc_config
- NetWorker. Настройка аутентификации AD/LDAP
- NetWorker. Сброс пароля администратора
- NetWorker. Сбой интеграции LDAPS с сообщением «An SSL handshake error occurred while attempting to connect to LDAPS server: Unable to find valid certification path to requested target»
- NetWorker. Импорт или замена сертификатов, подписанных центром сертификации, для «AUTHC» и «NWUI» (Linux)
- NetWorker. Импорт или замена сертификатов, подписанных центром сертификации, для «AUTHC» и «NWUI» (Windows)