跳过导航链接 | |
退出打印视图 | |
在 Oracle Solaris 11.1 中使用命名和目录服务 Oracle Solaris 11.1 Information Library (简体中文) |
4. 设置 Oracle Solaris Active Directory 客户机(任务)
11. 为使用 LDAP 客户机设置 Oracle Directory Server Enterprise Edition(任务)
本节介绍了以下任务:
通常,DNS 软件包随 Oracle Solaris 发行版自动安装。如果在安装服务器时没有包括该软件包,请使用以下过程来安装该软件包。
# pkg install pkg:/service/network/dns/bind
注 - 不建议通过配置 named 来指定一个更改根目录。更安全的选择是创建一个 Solaris 区域并将 named 配置为在该区域内运行。
在 named 将启动之前,必须存在一个有效的配置文件。缺省情况下,此文件名为 /etc/named.conf。named 的配置可能非常简单。假如有 DNS 根服务器可供访问,一个空文件即可提供足够的信息来配置高速缓存专用服务器。
# touch /etc/named.conf # named-checkconf -z /etc/named.conf
该文件用来配置 DNS 服务器的远程控制访问。
# rndc-confgen -a wrote key file "/etc/rndc.key"
请参见如何配置 DNS 服务器选项。
# svcadm enable network/dns/server
/etc/rndc.conf 用于通过使用 rndc 命令配置 DNS 服务器守护进程 named 的远程控制访问。要创建一个缺省文件,请使用以下过程。有关更多选项,请参阅 rndc.conf(4) 手册页。
# rndc-confgen -a wrote key file "/etc/rndc.key
# svcadm restart dns/server:default
此过程说明了如何为 named 通信选择 IPv4 传输协议。请参见 named(1M) 手册页。
# svccfg -s network/dns/server svc:/network/dns/server:default> setprop options/ip_interfaces = "IPv4" svc:/network/dns/server:default> quit
# svcadm refresh network/dns/server # svcadm enable network/dns/server
此过程说明了如何为用户指定相关授权来管理 named 守护进程。
# usermod -A solaris.smf.manage.bind dnsadmin
# svccfg -s network/dns/server svc:/network/dns/server:default> setprop start/user = dnsadmin svc:/network/dns/server:default> setprop start/group = dnsadmin svc:/network/dns/server:default> exit
因为只有 root 具有写入权限来创建缺省的进程 ID 文件 /var/run/named/named.pid,因此必须将 named 守护进程配置为使用一个替代文件。
# mkdir /var/named/tmp # chown dnsadmin /var/named/tmp
将以下行添加到 named.conf 文件:
# head /etc/named.conf options { directory "/var/named"; pid-file "/var/named/tmp/named.pid"; };
# svcadm refresh svc:/network/dns/server:default # svcadm restart svc:/network/dns/server:default
首先,列出要搜索的域和 DNS 名称服务器的 IP 地址。然后,更新 SMF 系统信息库。
# svccfg -s network/dns/client svc:/network/dns/client> setprop config/search = astring: ("example.com" "sales.example.com") svc:/network/dns/client> setprop config/nameserver = net_address: (192.168.1.10 192.168.1.11) svc:/network/dns/client> select network/dns/client:default svc:/network/dns/client:default> refresh svc:/network/dns/client:default> quit
第一个命令更新 SMF 系统信息库中 DNS 配置信息。
# svccfg -s system/name-service/switch svc:/system/name-service/switch> setprop config/host = astring: "files dns" svc:/system/name-service/switch> select system/name-service/switch:default svc:/system/name-service/switch:default> refresh svc:/system/name-service/switch:default> quit
/etc/resolv.conf 仍在被某些进程使用,因此在对 SMF 系统信息库进行了会更改该文件内容的任何更改后,都应当重新创建该文件。
# nscfg export svc:/network/dns/client:default
# svcadm enable network/dns/client # svcadm enable system/name-service/switch
不是必须执行所有这些步骤。如果您认为您在较早的步骤中查明了问题,可以前进到步骤 6 来使服务正常运行。
# svcs -x dns/server:default svc:/network/dns/server:default (BIND DNS server) State: online since Tue Oct 18 19:35:00 2011 See: named(1M) See: /var/svc/log/network-dns-server:default.log Impact: None.
# tail /var/svc/log/network-dns-server:default.log
# grep named /var/adm/messages
在前台运行 named 会强制将所有日志记录写入到标准错误,以便更容易找出问题。
# named -g
# svcadm clear dns/server:default # svcs dns/server:default STATE STIME FMRI online 17:59:08 svc:/network/dns/server:default
在修改 DNS 配置时,您可以使用 named-checkzone 命令验证 /etc/named.conf 文件的语法。
在此示例中,更改了缺省目录。
# echo 'options {directory "/var/named";};' > /etc/named.conf
# named-checkconf /etc/named.conf:1: change directory to '/var/named' failed: file not found /etc/named.conf:1: parsing failed
在此示例中,检查失败,因为 /var/named 目录尚未创建。
# mkdir /var/named
# svcadm restart svc:/network/dns/server:default