2012-06-06 67 views
0

我有一个OS X 10.6服务器运行,其上运行PHP,Apache,MySQL和DNS。我想将DNS管理从服务器管理应用程序中取出。我知道DNS配置文件(BIND使用的那些文件)是纯文本文件(显然它必须遵守一些规则)。OS X服务器DNS管理

造成这种情况的主要原因是因为我想为我的某个域设置DKIM,并且我必须将TXT记录添加到子域pm._domainkey.example.com。由于“无效”下划线字符,服务器管理员不允许我添加该子域。

我搜索了基于Web的DNS管理工具(我将安装在我的服务器上并允许我管理DNS记录的工具),但找不到任何好的。 (我设法安装了一对,但他们没有看到我已经在Server Admin中设置的配置)。现在我正在直接编辑配置文件,但我不知道它们的位置。

这是一个测试/开发服务器,所以搞砸它不会是这样的灾难。我知道“我不应该这样做”,但我想:)。

感谢您的帮助。

回答

0

您不需要停止使用服务器管理来管理DNS,只需在其后面添加它无法处理的记录即可。这是可能的,因为在OS X Server v10.6中,每个DNS区域的内容实际上存储为两个单独的文件:/var/named/zones/db.zonename.zone.apple具有所有Server Admin管理的内容,而/ var /named/db.zonename。只有一个注释和一个包含指令来引入.zone.apple文件。由于服务器管理员只查看&更改.zone.apple文件,因此您可以将所需的任何资源记录添加到第二个文件 - 它们将被服务器管理员忽略,但由DNS服务提供服务。

1

我不确定Apple是否在现代版本的OSX Server中更改了这些设置,但在我的旧版本 10.5.8服务器中,BIND配置的起点是文件/etc/named.conf

从这个文件您可以看到诸如include "/etc/dns/options.conf.apple";这样的行,告诉你可以在/etc/dns/目录中找到其他内容。

我没有在我的OSX Server 1.5.8机器上配置任何DNS,但我怀疑你所做的任何事情都需要包含在/etc/named.conf中,或者包含它包含的东西。

请确保在您开始直接编辑文本文件后,不要尝试使用GUI工具修改您的配置。

您可能还想研究像subversion或git(或heck,甚至是RCS)的版本控制系统来跟踪您所做的更新。它可以更容易地查看您的历史记录,追踪错误以及从意外的GUI配置覆盖中恢复!

另一件事。尽管OSX的配置工具可能不会让您将下划线放入主机名中,但它可能会让您将其放入子域中?我还没有尝试,但你可能想看看它是否允许你设置一个新的域名_domainkey.example.com,在这个域名下你将拥有像pm这样的主机。验证主机名的例程可能与验证子域的不同。我不知道这是否可行,但值得尝试。