安装指南
安装 Red Hat Directory Server 的说明
摘要
前言
本指南包含有关安装、更新和卸载 Red Hat Directory Server 和 Password Synchronization 服务的信息。另外,本指南包含有关将 Directory Server 10 迁移到 Directory Server 11 的信息。
要熟悉目录服务和规划目录服务器安装的概念,请参阅 Red Hat Directory Server 部署指南。
有关在安装后管理和配置目录服务器实例的详情,请参考 Red Hat Directory Server Administration Guide。
使开源包含更多
红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。我们从这四个术语开始:master、slave、黑名单和白名单。由于此项工作十分艰巨,这些更改将在即将推出的几个发行版本中逐步实施。有关更多详情,请参阅我们的首席技术官 Chris Wright 提供的消息。
第 1 章 安装 Directory 服务器软件包
本章介绍安装 Red Hat Directory Server 软件包的信息。
先决条件
Red Hat Enterprise Linux(RHEL)安装在服务器上。
有关您要安装的 Red Hat Directory Server 版本所需的 RHEL 版本的详情,请查看 Red Hat Directory Server 11 发行注记。
系统目录服务器注册到红帽订阅管理服务。
有关使用
Subscription Manager
的详情,请参考 使用和配置 Subscription Manager 指南中的相应的部分。- 您的红帽帐户中提供了有效的 Red Hat Directory Server 订阅。
-
启用 RHEL 默认软件仓库(
BaseOS
和AppStream
)。
1.1. 安装 Directory 服务器软件包
使用以下步骤安装 Directory 服务器软件包。
流程
列出您的红帽帐户中的可用订阅,找到提供 Red Hat Directory Server 的池 ID。例如:
# subscription-manager list --all --available --matches 'Red Hat Directory Server' ... Subscription Name: Example Subscription Provides: ... Red Hat Directory Server ... Pool ID: 5ab6a8df96b03fd30aba9a9c58da57a1 Available: 1 ...
使用上一步中的池 ID 将 Red Hat Directory Server 订阅附加到系统:
# subscription-manager attach --pool=5ab6a8df96b03fd30aba9a9c58da57a1 Successfully attached a subscription for: Example Subscription
启用
dirsrv-11-for-rhel-8-x86_64-rpms
存储库:# subscription-manager repos --enable=dirsrv-11-for-rhel-8-x86_64-rpms Repository 'dirsrv-11-for-rhel-8-x86_64-rpms' is enabled for this system.
安装
redhat-ds:11
模块:# yum module install redhat-ds:11
这个命令会自动安装所有必需的依赖项。
其他资源
- 有关安装 Red Hat Enterprise Linux 并将系统注册到订阅管理服务的详情,请参考 Red Hat Enterprise Linux 安装指南。
-
有关使用
subscription-manager
工具程序的详情,请参考 使用和配置 Subscription Manager 指南。 - 有关启用软件仓库的详情,请参考 Red Hat Enterprise Linux 系统管理员 指南中的使用 Subscription Manager 和 Yum 管理基本软件安装 任务部分。
第 2 章 设置一个新的 Directory 服务器实例
目录服务器支持创建新实例:
先决条件
- 服务器满足最新 Red Hat Directory Server 版本的硬件和软件要求,如 Red Hat Directory Server 发行注记 所述。
- 目录服务器软件包安装如 第 1 章 安装 Directory 服务器软件包 所述。
- 可以使用 DNS 解析服务器的完全限定域名(FQDN)。
2.1. 在命令行中使用 .inf
文件设置新实例
使用 .inf
安装目录服务器可让您自定义高级设置。例如,除了交互式安装程序和 Web 控制台中的设置外,您还可以在 .inf
文件中自定义以下设置:
-
用户和组在服务启动后使用
ns-slapd
Directory Server 进程。请注意,您必须在开始安装前手动创建用户和组。 - 路径,如配置、备份和数据目录。
- 证书的有效性。
- 禁用严格的主机检查,当在负载均衡器后面使用 GSSAPI 安装实例时。
本节描述:
如果只想在安装过程中设置经常使用的配置参数,您可以使用交互式安装程序。详情请查看 第 2.2 节 “使用交互式安装程序在命令行中设置新实例”。
2.1.1. 为 Directory 服务器实例安装创建 .inf
文件
在本节中,您将了解如何为 dscreate
实用程序创建 .inf
配置文件以及如何调整 .inf
文件到您的环境。在后续步骤中,您将使用此文件来创建新的 Directory 服务器实例。
流程
使用
dscreate create-template
命令创建模板.inf
文件。例如,将模板存储在/root/instance_name.inf
文件中:# dscreate create-template /root/instance_name.inf
创建的文件具有所有可用的参数及描述
编辑您在上一步中创建的文件:
取消注释您要设置以自定义安装的参数。
注意所有参数都具有默认值。但是,红帽建议为生产环境自定义某些参数。
例如,至少设置以下参数:
[slapd] # instance_name (str) # Description: ... # Default value: localhost instance_name = instance_name # root_password (str) # Description: ... # Default value: directory manager password root_password = password
使用
dscreate create-template
命令创建的模板文件包含您可以在这些部分中配置的参数的完整列表。在创建实例的过程中自动创建后缀:
取消注释
create_suffix_entry
参数,并将其设置为true
:# create_suffix_entry (bool) # Description: ... # Default value: False create_suffix_entry = True
取消注释
suffix
参数,并设置后缀:# suffix (str) # Description: ... # Default value: suffix = dc=example,dc=com
重要除了在实例创建过程中创建后缀外,您可以稍后创建它,如Red Hat Directory Server 管理指南中的创建数据库所述。https://access.redhat.com/documentation/zh-cn/red_hat_directory_server/11/html/administration_guide/configuring_directory_databases-creating_and_maintaining_databases#Creating_and_Maintaining_Databases-Creating_Databases但是,如果没有创建后缀,则无法将数据存储到这个实例中。
(可选)取消注释其他参数,并将其设置为适合您环境的值。例如,使用这些参数为 LDAP 和 LDAPS 协议指定不同的端口。
注意默认情况下,您创建的新实例包括启用自签名证书和 TLS。为了提高安全性,红帽建议您不要禁用此功能。请注意,您可以稍后将自签名证书替换为证书颁发机构(CA)发布的证书。
其他资源
-
有关您可以在每个参数的
.inf
文件和描述中设置的参数的完整列表,请查看dscreate create create-template
命令的模板文件。 - 有关在安装后安装证书的详情,请参考 Red Hat Directory Server 管理指南中的 Directory Server 使用的 NSS 数据库 部分。
2.1.2. 使用 .inf
文件设置新的目录服务器实例
这部分论述了如何使用命令行使用 .inf
文件设置新的 Directory Server 实例。
先决条件
-
所创建的 Directory 服务器实例的
.inf
文件,如 第 2.1.1 节 “为 Directory 服务器实例安装创建.inf
文件” 所述。
流程
将
.inf
文件传递给dscreate from-file
命令,以创建新实例。例如:# dscreate from-file /root/instance_name.inf Starting installation... Completed installation for instance_name
创建的实例将自动启动,并配置为在系统引导时启动。
- 在防火墙中打开所需端口。请查看 第 2.1.3 节 “在防火墙中打开所需端口”
2.1.3. 在防火墙中打开所需端口
要允许其他机器通过网络连接到目录服务器,请在本地防火墙中打开所需的端口。
如果在实例创建过程中没有指定端口,实例将端口 389
用于 LDAP,和端口 636
用于 LDAPS 协议。
先决条件
- 在实例创建过程中设置的 LDAP 和 LDAPS 协议的端口号。
流程
确保
firewalld
服务正在运行。查看
firewalld
当前是否正在运行:# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-06-15 14:06:33 CEST; 1h 17min ago ...
要启动
firewalld
并将服务配置为在系统引导时自动启动:# systemctl start firewalld # systemctl enable firewalld
使用
firewall-cmd
工具打开所需的端口。例如,要在默认防火墙区中打开 LDAP 和 LDAPS 默认端口:# firewall-cmd --permanent --add-port={389/tcp,636/tcp}
重新载入防火墙配置,以确保立即进行更改:
# firewall-cmd --reload
其他资源
-
有关使用
firewall-cmd
在系统上打开端口的详情,请查看 Red Hat Enterprise Linux 安全指南 或firewall-cmd(1)
man page。
2.2. 使用交互式安装程序在命令行中设置新实例
管理员可以通过回答有关新实例配置的问题,使用 Directory Server 交互式安装程序设置新实例。
有关互动安装程序支持的设置列表,请查看 第 2.2.1 节 “交互式安装程序支持的设置”
本节描述:
如果要在安装过程中自定义其他设置,请使用 .f
文件而不是交互式安装程序。详情请查看 第 2.1 节 “在命令行中使用 .inf
文件设置新实例”。
2.2.1. 交互式安装程序支持的设置
如果使用交互式安装程序,您可以设置以下设置:
- 系统主机名
- 启用或禁用严格的主机名验证
- 实例的名称
- LDAP 端口号
- LDAPS 端口号
- 自动使用自签名证书
- 目录管理器帐户的 DN
- 目录管理器帐户的密码
- 可选创建数据库后缀
2.2.2. 使用交互式安装程序创建实例
要启动交互式安装程序来设置新实例,请输入:
# dscreate interactive
要使用安装程序中大部分问题后面的方括号中显示的默认值,请按 Enter 但不输入一个值。
例 2.1. 使用交互式安装程序
# dscreate interactive Install Directory Server (interactive mode) =========================================== Enter system's hostname [server.example.com]: Enter the instance name [server]: instance_name Enter port number [389]: Create self-signed certificate database [yes]: Enter secure port number [636]: Enter Directory Manager DN [cn=Directory Manager]: Enter the Directory Manager password: password Confirm the Directory Manager Password: password Enter the database suffix (or enter "none" to skip) [dc=server,dc=example,dc=com]: dc=example,dc=com Create sample entries in the suffix [no]: Create just the top suffix entry [no]: yes Do you want to start the instance after the installation? [yes]: Are you ready to install? [no]: yes Starting installation... Completed installation for instance_name
您可以使用明文设置密码,而不必设置由 pwdhash 程序生成的 {algorithm} hash 字符串。
2.2.3. 在防火墙中打开所需端口
要允许其他机器通过网络连接到目录服务器,请在本地防火墙中打开所需的端口。
如果在实例创建过程中没有指定端口,实例将端口 389
用于 LDAP,和端口 636
用于 LDAPS 协议。
先决条件
- 在实例创建过程中设置的 LDAP 和 LDAPS 协议的端口号。
流程
确保
firewalld
服务正在运行。查看
firewalld
当前是否正在运行:# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-06-15 14:06:33 CEST; 1h 17min ago ...
要启动
firewalld
并将服务配置为在系统引导时自动启动:# systemctl start firewalld # systemctl enable firewalld
使用
firewall-cmd
工具打开所需的端口。例如,要在默认防火墙区中打开 LDAP 和 LDAPS 默认端口:# firewall-cmd --permanent --add-port={389/tcp,636/tcp}
重新载入防火墙配置,以确保立即进行更改:
# firewall-cmd --reload
其他资源
-
有关使用
firewall-cmd
在系统上打开端口的详情,请查看 Red Hat Enterprise Linux 安全指南 或firewall-cmd(1)
man page。
2.3. 使用 Web 控制台设置新实例
管理员可以使用 Web 控制台使用基于浏览器的界面创建新实例。
本节描述:
2.3.1. 使用 Web 控制台设置一个新的 Directory 服务器实例
本节论述了如何使用 Web 控制台设置新的 Directory 服务器实例。
先决条件
Web 控制台安装在服务器上,端口 9090 是在本地防火墙中打开。
详情请参阅
使用 RHEL 8 web 控制台指南中的安装 Web 控制台
部分。
流程
使用浏览器连接到在 Directory 服务器主机上端口 9090 上运行的 Web 控制台。例如:
https://server.example.com:9090
-
以
root
用户身份或具有 sudo 权限的用户身份登录。 - 选择 Red Hat Directory Server 条目。
创建新实例:
- 如果服务器上不存在任何实例,请单击 Create New Instance 按钮。
- 如果服务器已在运行现有的实例,请选择 Actions,再单击 Create Instance。
完成
Create New Server Instance
表单的字段:Instance Name
:设置实例的名称。重要您不能在创建实例后更改实例名称。
-
端口 :设置 LDAP 协议的端口号。
端口不能被另一个实例或服务使用。默认端口为 389。
-
安全端口
:设置 LDAPS 协议的端口号。端口不能被另一个实例或服务使用。默认端口为 636。 创建自签署的 TLS 证书 DB:在实例中启用 TLS 加密并创建自签名证书
。重要为提高安全性,红帽建议您创建启用了自签名证书和 TLS 的新实例。请注意,您可以稍后将自签名证书替换为证书颁发机构(CA)发布的证书。
-
目录管理器 DN
:设置实例的管理用户的可分辨名称(DN)。默认值为cn=Directory Manager
。 -
Directory Manager Password
:设置实例的管理用户的密码。 -
确认密码
: Must 设置为与Directory Manager Password
字段中的值相同。 -
Database Suffix
:为后端设置后缀。默认值为dc=example,dc=com
。 -
数据库名称
:设置后端数据库的名称。如果指定了后端后缀,则需要填写此字段。
选择以下选项之一:
-
不初始化数据库
:安装程序不会创建数据库和后缀。 -
创建 Suffix Entry
: 安装程序根据Database Suffix
和Database Name
字段中填写的值创建数据库和后缀。 创建 Suffix Entry and Add Sample Entries
: 安装程序会根据Database Suffix
和Database Name
字段中填写的值创建数据库和后缀。另外,安装程序会在 目录中创建示例条目。注意如果在安装过程中没有创建后缀,您必须稍后手动创建它,然后才能向该目录添加条目。
-
点 Create Instance。
新实例启动,并配置为在系统引导时自动启动。
- 在防火墙中打开所需端口。请查看 第 2.3.2 节 “在防火墙中打开所需端口”
其他资源
- 有关 web 控制台的详情,请参阅使用 RHEL 8 web 控制台指南中的管理系统。
- 有关在安装后安装证书的详情,请参考 Red Hat Directory Server 管理指南中的 Directory Server 使用的 NSS 数据库 部分。
2.3.2. 在防火墙中打开所需端口
要允许其他机器通过网络连接到目录服务器,请在本地防火墙中打开所需的端口。
如果在实例创建过程中没有指定端口,实例将端口 389
用于 LDAP,和端口 636
用于 LDAPS 协议。
先决条件
- 在实例创建过程中设置的 LDAP 和 LDAPS 协议的端口号。
流程
确保
firewalld
服务正在运行。查看
firewalld
当前是否正在运行:# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-06-15 14:06:33 CEST; 1h 17min ago ...
要启动
firewalld
并将服务配置为在系统引导时自动启动:# systemctl start firewalld # systemctl enable firewalld
使用
firewall-cmd
工具打开所需的端口。例如,要在默认防火墙区中打开 LDAP 和 LDAPS 默认端口:# firewall-cmd --permanent --add-port={389/tcp,636/tcp}
重新载入防火墙配置,以确保立即进行更改:
# firewall-cmd --reload
其他资源
-
有关使用
firewall-cmd
在系统上打开端口的详情,请查看 Red Hat Enterprise Linux 安全指南 或firewall-cmd(1)
man page。
第 3 章 在负载均衡器后面使用 Kerberos 验证安装目录服务器
为提供高可用性,请在负载均衡器后面安装两个目录服务器实例。用户必须能够使用 Kerberos 进行身份验证。
设置此场景只支持使用命令行。
设置此场景包括以下步骤:
先决条件
- 服务器满足最新 Red Hat Directory Server 版本的硬件和软件要求,如 Red Hat Directory Server 发行注记 所述。
- 目录服务器软件包安装如 第 1 章 安装 Directory 服务器软件包 所述。
3.1. 了解在负载均衡器后面使用 Kerberos 设置实例时的区别
如果用户使用通用安全服务 API(GSSAPI)访问服务,则 Kerberos 主体包含服务主机的 DNS 名称。如果用户连接到负载均衡器,主体包含负载均衡器的 DNS 名称,而不是来自 Directory 服务器的 DNS 名称。例如: ldap/loadbalancer.example.com@EXAMPLE.COM
。
为便于成功连接,接收请求的 Directory 服务器实例必须使用与负载均衡器相同的名称,即使负载均衡器 DNS 名称不同。
3.2. 为 Directory 服务器实例安装创建 .inf
文件
在本节中,您将了解如何为 dscreate
实用程序创建 .inf
配置文件以及如何调整 .inf
文件到您的环境。在后续步骤中,您将使用此文件来创建新的 Directory 服务器实例。
流程
使用
dscreate create-template
命令创建模板.inf
文件。例如,将模板存储在/root/instance_name.inf
文件中:# dscreate create-template /root/instance_name.inf
创建的文件具有所有可用的参数及描述
编辑您在上一步中创建的文件:
取消注释您要设置以自定义安装的参数。
注意所有参数都具有默认值。但是,红帽建议为生产环境自定义某些参数。
例如,至少设置以下参数:
[slapd] # instance_name (str) # Description: ... # Default value: localhost instance_name = instance_name # root_password (str) # Description: ... # Default value: directory manager password root_password = password
使用
dscreate create-template
命令创建的模板文件包含您可以在这些部分中配置的参数的完整列表。要将负载均衡器后面的实例与 GSSAPI 身份验证一起使用,请将
[general]
部分中的full_machine_name
参数设置为负载均衡器的完全限定域名(FQDN)而不是 Directory Server 主机的 FQDN:[general] # full_machine_name (str) # Description: ... # Default value: loadbalancer.example.com full_machine_name = loadbalancer.example.com
在
[general]
部分中取消注释strict_host_checking
参数,并将它设为False
:# strict_host_checking (bool) # Description: ... # Default value: True strict_host_checking = False
在创建实例的过程中自动创建后缀:
取消注释
create_suffix_entry
参数,并将其设置为true
:# create_suffix_entry (bool) # Description: ... # Default value: False create_suffix_entry = True
取消注释
suffix
参数,并设置后缀:# suffix (str) # Description: ... # Default value: suffix = dc=example,dc=com
重要除了在实例创建过程中创建后缀外,您可以稍后创建它,如Red Hat Directory Server 管理指南中的创建数据库所述。https://access.redhat.com/documentation/zh-cn/red_hat_directory_server/11/html/administration_guide/configuring_directory_databases-creating_and_maintaining_databases#Creating_and_Maintaining_Databases-Creating_Databases但是,如果没有创建后缀,则无法将数据存储到这个实例中。
(可选)取消注释其他参数,并将其设置为适合您环境的值。例如,使用这些参数为 LDAP 和 LDAPS 协议指定不同的端口。
注意默认情况下,您创建的新实例包括启用自签名证书和 TLS。为了提高安全性,红帽建议您不要禁用此功能。请注意,您可以稍后将自签名证书替换为证书颁发机构(CA)发布的证书。
其他资源
-
有关您可以在每个参数的
.inf
文件和描述中设置的参数的完整列表,请查看dscreate create create-template
命令的模板文件。 - 有关在安装后安装证书的详情,请参考 Red Hat Directory Server 管理指南中的 Directory Server 使用的 NSS 数据库 部分。
3.3. 使用 .inf
文件设置新的目录服务器实例
这部分论述了如何使用命令行使用 .inf
文件设置新的 Directory Server 实例。
先决条件
-
所创建的 Directory 服务器实例的
.inf
文件,如 第 3.2 节 “为 Directory 服务器实例安装创建.inf
文件” 所述。
流程
将
.inf
文件传递给dscreate from-file
命令,以创建新实例。例如:# dscreate from-file /root/instance_name.inf Starting installation... Completed installation for instance_name
创建的实例将自动启动,并配置为在系统引导时启动。
- 在防火墙中打开所需端口。请查看 第 3.4 节 “在防火墙中打开所需端口”
3.4. 在防火墙中打开所需端口
要允许其他机器通过网络连接到目录服务器,请在本地防火墙中打开所需的端口。
如果在实例创建过程中没有指定端口,实例将端口 389
用于 LDAP,和端口 636
用于 LDAPS 协议。
先决条件
- 在实例创建过程中设置的 LDAP 和 LDAPS 协议的端口号。
流程
确保
firewalld
服务正在运行。查看
firewalld
当前是否正在运行:# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-06-15 14:06:33 CEST; 1h 17min ago ...
要启动
firewalld
并将服务配置为在系统引导时自动启动:# systemctl start firewalld # systemctl enable firewalld
使用
firewall-cmd
工具打开所需的端口。例如,要在默认防火墙区中打开 LDAP 和 LDAPS 默认端口:# firewall-cmd --permanent --add-port={389/tcp,636/tcp}
重新载入防火墙配置,以确保立即进行更改:
# firewall-cmd --reload
其他资源
-
有关使用
firewall-cmd
在系统上打开端口的详情,请查看 Red Hat Enterprise Linux 安全指南 或firewall-cmd(1)
man page。
3.5. 为负载均衡器创建 keytab,并将 Directory 服务器配置为使用 keytab
在用户使用 GSSAPI 对负载均衡器后面的目录服务器验证前,您必须为负载均衡器创建 Kerberos 主体,并将 Directory Server 配置为使用 Kerberos 主体。本节描述了这个步骤。
先决条件
包含以下 .inf
文件配置的实例:
-
full_machine_name
参数设置为负载均衡器的 DNS 名称。 -
strict_host_checking
参数设为False
。
流程
-
为负载均衡器创建 Kerberos 主体。例如,
ldap/loadbalancer.example.com@EXAMPLE.COM
另外,您还可以在 keytab 文件中添加更多主体。例如,要让用户直接使用 Kerberos 身份验证连接到负载均衡器后面的 Directory 服务器实例,请为 Directory Server 主机添加额外的主体。例如,
ldap/server1.example.com@EXAMPLE.COM
。创建服务主体的步骤取决于您的 Kerberos 安装。详情请查看您的 Kerberos 服务器文档。
-
将服务 keytab 文件复制到 Directory 服务器。例如,将其存储在
/etc/dirsrv/slapd-instance_name/ldap.keytab
文件中。 在
/etc/sysconfig/slapd-instance_name
文件中添加服务 keytab 的路径:KRB5_KTNAME=/etc/dirsrv/slapd-instance_name/ldap.keytab
重启 Directory 服务器实例:
# systemctl restart dirsrv@instance_name
验证您可以使用 GSSAPI 协议连接到负载均衡器。例如:
# ldapsearch -H ldap://loadbalancer.example.com -Y GSSAPI
如果您在 keytab 文件(如 Directory Server 主机本身)中添加了额外的 Kerberos 主体,还必须验证这些连接。例如:
# ldapsearch -H ldap://server1.example.com -Y GSSAPI
第 4 章 更新目录服务器
红帽经常发布 Red Hat Directory Server 11 的更新版本。这部分论述了如何更新 Directory 服务器软件包。
如果要将 Red Hat Directory Server 10 迁移到版本 11,请参阅 第 5 章 将 Directory Server 10 迁移到 Directory Server 11。
先决条件
- 在服务器上安装了 Red Hat Directory Server 11。
- 要更新的系统注册到红帽订阅管理服务。
- 有效的 Red Hat Directory Server 订阅附加到服务器。
4.1. 更新目录服务器软件包
使用 yum module update redhat-ds
命令检查 Directory Server 软件包及其依赖软件包的新更新,并安装它们:
# yum module update redhat-ds
在更新期间,dirsrv
服务会自动重启服务器上所有实例。
第 5 章 将 Directory Server 10 迁移到 Directory Server 11
本章介绍从 Red Hat Directory Server 10 迁移到 11 的信息,包括开始迁移前必须执行的任务。
红帽只支持从 Red Hat Directory Server 10 迁移到 11。
要将目录服务器 7、8 和 9 迁移到版本 11,您必须首先将安装迁移到 Directory Server 10。详情请查看 Red Hat Directory Server 10 安装指南中的 从上一版本迁移 一章。
先决条件
- 现有目录服务器安装在版本 10 上运行,并安装了所有可用的更新。
5.1. 使用复制方法迁移到目录服务器 11
在复制拓扑中,使用复制方法迁移到 Directory Server 11。
流程
- 安装 Directory Server 11。请参阅 第 2 章 设置一个新的 Directory 服务器实例。
- 另外,还可配置 TLS。请参阅 Red Hat Directory Server 11 管理员指南中的 启用 TLS 章节。
- 在 Directory Server 11 主机上,启用复制,但不创建复制协议。有关启用复制的详情,请参考 Red Hat Directory Server 11 管理员指南中的 设置多转换复制 部分。
- 在 Directory Server 10 主机上,启用复制并创建指向 Directory Server 11 主机的复制协议。如需更多信息,请参阅 Red Hat Directory Server 10 管理员指南中的 在 供应商服务器上配置读写副本 部分。
- 另外,还可在 Directory Server 11 主机间设置使用复制协议的进一步目录服务器 11 主机。
- 将您的客户端配置为仅使用 Directory Server 11 主机。
- 删除与 Directory Server 10 主机的复制协议。请参阅 Red Hat Directory Server 11 管理员指南中的从复制 拓扑中删除目录服务器实例。
- 卸载 Directory Server 10 主机。请参阅 Red Hat Directory Server 10 安装指南中的 卸载 目录服务器。
5.2. 使用导出和导入方法迁移到目录服务器 11
使用导出和导入方法迁移 small Directory 服务器环境,如没有复制的实例。
流程
在现有 Directory Server 10 主机上:
停止并禁用
dirsrv
服务:#
systemctl stop dirsrv@instance_name
#systemctl disable dirsrv@instance_name
导出后端。例如,要导出
用户Root
后端并将其存储在/tmp/userRoot.ldif
文件中:#
db2ldif -Z instance_name -n userRoot -a /tmp/userRoot.ldif
将以下文件复制到您要安装 Directory Server 11 的新主机中:
- 您上一步导出的 LDIF 文件。
-
如果您使用自定义 schema,
/etc/dirsrv/slapd-instance_name/schema/99user.ldif
如果要迁移启用 TLS 的实例并重复使用 Directory Server 11 安装的同一主机名,请将以下文件复制到新主机:
-
/etc/dirsrv/slapd-instance_name/cert8.db
-
/etc/dirsrv/slapd-instance_name/key3.db
-
/etc/dirsrv/slapd-instance_name/pin.txt
-
- 如果要重复使用 Directory Server 11 主机上相同的主机名和 IP,请将旧服务器与网络断开连接。
在新主机上:
- 安装 Directory Server 11。详情请查看 第 2 章 设置一个新的 Directory 服务器实例。
另外,还可配置 TLS 加密:
如果新安装使用不同于 Directory Server 10 实例的主机名:
- 请参阅 Red Hat Directory Server Administrator Guide 中的 启用 TLS 章节。
要使用与之前目录服务器 10 安装相同的主机名:
停止实例:
#
systemctl stop dirsrv@instance_name
删除网络安全服务(NSS)数据库和 Directory 服务器的密码文件(如果它们已存在):
#
rm /etc/dirsrv/slapd-instance_name/cert*.db /etc/dirsrv/slapd-instance_name/key*.db /etc/dirsrv/slapd-instance_name/pin.txt
-
将您从 Directory Server 10 主机复制的
cert8.db
、key3.db
和pin.txt
文件存储在/etc/dirsrv/slapd-instance_name/
目录中。 为 NSS 数据库及密码文件设置正确的权限:
#
chown dirsrv:root /etc/dirsrv/slapd-instance_name/cert8.db /etc/dirsrv/slapd-instance_name/key3.db /etc/dirsrv/slapd-instance_name/pin.txt
#chmod 600 /etc/dirsrv/slapd-instance_name/cert8.db /etc/dirsrv/slapd-instance_name/key3.db /etc/dirsrv/slapd-instance_name/pin.txt
启动实例:
#
systemctl start dirsrv@instance_name
目录服务器自动将 NSS 数据库转换为 SQLite 格式。转换的数据库存储在
/etc/dirsrv/slapd-instance_name/
目录的cert9.db
和key4.db
文件中。(可选)删除旧的 NSS 数据库以避免混淆:
#
rm /etc/dirsrv/slapd-instance_name/cert8.db /etc/dirsrv/slapd-instance_name/key3.db
如果您使用了自定义模式,将
99user.ldif
文件恢复到/etc/dirsrv/slapd-instance_name/schema/
目录,设置适当的权限,再重启实例。例如:#
cp /tmp/99user.ldif /etc/dirsrv/slapd-instance_name/schema/
#chmod 644 /etc/dirsrv/slapd-instance_name/schema/99user.ldif
#chown root:root /etc/dirsrv/slapd-instance_name/schema/99user.ldif
#systemctl restart dirsrv@instance_name
导入 LDIF 文件。例如,要将
/var/lib/dirsrv/slapd-instance_name/ldif/migration.ldif
文件导入userRoot
数据库:#
dsconf -D 'cn=Directory Manager' ldap://server.example.com backend import userRoot /var/lib/dirsrv/slapd-instance_name/ldif/migration.ldif
请注意,Directory 服务器需要您想在
/var/lib/dirsrv/slapd-instance_name/
目录中导入的 LDIF 文件。
第 6 章 安装、更新和卸载密码同步服务
要在 Active Directory 和 Red Hat Directory Server 之间同步密码,您必须使用密码密码同步服务。本章介绍有关密码同步服务功能以及如何安装、更新和删除它的信息。
6.1. 了解密码同步服务的工作方式
当您设置密码与 Active Directory 同步时,Directory 服务器会检索用户对象的所有属性,但密码除外。Active Directory 只存储加密密码,但目录服务器使用不同的加密。因此,Directory 服务器必须加密 Active Directory 用户密码。
要启用 Active Directory 和 Directory Server 之间的密码同步,Red Hat Directory Password Sync 服务 hook 最多会修改 DC 的 Windows 密码。如果用户或者管理员设置或更新密码,该服务在加密并存储在 Active Directory 中之前以纯文本检索密码。这个过程使 Red Hat Directory 密码 Sync 将纯文本密码发送到 Directory 服务器。为了保护密码,该服务仅支持 LDAPS 连接到目录服务器。当 Directory 服务器将密码存储在用户的条目中时,会使用目录服务器中配置的密码存储方案自动加密密码。
在 Active Directory 中,所有可写 DC 都可以处理密码操作。因此,您必须在 Active Directory 域中的每个可写 DC 上安装 Red Hat Directory 密码同步。
6.2. 下载密码同步服务安装程序
在安装 Red Hat Directory Password Sync 服务前,请从客户门户网站下载安装程序。
先决条件
- 有效的 Red Hat Directory Server 订阅
- 红帽客户门户网站中的帐户
流程
- 登录到红帽客户门户网站。
- 点页面顶部的 Downloads。
- 从产品列表中选择 Red Hat Directory Server。
-
在
Version
字段中选择11
。 -
下载
PassSync 安装程序
。 - 将安装程序复制到每个可写的 Active Directory 域控制器(DC)。
6.3. 安装密码同步服务
这部分论述了如何在 Windows 域控制器(DC)上安装 Red Hat Directory Password Sync。详情请查看 第 6.1 节 “了解密码同步服务的工作方式”。
先决条件
- 下载到 Windows Active Directory 域控制器(DC)的 PassSync 安装程序的最新版本。详情请查看 第 6.2 节 “下载密码同步服务安装程序”。
- 准备好的目录服务器主机,如在 Red Hat Directory Server 管理指南中的设置 Active Directory 和 Directory Server 之间的同步。
流程
- 使用有权在 DC 上安装软件的用户登录到 Active Directory 域控制器。
-
双击
RedHat-PassSync-ds11.*-x86_64.msi
文件来安装该文件。 -
此时会出现
Red Hat Directory 密码同步设置
。点击 Next。 根据您的目录服务器环境填写字段。例如:
将 Directory Server 主机的以下信息填写到字段:
-
主机名
:设置目录服务器主机的名称。或者,您可以将该字段设置为 Directory Server 主机的 IPv4 或 IPv6 地址。 -
端口号
:设置 LDAPS 端口号。 -
User Name
:设置同步用户帐户的可分辨名称(DN)。 -
Password
:设置同步用户的密码。 -
cert Token
:设置从 Directory Server 主机复制的服务器证书的密码。 -
搜索基础
:设置包含同步用户帐户的 Directory 服务器条目的 DN。
-
- 点 Next 开始安装。
- 点 Finish。
重新引导 Windows DC。
注意如果没有重启 DC,则
PasswordHook.dll
库不会被启用,密码同步将失败。- 在 Active Directory 和 Directory Server 之间设置同步,如 Red Hat Directory Server Administration Guide 中的 在 Active Directory 和 Directory Server 之间设置同步部分。在完全配置同步前,密码同步将失败。
在每个可写 Windows DC 上重复此步骤。
6.4. 更新密码同步服务
这部分论述了如何在 Windows 域控制器(DC)中更新现有 Red Hat Directory Password Sync 安装。
先决条件
- Red Hat Directory Password Sync 正在您的 Windows DC 上运行。
- 下载到 Windows Active Directory 域控制器(DC)的 PassSync 安装程序的最新版本。详情请查看 第 6.2 节 “下载密码同步服务安装程序”。
流程
- 使用有权在 DC 上安装软件的用户登录到 Active Directory 域控制器。
-
双击
RedHat-PassSync-ds11.*-x86_64.msi
文件。 - 点 Next 开始安装。
-
点
修改
按钮。 - 设置显示上一个安装过程中设定的配置。点 Next 来保留现有设置。
- 点 Next 开始安装。
- 点 Finish。
重新引导 Windows DC。
注意如果没有重启 DC,则
PasswordHook.dll
库不会被启用,密码同步将失败。
在每个可写 Windows DC 上重复此步骤。
6.5. 卸载密码同步服务
本节介绍从 Windows 域控制器(DC)卸载 Red Hat Directory Password Sync 服务。
先决条件
- Red Hat Directory 密码同步 在 Windows DC 上运行。
流程
- 使用有权从 DC 中删除软件的用户登录到 Active Directory 域控制器。
- 打开 Control Panel
- 单击 计划,然后单击计划和功能
选择 Red Hat Directory Password Sync 条目,然后点 Uninstall 按钮。
- 单击 "是 "进行确认。
第 7 章 卸载 Directory 服务器
在某些情况下,管理员会从主机卸载目录服务器。本章论述了这个步骤。
7.1. 卸载 Directory 服务器
如果您不再需要在服务器上运行 Directory 服务器,请卸载软件包,如本节所述。
先决条件
- 主机上安装的目录服务器
流程
从复制拓扑中删除所有实例。如果实例不是复制拓扑的成员,则会跳过这一步。
有关从拓扑中删除实例的详情,请参阅 Red Hat Directory Server Administration Guide 中的 从 Replication Topology 中删除实例。
从服务器删除所有实例。
详情请参阅 Red Hat Directory Server 管理指南中的删除目录服务器实例。
删除 Directory 服务器软件包:
# yum module remove redhat-ds
(可选)禁用
dirsrv-11-for-rhel-8-x86_64-rpms
存储库:# subscription-manager repos --disable=dirsrv-11-for-rhel-8-x86_64-rpms Repository 'dirsrv-11-for-rhel-8-x86_64-rpms' is disabled for this system.
另外,还可从系统中删除 Red Hat Directory Server 订阅:
重要如果您删除了提供除 Directory Server 之外的其他产品的订阅,您将无法为这些产品安装和更新软件包。
列出附加到主机的订阅:
# subscription-manager list --consumed Subscription Name: Example Subscription ... Pool-ID: 5ab6a8df96b03fd30aba9a9c58da57a1 ...
使用上一步中的池 ID 删除订阅:
# subscription-manager remove --pool=5ab6a8df96b03fd30aba9a9c58da57a1 2 local certificates have been deleted. The entitlement server successfully removed these pools: 5ab6a8df96b03fd30aba9a9c58da57a1 The entitlement server successfully removed these serial numbers: 1658239469356282126
其他资源
-
有关使用
subscription-manager
工具程序的详情,请参考 使用和配置 Subscription Manager 指南。
附录 A. Red Hat Directory Server 11 中替换了命令行工具
下表列出了 Directory Server 10 和更早的版本中的实用程序,以及它们在 Directory Server 11 中的替换:
目录服务器 10 及更早版本 | 目录服务器 11 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 没有替换。 |
|
|
|
|
|
|
| 没有替换 |
| 没有替换 |
|
|
| 没有替换 |
| 没有替换 |
| 没有替换 |
| 没有替换 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 没有替换 |
| 没有替换 |
| 没有替换 |
|
|
|
|
|
|
|
|
| 没有替换 |
|
|
| 没有替换 |
|
|
| 没有替换 |
|
|
附录 B. 修订历史记录
请注意,修订号与该手册版本相关,而不是与 Red Hat Directory Server 的版本号相关。
版本 | 日期和时间 | 作者 |
---|---|---|
11.5-1 | 2022 年 5 月 10 日:此指南的 Red Hat Directory Server 11.5 发行版本 | Marc Muehlfeld |
11.4-1 | 2021 年 11 月:本指南的 Red Hat Directory Server 11.4 发行版本 | Marc Muehlfeld |
11.3-1 | 2021 年 5 月 11 日:本指南的 Red Hat Directory Server 11.3 发行版本 | Marc Muehlfeld |
11.2-1 | 2020 年 11 月 03 日:本指南的 Red Hat Directory Server 11.2 版本 | Marc Muehlfeld |
11.1-1 | 2020 年 4 月 28 日:本指南的 Red Hat Directory Server 11.1 发行版本 | Marc Muehlfeld |
11.0-1 | 2019 年 11 月 05 日:本指南的 Red Hat Directory Server 11.0 发行版本 | Marc Muehlfeld |