centos7分区怎么设置 (centos7设置主机名)

设置从DNS服务器

冗余对于确保在出现问题时仍可提供关键服务非常重要。 由于DNS是网络中最关键的组件之一,无论是私有内部网还是公共Internet,只有一个权威的DNS服务器是不明智的。 事实上,IANA的权威名称服务器技术要求文档指出,该区域必须至少有两个不同的权威名称服务器。 此配方向您展示如何配置第二个BIND安装以充当辅助权威服务器,该服务器在主/从配置中从主服务器接收其区域信息。 然后,任一服务器都可以满足查找请求,并将其视为权威响应.

准备

此配方需要两个CentOS系统,其BIND已按照之前的配方中的说明进行安装和配置。 使用配置BIND描述的网络作为权威DNS服务器配方。 此配方假定用作主站的系统配置为192.168.56.10,从站为192.168.56.20。 通过使用root帐户登录或使用sudo,还需要管理权限.

怎么做

请按照以下步骤将BIND配置为从主服务器接收其区域信息的辅助权威DNS服务器:

  • 在运行BIND的从属实例的系统上,打开named.conf并配置example.com。 区域如下:
zone "example.com." in {
 type slave;
 file "/var/named/slaves/example.com.fwd";
 masters { 192.168.56.10; };
 allow-transfer { none; };
 notify no;
};
  • 按如下方式配置其反向区域:
zone "56.168.192.in-addr.arpa." in {
 type slave;
 file "/var/named/slaves/example.com.rev";
 masters { 192.168.56.10; };
 allow-transfer { none; };
 notify no;
};
  • 保存更改并关闭文件。
  • 重新启动从站以使配置更改生效:
systemctl restart named.service
  • 在运行BIND主实例的系统上,打开named.conf。
  • 更新example.com。 区域的允许传输条目与从站的地址。 区域的配置应如下所示:
zone "example.com." in {
 type master;
 file "/var/named/zones/example.com.fwd";
 allow-transfer { 192.168.56.20; };
};
  • 对反向区域配置进行相同的更改:
zone "56.168.192.in-addr.arpa." in {
 type master;
 file "/var/named/zones/example.com.rev";
 allow-transfer { 192.168.56.20; };
};
  • 保存更改并关闭文件。
  • 重新启动主服务器以使配置更改生效:
systemctl restart named.service
  • 在从站上,使用dig测试配置以请求区域传输:
dig @192.168.56.10 example.com. AXFR

工作原理

当主要权威DNS服务器通知区域的记录已更改以及从属服务器维护的区域文件的副本根据SOA记录到期时,从属服务器请求区域传输。 在本文中,我们从两个运行BIND的系统开始,并编辑了它们的配置以允许传输。 我们开始以作为从站的系统为目标,配置我们之前使用过的前向和反向查找区域:

zone "example.com." in {
 type slave;
 file "/var/named/slaves/example.com.fwd";
 masters { 192.168.56.10; };
 allow-transfer { none; };
 notify no;
};
zone "56.168.192.in-addr.arpa." in {
 type slave;
 file "/var/named/slaves/example.com.rev";
 masters { 192.168.56.10; };
 allow-transfer { none; };
 notify no;
};

类型slave选项指示此服务器充当区域的辅助服务器。由于指定主站和从站是基于每个区域完成的,因此BIND的同一实例可能是一个区域的主站点和另一个区域的从站点。 masters选项提供主服务器的地址。

文件选项提供BIND将写入传输的区域信息的位置。组织不仅可以将传输的区域与系统上的任何主区域文件分开,而且对安全性也有好处。 BIND需要对目录具有写入权限才能保存传输的文件,但主区域文件对于除管理员(即root)之外的任何人都应该是只读的,以防止任何篡改。我们的配置将它们保存到/var/named/slaves,这是在我们安装bind包时创建的,并且已经具有相应的权限。

allow-transfers选项列出了允许此服务器响应区域传输请求的系统。为了保护自己免受可能的滥用,我们将值设置为none,这将禁止从辅助服务器进行传输。所有传输都将由主要权威DNS服务器提供服务,即使这样,它也只会将它们发送给从属服务器。

每次重新加载区域时,BIND都会向区域的NS记录中列出的辅助权威服务器发送通知。从属设备没有理由向其他辅助设备发送通知(如果您配置了多个从设备),因为它们已经被主设备通知,因此我们通过通知号码关闭了此行为。

但是,如果需要,可以使用also-notify选项将通知连同区域文件中列出的通知一起发送到其他服务器。如果您有其他辅助服务器,您不希望使用NS记录公开,或者您想要通知其他一些自动化过程,这将非常有用。只需通过通知提供您要通知的服务器的地址:

also-notify { 192.168.56.200; 192.168.68.200; };

要仅通知也通知而非辅助权威服务器中列出的那些服务器,请将notify设置为explicit:

also-notify { 192.168.56.200; 192.168.68.200; };
notify explicit;

接下来,我们更新了主站的配置,为从站的地址提供允许传输,以允许主站响应来自从站的区域传输请求:

zone "example.com." in {
 type master;
 file "/var/named/zones/example.com.fwd";
 allow-transfer { 192.168.56.20; };
};

在重新启动BIND以使我们的更改生效后,我们可以使用digto来测试配置,以便在从属系统上从主站请求区域传输:

dig @192.168.56.10 example.com. AXFR

注意

记得在更新区域配置时增加SOA记录中的序列号。 从站在更新其区域信息之前检查串行,如果值未更改,则不会更新它.

See also

Refer to the following resources for more information on configuring and working with zone transfers:

  • BIND 9 Administrator Reference Manual (http://www.isc.org/downloads/bind/doc/)
  • DNS for Rocket Scientists (http://www.zytrax.com/books/dns/)
  • Technical requirements for authoritative name servers (http://www.iana.org/help/nameserver-requirements)
  • How the AXFR protocol works (http://cr.yp.to/djbdns/axfr-notes.html)
  • A Pattern for DNS Architecture (http://www.allgoodbits.org/articles/view/5)
  • Securing an Internet Name Server (http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=52493)