1.11. 创建并使用 .dsrc File 为目录服务器命令行实用程序设置默认选项
~/.dsrc 文件简化了使用 Directory Server 命令行工具的命令。默认情况下,这些工具需要您传递,例如 LDAP URL 或将可分辨名称(DN)绑定到该命令。如果您将这些设置存储在 ~/dsrc 文件中,您可以使用命令行工具,而无需每次指定这些设置。
			1.11.1. .dsrc 文件如何简化命令 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
					以下是指定实例的 LDAP URL 和绑定 DN 的 
~/.dsrc 文件示例:
				[server1] uri = ldap://server1.example.com binddn = cn=Directory Manager basedn = dc=example,dc=com
[server1]
uri = ldap://server1.example.com
binddn = cn=Directory Manager
basedn = dc=example,dc=com
					使用这些设置,您可以使用较短的目录服务器命令。例如,要创建一个用户帐户:
				
dsidm server1 user create
# dsidm server1 user create
					如果没有 
~/.dsrc 文件,则必须在命令中指定绑定 DN、LDAP URL 和基本 DN:
				dsidm -D cn=Directory Manager ldap://server1.example.com -b "dc=example,dc=com" user create
# dsidm -D cn=Directory Manager ldap://server1.example.com -b "dc=example,dc=com" user create
1.11.2. 使用 dsctl 实用程序创建 .dsrc 文件 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
					您可以使用 
dsctl 工具创建它,而不是手动创建 ~/.dsrc 文件:
				dsctl instance_name dsrc create ...
# dsctl instance_name dsrc create ...
					您可以将以下选项传递给命令:
				
--URI:设置实例的 URL,格式为 protocol://host_name_or_IP_address_or_socket。示例:--uri ldap://server.example.com--uri = ldaps://server.example.com--uri = ldapi://%%2fvar%%2frun%%2fslapd-instance_name.socket如果您设置了目录服务器套接字的路径,请在路径中使用 %%02 而不是斜杠(/)。重要如果您使用 ldapi URL,服务器会识别运行 Directory Server 命令行实用程序的用户 ID (UID)和组 ID (GID)。如果您以root用户身份运行该命令,UID 和 GID 为 0, Directory 服务器会自动作为cn=Directory Manager进行身份验证,而无需输入对应的密码。
--STARTTLS :设置将实用程序配置为连接到 LDAP 端口,然后发送 STARTTLS 命令来切换到加密连接。--baseDN :设置基础区分名称(DN)。例如:--basedn dc=example,dc=com--bindDN :设置绑定 DN。例如:--binddn cn=Directory Manager--pwdfile:设置包含绑定 DN 密码的文件的路径。例如:--pwdfile /root/rhds.pwd--TLS-cacertdir:当您使用 LDAPS 连接时,此参数中设置的路径定义验证服务器证书所需的证书颁发机构(CA)证书的目录。例如:--tls-cacertdir /etc/pki/CA/certs/请注意,在将 CA 证书复制到指定目录后,您必须使用 c_rehash /etc/pki/CA/certs/ 命令。--TLS-cert:设置服务器证书的绝对路径。例如:--tls-cert /etc/dirsrv/slapd-instance_name/Server-Cert.crt--TLS-key:设置服务器私钥的绝对路径。例如:--tls-key /etc/dirsrv/slapd-instance_name/Server-Cert.key--TLS-reqcert:设置客户端实用程序在 TLS 会话中的服务器证书执行的检查的内容。例如:--tls-reqcert hard可用的参数如下:- Never :实用程序不请求或检查服务器证书。
 - Allow: 工具会忽略证书错误,并建立连接。
 - hard: 实用程序终止证书错误的连接。
 
--saslmech: 设置用于 PLAIN 或 EXTERNAL 的 SASL 机制。例如:--saslmech PLAIN
1.11.3. 使用目录服务器实用程序时的远程和本地连接解析 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
					在保护目录服务器连接时,务必要区分远程和本地调用目录服务器命令。
				
					当您运行指定了 LDAP URL 的目录服务器命令时,服务器会将其视为远程连接,并检查 
/etc/openldap/ldap.conf 配置文件以及系统范围的设置以继续命令。
				
					当您运行指定了实例名称的 Directory Server 命令时,服务器会检查 
~/.dsrc 文件是否存在,并应用以下逻辑来继续:
				- 如果
~/.dsrc文件存在并同时包含实例名称和 LDAP URL,目录服务器会将其视为远程连接,并检查/etc/openldap/ldap.conf配置文件和系统范围的设置。 - 如果
~/.dsrc文件存在,且仅包含指定的实例名称,或者~/.dsrc文件不存在,则目录服务器将其视为本地连接,并使用本地dse.ldif文件中的nsslapd-certdir设置来保护连接。如果没有nsslapd-certdir,服务器将使用默认路径/etc/dirsrv/slapd-instance_name/来存储实例的网络安全服务(NSS)数据库。 
					有关 
nsslapd-certdir 参数的更多信息,请参阅 nsslapd-certdir (Certificate and Key Database Directory) 部分。