NetWorker:如何从 NetWorker Web 用户界面 (NWUI) 配置“AD over SSL”(LDAPS)

摘要: 本知识库文章详细介绍了从 NetWorker Web 用户界面 (NWUI) 配置“AD over SSL”(LDAPS) 所需的过程。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

说明

要配置 SSL 身份认证,请将根 CA(或 CA 链)导入到 NetWorker 身份认证 (AUTHC) 服务器使用的 cacerts 文件中。在单 NetWorker 服务器环境中,NetWorker 服务器是身份验证服务器。在较大的数据区中,一台 AUTHC 服务器可以作为多台服务器的主身份验证服务器。有关详细信息,请参阅:NetWorker:如何确定哪个服务器是 NMC 和 NWUI 使用的身份验证服务器

设置 NetWorker 身份认证服务器以使用外部机构进行 SSL 身份认证


Linux NetWorker 服务器:

  1. 打开与 NetWorker AUTHC 服务器的 SSH 会话。
  2. 切换到 root:
$ sudo su -
  1. 使用 OpenSSL 从域服务器获取 CA 证书(或证书链):
# openssl s_client -connect DOMAIN_SERVER_ADDRESS:636 -showcerts > /dev/null
CA 证书封装在 -----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE-----。如果使用链证书,则在列出的多个证书中,第一个证书是中间证书,最后一个证书是根 CA。
  • 单一证书:复制证书,包括 -----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE----- 并将其放入您选择的位置的名为 RCAcert.crt 的文件中。
  • 证书链:复制每个证书(包括其 -----BEGIN CERTIFICATE----- 和 -----END CERTIFICATE----- 字段),并将它们放入单独的文件中。例如 ICA3cert.crt、ICA2cert.crt、ICA1cert.crt,最后是 RCAcert.crt。
  1. 为了帮助简化该过程,请设置以下命令行变量:
# 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]#
  1. 导入证书:

对于 NetWorker 19.12(及更早版本):

A. 使用证书链时,导入链中的每个证书,直至根证书 (RCA)。 如果仅使用一个根 CA,请导入该根 CA。
# $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
系统将提示您在 cacerts 密钥库中接受证书。 

B. 如果您收到重复别名(以前的过期证书)的警报,请删除具有相同别名的现有证书:
# $java_bin/keytool -delete -alias ALIAS_NAME -keystore $java_bin/../lib/security/cacerts -storepass changeit
删除旧证书后,重复步骤 A。

对于 NetWorker 19.13(及更高版本):

A. 使用证书链时,导入链中的每个证书,直至根证书 (RCA)。如果仅使用一个根 CA,请导入该根 CA。
# $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
系统将提示您在 cacerts 密钥库中接受证书。 

B. 如果您收到重复别名(以前的过期证书)的警报,请删除具有相同别名的现有证书:
# $java_bin/keytool -delete -alias ALIAS_NAME -cacerts -storepass changeit
删除旧证书后,重复步骤 A。
 
  1. 重新启动 NetWorker 服务器服务。重新启动服务会重新加载 cacerts 文件。如果在导入证书后未重新启动 NetWorker 服务,则在 NetWorker 中配置外部机构的过程将失败,并显示与证书相关的错误。
# nsr_shutdown
# systemctl start networker
  1. 转至 从 NWUI 创建“AD over SSL”外部授权资源

Windows NetWorker 服务器:

默认情况下,Windows 未安装 OpenSSL。如果您的系统上已安装它,您可以按照上述 Linux 部分中的相同说明进行操作。如果未安装,您可以从第三方平台安装,也可以使用以下步骤收集不使用 OpenSSL 的证书。

  1. 在 NetWorker 身份验证 (AUTHC) 服务器上打开提升的 PowerShell 提示符。
  2. 运行以下脚本,将 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()
}
警告:此脚本块仅用于示例用法。由于特定的 Windows 版本或系统上的安全强制策略,此操作在某些环境中可能会失败。如果无法直接从 NetWorker 服务器获取证书,则必须咨询域管理员以获取所需的根 CA 和任何中间证书(如果已配置)。或者,使用 Linux 服务器收集证书(如上面的 Linux 说明中所示)。
示例:
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-----
提醒:如果只有根 CA,脚本将返回一个证书。如果配置了中间证书并由服务器公开,则会显示其他证书。
  1. 复制证书(开始于 ---BEGIN CERTIFICATE--- ,结束于 ---END CERTIFICATE--- ),并将其粘贴到新文件中。如果存在证书链,则必须对每个证书执行此操作。
  2. 为根 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"
  1. 导入证书:

    对于 NetWorker 19.12(及更早版本):
A. 使用证书链时,导入链中的每个证书,直至 RCA。如果仅使用一个根 CA,请导入该根 CA。
& $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
系统将提示您在 cacerts 密钥库中接受证书。 
B. 如果您收到重复别名(以前的过期证书)的警报,请删除具有相同别名的现有证书:
& $JAVA_BIN\keytool.exe -delete -alias ALIAS_NAME -keystore $JAVA_BIN\..\lib\security\cacerts -storepass changeit
删除旧证书后,重复步骤 A。

