在 Windows 上安装 BIND

本页面将指导您首次在 Windows 系统上安装 BIND。如果您要从一个版本升级到另一个版本(例如从 9.16.7 升级到 9.16.9),请阅读升级指南

步骤 1:安装 Microsoft Windows Server

本指南假设您已成功安装并运行 Microsoft Windows Server。文中的说明和屏幕截图均基于带有图形用户界面的 Windows Server 2019 标准版,但其他版本也应类似。

本文不涉及 Windows Server 的安装,但简而言之,标准的 Windows Server 安装即可。无需添加任何角色或功能,BIND 的安装过程会自动处理所有依赖项,例如 Visual C++ 运行时库。

请确保您的 Windows 服务器已完全打好补丁并保持最新状态,然后继续执行步骤 2。

步骤 2:下载适用于 Windows 的 BIND

请从这里下载最新版本的 Windows 版 BIND: https: //www.isc.org/download/

向下滚动页面,点击BIND 9。然后点击最新稳定版旁边的蓝色“下载”按钮。此时会弹出一个窗口,其中一个选项是BIND9.{版本号}.zip – win 64-bit 。这就是你需要的版本。通常情况下,你应该选择标记为“稳定版”的版本。我不建议在生产服务器上运行开发版。

我强烈建议您使用WinMD5之类的工具来验证您下载文件的签名。这样可以确保您下载的是正版文件,并且您的下载没有被拦截。

下载完压缩文件后,您需要解除阻止。否则,Windows 将不允许运行该可执行文件,这会导致在安装和运行 BIND 时出现各种意外错误。找到下载的文件,右键单击并选择“属性”,然后勾选“解除阻止”复选框(如下图所示),最后单击“确定”

完成上述步骤后,您可以右键单击下载的 zip 文件,像往常一样将其解压缩。目前只需将其解压缩到临时文件夹即可,安装程序会自动创建 BIND 实际安装的文件夹。

步骤 3:首次安装 BIND

现在您可以开始安装 BIND 了。从您解压 zip 文件的文件夹中运行BINDInstall.exe。您将看到以下安装配置小程序:

请注意,如果您使用除内置本地管理员帐户之外的其他帐户登录,安装小程序可能无法创建您希望用于ISC BIND服务的用户帐户。即使您的用户帐户是本地管理员组的成员,即使您右键单击并选择“以管理员身份运行”,也仍然无法正常工作。因此,您可能需要使用内置本地管理员帐户登录后执行下一步操作。

将目标目录设置为您希望安装 BIND 的位置。没有“浏览…”按钮,如果您对建议的默认目录不满意,则需要覆盖它。该文件夹无需预先存在,安装程序会在必要时创建它。

请注意,本指南的其余部分假定安装文件夹为C:\BIND。这样在配置文件中指定路径或从命令行运行工具时会方便得多。

接下来,确定您要使用的“服务帐户名称”。这是ISC BIND服务运行所使用的用户帐户。切勿在此处输入“Administrator”这样做非常危险,因为这意味着如果有人成功利用您的 BIND 实例,他们将拥有对您的 Windows 服务器的完全控制权。请为该服务选择一个唯一的用户名,并设置一个足够安全的密码。与目标目录一样,该用户名无需预先存在。安装程序将使用指定的密码创建用户帐户,并授予其相应的“作为服务登录”权限。

勾选“自动启动”(这样ISC BIND服务会在服务器启动时自动启动),并且我建议同时勾选“卸载后保留配置文件”。这样,如果您因任何原因需要卸载/重新安装 BIND,就能确保您的配置文件不会被修改。

我建议不要勾选“安装后启动 BIND 服务”,因为我们需要先更新配置文件,以便 BIND 知道它在做什么!

点击“安装”,安装程序将开始安装过程。

如果您没有安装Microsoft Visual C++ 2017 运行时(您为什么要安装呢?!),那么安装程序将为您安装它。

如果一切顺利,您将收到相应的成功消息:

如果您切换到使用内置的管理员帐户,那么现在可以注销并以普通用户帐户重新登录。

步骤 4:允许 BIND 通过防火墙

BIND 默认监听UDP 端口 53TCP 端口 53。很多人误以为 DNS 查询和响应仅通过 UDP 进行,这是错误的。任何超过 512 字节的 DNS 查询或响应都会通过 TCP 发送,包括大量的 DNS TXT 记录响应(尤其是 SPF 记录)。当然,DNS over HTTPS 和 DNSSEC 也完全通过 TCP 进行(前者使用 TCP 端口 443)。

因此,请确保允许 UDP 和 TCP 53 端口的入站连接,并允许 BIND/named 使用任何端口建立出站连接。

Infoblox 有一篇很棒的文章,讨论了 BIND 对 UDP 和 TCP 的使用,点击此处查看。

步骤 5:将 BIND 添加到您的路径

您需要通过命令行控制 BIND 的某些功能,因此将 BIND 安装目录添加到 PATH 环境变量中会方便很多。BIND 的所有命令行实用程序都存储在安装文件夹的bin 子文件夹中。

  • 右键单击“此电脑”,然后选择“属性”。

  • 点击“高级系统设置”,然后点击“环境变量”……

  • 点击底部窗口中的“路径” ,然后点击“编辑…”

  • 点击“浏览…”并导航至安装文件夹的bin 子文件夹,然后点击“确定”。

  • 点击“确定”“确定”“确定”

步骤 6:设置正确的文件系统权限

我们需要授予服务帐户对 BIND 安装文件夹的修改写入权限。否则,BIND 服务将无法写入日志文件、更新配置文件(例如动态 DNS 更新)或维护自身的缓存。

  • 右键单击 BIND 安装文件夹,转到“属性” > “安全” > “编辑…”

  • 点击“添加…”

  • 输入您在安装过程中指定的服务帐户名称

  • 点击“检查名称”(确保账户已被识别),然后点击“确定”。

  • 勾选“允许修改”“允许写入”复选框

  • 无需完全控制(而且,出于安全考虑,不应授予完全控制权)

  • 点击“确定” ,然后再点击“确定” 。

步骤 7:配置 BIND

您在此处采取的步骤取决于您是设置仅用于缓存的名称服务器(例如,您使用此服务器为局域网内的客户端提供 DNS 解析),还是使用此服务器作为一个或多个域名(在 DNS 术语中称为“区域”)的权威服务器。请根据您的预期用途参阅以下指南之一: