跳过导航链接 | |
退出打印视图 | |
在 Oracle Solaris 11.1 中使用命名和目录服务 Oracle Solaris 11.1 Information Library (简体中文) |
4. 设置 Oracle Solaris Active Directory 客户机(任务)
11. 为使用 LDAP 客户机设置 Oracle Directory Server Enterprise Edition(任务)
以下各节介绍如何为主服务器准备源文件和 passwd 文件。
源文件通常位于主服务器上的 /etc 目录中。但是,将源文件存储在 /etc 中并不合适,因为这样映射中的内容将与主服务器上的本地文件中的内容相同。这是 passwd 和 shadow 文件的一个特殊问题,因为所有用户都具有对主服务器映射的访问权限,并且 root 口令将通过 passwd 映射传递到所有 NIS 客户机。有关其他信息,请参见passwd 文件和名称空间安全性。
但是,如果将源文件放在其他某个目录中,您必须修改 /var/yp 中的 Makefile,将 DIR=/etc 行更改为 DIR=/your-choice,其中,your-choice 是将用来存储源文件的目录的名称。这样便可将服务器上的本地文件视为客户机上的本地文件进行处理。(最好先保存原始 Makefile 的副本。)
此外,应当从某个非缺省目录创建 audit_user、auth_attr、exec_attr 和 prof_attr NIS 映射。通过将 RBACDIR =/etc/security 更改为 RBACDIR=/your-choice 来改进 /var/yp/Makefile。
出于安全原因,用于生成 NIS 口令映射的文件不应包含 root 项,以防止未经授权的 root 用户访问。因此,不应使用主服务器 /etc 目录中的文件生成口令映射。对于用于生成口令映射的口令文件,应删除其中的 root 项,并将它们放置在可免遭未经授权的访问的目录中。
例如,只要主服务器口令输入文件本身不是指向其他文件的链接,并且其位置在 Makefile 中已指定,就应该将这些文件存储在诸如 /var/yp 等目录或您选择的任何目录中。将根据 Makefile 中指定的配置自动设置正确的目录选项。
注意 - 确保 PWDDIR 指定的目录中的 passwd 文件不包含 root 项。 |
如果您的源文件在不同于 /etc 的目录中,则您必须修改 /var/yp/Makefile 中的 PWDIR 口令宏以引用 passwd 和 shadow 文件所在的目录。您需要将 PWDIR=/etc 行更改为 PWDIR=/your-choice,其中 your-choice 是您将用来存储 passwd 映射源文件的目录的名称。
此过程说明了如何为转换到 NIS 映射准备源文件。
检查以下文件:
audit_user
auth_attr
auto.home 或 auto_home
auto.master 或 auto_master
bootparams
ethers
exec_attr
group
hosts
ipnodes
netgroup
netmasks
networks
passwd
protocols
rpc
service
shadow
user_attr
该源目录是在 /var/yp/Makefile 中通过 DIR 宏定义的。
口令源目录是在 Makefile 中通过 PWDIR 宏定义的。
RBAC 源目录是在 /var/yp/Makefile 中通过 RBACDIR 宏定义的。如果需要,将 /etc/security/auth_attr.d 目录中文件的内容合并为 auth_attr 文件的副本,然后复制该副本。同样,如果需要,通过 exec_attr 和 prof_attr 来组合 exec_attr.d 和 prof_attr.d 目录中的文件。
注意 - 因为这些文件在系统每次升级时都将需要重新合并,所以请将本地文件与 /etc/security/*.d 目录中的发行版文件相隔离。 |
与其他源文件不同,/etc/mail/aliases 文件不能移至其他目录。此文件必须位于 /etc/mail 目录中。有关更多信息,请参阅 aliases(4) 手册页。
注 - 通过将 /var/yp/Makefile 中的 ALIASES = /etc/mail/aliases 项指向其他位置,可以添加特定于 NIS 的邮件别名文件。然后当您运行 make 命令时,ALIASES 项将创建一个 mail.aliases 映射。当 /etc/nsswitch.conf 文件正确地将 files 和 nis 作为目标时,sendmail 服务除了使用 /etc/mail/aliases 文件,还使用此映射。请参阅修改和使用 /var/yp/Makefile。
这些操作可以通过一个 sed 或 awk 脚本或者使用文本编辑器来执行。/var/yp/Makefile 会自动为您执行某些文件清理,但最好在运行 make 命令之前手动检查并清理这些文件。
对于该特定文件,源文件数据的格式必须是正确的。请检查各文件对应的手册页,以确保每个文件都具有正确格式。
检查源文件并将其复制到源文件目录之后,您现在需要将这些源文件转换为 NIS 服务使用的 ndbm 格式的映射。在主服务器上调用 ypinit 时,它会自动执行此操作,如如何设置主服务器中所述。
ypinit 脚本调用 make 程序,后者使用 /var/yp/Makefile。/var/yp 目录中提供了该文件的缺省副本,该文件包含将源文件转换为期望的 ndbm 格式的映射所需的命令。
您可以原样使用缺省的 Makefile,也可以修改它。如果确实要修改缺省的 Makefile,请确保先复制并存储原始的缺省 Makefile,以便将来需要时使用。您可能需要对 Makefile 进行以下一项或多项修改:
非缺省映射
如果您创建了自己的非缺省源文件并想将其转换为 NIS 映射,必须将这些源文件添加到 Makefile。
DIR 值
如果希望 Makefile 使用 /etc 目录以外的其他目录中存储的源文件(如源文件目录中所述),必须将 Makefile 中的 DIR 的值更改为希望使用的目录。更改 Makefile 中的该值时,请勿使行缩进。
PWDIR 值
如果希望 Makefile 使用 /etc 目录以外的其他目录中存储的 passwd、shadow 和 adjunct 源文件,必须将 Makefile 中 PWDIR 的值更改为希望使用的目录。更改 Makefile 中的该值时,请勿使行缩进。
RBACDIR 值
如果您希望 Makefile 使用存储在不同于 /etc 的某个目录中的 audit_user、auth_attr、exec_attr 和 prof_attr 源文件,则必须将 Makefile 中的 RBACDIR 值更改为您要使用的目录。更改 Makefile 中的该值时,请勿使行缩进。
域名解析程序
如果希望 NIS 服务器对不在当前域中的计算机使用域名解析程序,请注释掉 Makefile 行 B=,并取消对行 B=-b 的注释(激活)。
Makefile 的功能是为列在 all 下的每个数据库创建相应的 NIS 映射。数据在通过 makedbm 传递之后,将收集在 mapname.dir 和 mapname.pag 这两个文件中。这两个文件都位于主服务器上的 /var/yp/domainname 目录中。
Makefile 相应地基于 /PWDIR/passwd、/PWDIR/shadow 和 /PWDIR/security/passwd.adjunct 文件生成 passwd 映射。
通常,NIS 主服务器软件包是在适当的时候随 Oracle Solaris 发行版一起安装的。如果在安装系统时没有包括该软件包,请使用以下过程来安装该软件包。
# pkg install pkg:/service/network/nis
ypinit 脚本用于设置主服务器和从属服务器以及客户机,以使用 NIS。它还会首先运行 make 命令,以在主服务器上创建映射。
要使用 ypinit 命令在主服务器上生成一组新的 NIS 映射,请完成以下过程。
添加每台 NIS 服务器的主机名和 IP 地址。使用以下格式:IPaddress FQDN-hostname aliases。
例如:
129.0.0.1 master.example.com master 129.0.0.2 slave1.example.com slave1 129.0.0.3 slave2.example.com slave2
# /usr/sbin/ypinit -m
当 ypinit 提示输入要成为 NIS 从属服务器的其他计算机的列表时,请键入您正在使用的服务器的名称以及您在 /etc/inet/hosts file 中指定的 NIS 从属服务器的名称。
# domainname example.com
当 ypinit 询问是希望在出现第一个非致命错误时终止过程,还是即使出现非致命错误也仍然继续时,请键入 y。当您选择 y 时,ypinit 将在遇到第一个问题时退出。然后,您可以修复问题并重新启动 ypinit。建议在初次运行 ypinit 时这样做。如果希望继续操作,可尝试手动修复出现的所有问题,然后重新启动 ypinit。
ypinit 命令将询问是否可以销毁 /var/yp/domain-name 目录中现有的文件。仅当之前已安装 NIS 时才会显示此消息。通常,如果您希望清除来自以前的安装的文件,您将选择删除源文件。
此程序将使用 /var/yp 中的 Makefile(缺省或修改过的文件)中包含的说明。make 命令将清除指定的文件中剩余的所有注释行。它还会对这些文件运行 makedbm,创建适当映射并为每个映射建立主服务器的名称。
如果 Makefile 推送的映射所对应的域不是主服务器上的 domainname 命令返回的域,则可以使用正确的 DOM 变量标识启动 ypinit shell 脚本中的 make 来确保这些映射被推送到正确的域,如下所示:
# make DOM=domain-name passwd
此命令会将 passwd 映射推送到目标域,而不是主服务器所属的域。
请参见管理名称服务转换。
通常,一台 NIS 主服务器仅支持一个 NIS 域。但是,如果要使用一台主服务器来支持多个域,则在设置服务器为更多域提供服务时,必须对如何设置主服务器中所述的步骤稍做修改。
# domainname sales.example.com
# make DOM=sales.example.com