对于 NetWorker 19.13(及更高版本):
 

A. 使用证书链时,导入链中的每个证书,直至 RCA。如果仅使用一个根 CA,请导入该根 CA。
& $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
系统将提示您在 cacerts 密钥库中接受证书。 
B. 如果您收到重复别名(以前的过期证书)的警报,请删除具有相同别名的现有证书:
& $JAVA_BIN\keytool.exe -delete -alias ALIAS_NAME -cacerts -storepass changeit
删除旧证书后,重复步骤 A。
  1. 重新启动 NetWorker 服务器服务。重新启动服务会在 AUTHC 启动期间重新加载 cacerts 文件。如果在导入证书后未重新启动 NetWorker 服务,则在 NetWorker 中配置外部机构的过程将失败,并显示与证书相关的错误。
net stop nsrd
net start nsrd

从 NWUI 创建“AD over SSL”外部机构资源。

  1. 从 Web 浏览器访问 NWUI 服务器:https://nwui-server-name:9090/nwui
  2. 使用 NetWorker 管理员账户登录。
  3. 在菜单中,展开 Authentication Server,然后单击 External Authorities
  4. 在 External Authorities 中,单击 Add+
  5. 填充配置字段:
基本配置:
 
Field
名称
LDAP 或 AD 配置的描述性名称(不含空格)。最大字符数为 256。配置名称仅使用 ASCII 字符。
Server Type
AD over SSL
Provider Server Name 
指定 Active Directory 服务器的主机名或 IP 地址。
端口
端口 636 用于 SSL,如果选择了“AD over SSL”,此字段应自动填充。
Tenant
选择租户(如果已配置)。如果未配置租户或不需要租户,则可以使用“default”。
配置租户需要以下登录语法”tenant_name\domain_name\user_name“如果使用默认租户(通用),则登录语法为”domain_name\user_name

租户 — NetWorker 身份认证服务的顶层组织容器。本地数据库中的每个外部身份验证机构都会分配给一个租户。一个租户可以包含一个或多个域,但域名在租户内必须是唯一的。NetWorker 身份验证服务将创建一个集成租户名称 Default,其中包含 Default 域。创建多个租户可帮助您管理复杂的配置。例如,具有受限数据区 (RDZ) 的服务提供商可以创建多个租户,以便为租户用户提供隔离的数据保护服务。
Domain
完整域名,包括所有 DC 值;例如: example.com
User DN
指定对 AD 目录具有完全读取访问权限的用户帐户的完整 可分辨名称本超链接将引导您访问非 Dell Technologies 运营的网站。 (DN)。例如: CN=Administrator,CN=Users,DC=example,DC=com
User DN Password
指定用于直接访问和读取 AD 的用户帐户的密码。
 
高级配置:
 
Group Object Class
必填。标识 LDAP 或 AD 层次结构中的组的对象类。
● 对于 LDAP,请使用 groupOfUniqueNames groupOfNames
● 对于 AD,使用 group
组搜索路径(可选)
指定身份验证服务在 LDAP 或 AD 层次结构中搜索组时应使用的搜索路径的 DN。
Group Name Attribute
标识组名称的属性;例如, cn
Group Member Attribute
组中用户的组成员身份:
● 对于 LDAP:
○ 当组对象类为 groupOfNames 该属性通常是 member
○ 当组对象类为 groupOfUniqueNames 该属性通常是 uniquemember
● 对于 AD,该值通常为 member
用户对象类
在 LDAP 或 AD 层次结构中标识用户的对象类。例如: person
用户搜索路径(可选)
指定身份验证服务在 LDAP 或 AD 层次结构中搜索用户时应使用的搜索路径的 DN。指定相对于您在 configserver-address 选项将密码指定为可见文本。例如,对于 AD,指定 cn=users
User ID Attribute
与 LDAP 或 AD 层次结构中的用户对象关联的用户 ID。
对于 LDAP,此属性通常为 uid
对于 AD,此属性通常为 sAMAccountName

提醒:请咨询您的 AD/LDAP 管理员,以确认您的环境需要哪些 AD/LDAP 专用字段。
  1. 完成后,单击 Save
  2. 现在应显示已配置的外部机构资源的摘要:

配置示例

  1. Server > User Groups 菜单,编辑包含要委派给 AD/LDAP 组或用户的权限的用户组。要授予完整的管理员权限,请在应用程序管理员安全管理员角色的 External Roles 字段中指定 AD 组/用户 DN。

例如: 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.

 

  1. 指定 AD 组或用户 DN 后,单击 Save。 
  2. 从 NWUI 界面退出登录,然后使用 AD 账户重新登录:

登录 NWUI 界面

  1. 右上角的用户图标指示登录的用户账户。

其他信息

如何检查 AD 组成员身份并获取 NetWorker 权限所需的可分辨名称 (DN) 值:
您可以使用 authcmgmt 命令确认 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

产品

NetWorker Family, NetWorker Series
文章属性
文章编号: 000203005
文章类型: How To
上次修改时间: 20 8月 2026
版本:  15
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。