已编辑 3 几周前 通过 ExtremeHow 编辑团队
Debian域名系统绑定网络服务器设置Linux开源系统管理命令行界面信息技术
翻译更新 3 几周前
DNS,即域名系统,通常被称为互联网的电话簿。它将人类友好的域名(如www.example.com)翻译成计算机用来在网络上识别彼此的IP地址(如192.0.2.1)。BIND,即伯克利互联网域名,是使用最广泛的DNS服务器之一,在类似Unix的系统如Debian中尤其重要。
在本指南中,我们将介绍在基于Debian的系统上安装和配置BIND DNS服务器所需的步骤。我们将涵盖安装过程、基本配置以及设置可靠DNS服务器所需的一些基本任务。
在您能够在Debian服务器上安装BIND之前,您将需要以下条件:
BIND在默认的Debian存储库中可用,因此您可以使用包管理器apt来安装它。按照以下步骤在系统上安装BIND。
sudo apt update
sudo apt install bind9 bind9utils bind9-doc -y
bind9utils
包包含了一些用于与DNS服务器交互的有用命令行工具,而bind9-doc
包含了您可能会发现有用的文档。
成功安装BIND后,您需要配置它以作为您的DNS服务器工作。BIND的配置文件通常位于/etc/bind
目录中。
named.conf.options
文件包含全局DNS选项。使用文本编辑器打开此文件:
sudo nano /etc/bind/named.conf.options
在此文件中,您将找到一个名为options的部分。在options { }
块中,您需要定义一些关键设置:
any
。any
。这是一个示例配置:
options { directory "/var/cache/bind"; forwarders { 8.8.8.8; 8.8.4.4; }; listen-on-v6 { any; }; allow-query { any; }; };
在域名系统中,区域是DNS数据库的一个子集。典型的BIND设置涉及定义您希望管理或服务的区域。您可以在named.conf.local
文件中定义这些。
打开named.conf.local
文件:
sudo nano /etc/bind/named.conf.local
在这个文件中,您将配置一个正向查找区域(名称到IP)和一个反向查找区域(IP到名称)。这是两个示例:
zone "example.com" { type master; file "/etc/bind/zones/db.example.com"; }; zone "1.168.192.in-addr.arpa" { type master; file "/etc/bind/zones/db.192"; };
在此设置中:
example.com
的正向查找区域存储该域名的DNS记录。1.168.192.in-addr.arpa
将192.168.1.xxx范围内的IP地址转换为域名。一旦您在配置文件中设置了区域,就该在区域文件中创建实际的DNS记录。
为您的区域文件创建一个目录:
sudo mkdir /etc/bind/zones
现在,为您的正向查找区域创建一个区域文件:
sudo nano /etc/bind/zones/db.example.com
这是一个正向查找区域文件的示例。根据您的域和IP设置调整详细信息:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. ns1 IN A 192.168.1.1 www IN A 192.168.1.2 ;
接下来,为您的反向查找创建一个区域文件:
sudo nano /etc/bind/zones/db.192
这是一个反向查找区域配置的示例:
$TTL 604800 @ IN SOA ns1.example.com. admin.example.com. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns1.example.com. 1 IN PTR ns1.example.com. 2 IN PTR www.example.com.
在修改配置和创建区域文件后,检查语法是否正确非常重要,然后重新启动BIND服务器:
sudo named-checkconf
还要验证区域文件:
sudo named-checkzone example.com /etc/bind/zones/db.example.com
如果上述命令无错误返回,则您的配置文件设置正确。
配置完成后,启动BIND服务并确保它在每次系统重启时运行:
sudo systemctl restart bind9
sudo systemctl enable bind9
最后,测试您的DNS服务器以确保它能够正确解析查询。使用dig
命令查询您的DNS服务器。确保您的服务器的IP地址或“localhost”被指定为服务器:
dig @localhost example.com
此命令应返回配置域的A记录。您还可以测试反向查找:
dig @localhost -x 192.168.1.1
通过遵循这些步骤,您在基于Debian的系统上安装并配置了一个功能正常的BIND DNS服务器。这个服务器现在可以解析和服务您所配置的域名和IP的DNS查询。
请记住,BIND DNS服务器可以扩展以包括更多高级配置,如缓存策略、访问控制和用于大规模部署的更复杂区域设置。
如果你发现文章内容有误, 您可以