跳过导航链接 | |
退出打印视图 | |
![]() |
手册页第 1M 部分:系统管理命令 Oracle Solaris 11.1 Information Library (简体中文) |
- 根据对应的 /etc 文件创建 LDAP 条目
ldapaddent [-cpv] [-a authenticationMethod] [-b baseDN] -D bindDN [-w bind_password] [-j passwdFile] [-f filename] database
ldapaddent [-cpv] -a sasl/GSSAPI [-b baseDN] [-f filename] database
ldapaddent -d [-v] [-a authenticationMethod] [-D bindDN] [-w bind_password] [-j passwdFile] database
ldapaddent [-cpv] -h LDAP_server[:serverPort] [-M domainName] [-N profileName] [-P certifPath] [-a authenticationMethod] [-b baseDN] -D bindDN [-w bind_password] [-f filename] [-j passwdFile] database
ldapaddent [-cpv] -h LDAP_server[:serverPort] [-M domainName] [-N profileName] [-P certifPath] [-a authenticationMethod] [-b baseDN] [-f filename] database
ldapaddent -d [-v] -h LDAP_server[:serverPort] [-M domainName] [-N profileName] [-P certifPath] [-a authenticationMethod] [-b baseDN] -D bindDN [-w bind_password] [-j passwdFile] database
ldapaddent 可根据 LDAP 容器对应的 /etc 文件在该容器中创建条目。此操作是针对在管理 Solaris 系统时使用的每个标准容器定制的。database 参数用于指定所处理的数据的类型。此类型的合法值为 aliases、auto_*、bootparams、ethers、group、hosts(包括 IPv4 和 IPv6 地址)、ipnodes(hosts 的别名)、netgroup、netmasks、networks、passwd、shadow、protocols、publickey、rpc 和 services 之一。除了前述值以外,database 参数还可以为与 RBAC 有关的文件之一(请参见 rbac(5)):
/etc/user_attr
/etc/security/auth_attr
/etc/security/prof_attr
/etc/security/exec_attr
缺省情况下,ldapaddent 会从标准输入中读取数据,然后将此数据添加至与命令行中指定的数据库关联的 LDAP 容器。可从中读取数据的输入文件是使用 -f 选项指定的。
如果您指定 -h 选项,ldapaddent 将会与该选项指示的服务器建立连接,以便获取 -N 选项指定的 DUAProfile。条目将存储在所获取的配置描述的目录中。
缺省情况下(如果未指定 -h 选项),条目会存储在基于客户机配置的目录中。要在缺省模式下使用该实用程序,必须提前设置 Solaris LDAP 客户机。
可以使用 -b 选项覆盖条目的写入位置。
如果目录中存在要添加的条目,该命令将会显示错误并退出,除非使用了 -c 选项。
尽管存在 shadow 数据库类型,但不存在对应的 shadow 容器。shadow 和 passwd 数据均存储在 people 容器自身中。类似地,networks 和 netmasks 数据库中的数据存储在 networks 容器中。
user_attr 数据缺省情况下存储在 people 容器中。prof_attr 和 exec_attr 数据缺省情况下存储在 SolarisProfAttr 容器中。
在尝试添加 shadow 数据库中的条目之前,您必须先添加 passwd 数据库中的条目。添加没有对应的 passwd 条目的 shadow 条目将会失败。
passwd 数据库必须位于 user_attr 数据库之前。
为了提高性能,应按照以下建议顺序装入数据库:
装入 passwd 数据库后再装入 shadow 数据库
装入 networks 数据库后再装入 netmasks 数据库
装入 bootparams 数据库后再装入 ethers 数据库
只会将所遇到的给定类型的第一个条目添加到 LDAP 服务器中。ldapaddent 命令会跳过所有重复的条目。
ldapaddent 命令支持以下选项:
指定验证方法。缺省值是配置文件中配置的值。支持的验证方法包括:
simple
sasl/CRAM-MD5
sasl/DIGEST-MD5
sasl/GSSAPI
tls:simple
tls:sasl/CRAM-MD5
tls:sasl/DIGEST-MD5
选择 simple 将导致口令以明文形式在网络中发送。强烈建议不要使用该方法。此外,如果客户端配置有不使用验证的配置文件,也就是说,如果 credentialLevel 属性设置为 anonymous 或者 authenticationMethod 设置为 none,则用户必须使用此选项来提供验证方法。如果验证方法是 sasl/GSSAPI,则不需要使用 bindDN 和 bindPassword,并且必须将 /etc/nsswitch.conf 的 hosts 和 ipnodes 字段配置为:
hosts: dns files ipnodes: dns files
请参见 nsswitch.conf(4)。
在 baseDN 目录中创建条目。baseDN 与客户机的缺省搜索基无关,而表示用于创建条目的实际位置。如果未指定此参数,则会使用为服务或缺省容器定义的第一个搜索描述符。
即使出现错误后也继续将条目添加到目录中。如果目录服务器没有响应或存在验证问题,则不会添加条目。
创建对 baseDN 拥有写入权限的条目。与 -d 选项一起使用时,此条目将仅需要读取权限。
以适合给定数据库的格式将 LDAP 容器转储到标准输出。
表示要以 /etc/ 文件格式读取的输入文件。
指定用于存储条目的 LDAP 服务器的地址(或名称)以及可选端口。系统会使用 nsswitch.conf 文件中指定的当前命名服务。该端口的缺省值为 389,除非 TLS 指定为验证方法。在这种情况下,缺省 LDAP 服务器端口号为 636。
用于指定 IPv6 的地址和端口号的格式如下:
[ipv6_addr]:port
要为 IPv4 指定地址和端口号,请使用以下格式:
ipv4_addr:port
如果指定了主机名,请使用以下格式:
host_name:port
指定绑定 DN 的口令或 SSL 客户机密钥数据库的口令所在的文件。要保护口令,请在脚本中使用此选项,并将口令存放在安全文件中。此选项与 -w 选项互斥。
指定服务器负责的域的名称。如果未指定,将使用缺省域名。
指定 DUAProfile 名称。系统假定具有此名称的配置文件存在于由 -h 选项指定的服务器上。否则,将使用缺省 DUAProfile。缺省值为 default。
证书数据库的位置的证书路径。该值为安全数据库文件所在的路径。该值用于 TLS 支持,TLS 支持在 authenticationMethod 和 serviceAuthenticationMethod 属性中指定。缺省值为 /var/ldap。
从文件中装入口令信息时处理 password 字段。缺省情况下,password 字段将被忽略,因为该字段通常无效,但实际的口令显示在 shadow 文件中。
要用于验证 bindDN 的口令。如果缺少此参数,该命令将会提示输入口令。LDAP 中不支持 NULL 口令。
使用 -w bindPassword 指定要用于验证的口令时,系统的其他用户可通过 ps 命令在脚本文件中或在 shell 历史记录中看到该口令。
如果您提供 “-”(连字符)作为口令,系统将会提示您输入口令。
详细模式。
支持下列操作数:
数据库名称或服务名称。支持的值包括:aliases、auto_*、bootparams、ethers、group、hosts(包括 IPv6 地址)、netgroup、netmasks、networks、passwd、shadow、protocols、publickey、rpc 和 services。还支持 auth_attr、prof_attr、exec_attr、user_attr 和 projects。
示例 1 将口令条目添加到目录服务器
以下示例说明了如何将口令条目添加到目录服务器:
example# ldapaddent -D "cn=directory manager" -w secret \ -f /etc/passwd passwd
示例 2 添加组条目
以下示例说明了如何使用 sasl/CRAM-MD5 作为验证方法来将 group 条目添加到目录服务器:
example# ldapaddent -D "cn=directory manager" -w secret \ -a "sasl/CRAM-MD5" -f /etc/group group
示例 3 添加 auto_master 条目
以下示例说明了如何将 auto_master 条目添加到目录服务器:
example# ldapaddent -D "cn=directory manager" -w secret \ -f /etc/auto_master auto_master
示例 4 将 passwd 条目从目录转储到文件
以下示例说明了如何将 password 条目从目录转储到文件 foo:
example# ldapaddent -d passwd > foo
示例 5 将口令条目添加到特定的目录服务器
以下示例说明了如何将口令条目添加到所指定的目录服务器:
example# ldapaddent -h 10.10.10.10:3890 \ -M another.domain.name -N special_duaprofile \ -D "cn=directory manager" -w secret \ -f /etc/passwd passwd
将返回以下退出值:
成功完成。
出现错误。
包含客户机的 LDAP 配置的文件。这些文件将无法进行手动修改。其内容不保证是用户可读的。使用 ldapclient(1M) 可以更新这些文件。
有关下列属性的说明,请参见 attributes(5):
|
ldaplist(1)、ldapmodify(1)、ldapmodrdn(1)、ldapsearch(1)、idsconfig(1M)、ldapclient(1M)、nsswitch.conf(4)、attributes(5)
当前 libldap.so.5 不支持 StartTLS,因此提供的端口号是指 TLS 打开期间使用的端口,而不是用作 StartTLS 系列一部分的端口。例如:
-h foo:1000 -a tls:simple
上例引用的是在主机 foo 端口 1000 上打开的原始 TLS,而非在不安全的端口 1000 上打开的 StartTLS 系列。如果端口 1000 是不安全的,将不会进行连接。