5154

Good Luck To You!

新装centos7dns配置

装CentOS7配置DNS需安装BIND,编辑配置文件,设置正向和反向解析

新装CentOS7的DNS配置

在CentOS7操作系统中,DNS(域名系统)的配置对于网络通信和域名解析至关重要,本文将详细介绍如何在新装的CentOS7系统中配置DNS,包括安装BIND软件、修改配置文件、设置防火墙规则以及测试配置等步骤。

安装BIND软件

需要安装BIND(Berkeley Internet Name Domain)服务,这是实现DNS解析的关键组件,为了进行DNS查询和测试,还需要安装bindutils包。

sudo yum install bind bindutils y

修改主配置文件

BIND的主配置文件位于/etc/named.conf,使用文本编辑器(如vi或nano)打开该文件,并进行必要的配置。

sudo vi /etc/named.conf

在配置文件中,找到并修改或添加以下关键配置项:

  • listenon port 53 { any; };:允许BIND在所有接口的53端口监听DNS请求。
  • allowquery { any; };:允许任何主机查询,根据实际需求,可以限制为特定IP地址或子网。
  • recursion yes;:启用递归查询,使DNS服务器能够查询其他DNS服务器以获取解析结果。
  • dnssecenable yes;dnssecvalidation yes;:启用DNSSEC(DNS安全扩展),增强DNS解析的安全性。

修改后的配置示例如下:

options {
    listenon port 53 { any; };
    directory       "/var/named";
    dumpfile       "/var/named/data/cache_dump.db";
    statisticsfile "/var/named/data/named_stats.txt";
    allowquery     { any; };
    recursion yes;
    dnssecenable yes;
    dnssecvalidation yes;
    bindkeysfile "/etc/named.root.key";
    managedkeysdirectory "/var/named/dynamic";
    pidfile "/run/named/named.pid";
    sessionkeyfile "/run/named/session.key";
};

保存并退出编辑器后,使用namedcheckconf命令检查配置文件的语法是否正确。

sudo namedcheckconf

配置正向和反向解析区域

配置正向解析区域

正向解析的作用是根据主机名(域名)查找到对应的IP地址,编辑区域配置文件/etc/named.rfc1912.zones,添加正向解析区域的配置。

新装centos7dns配置

sudo vi /etc/named.rfc1912.zones

在文件中添加以下内容(以example.com为例):

zone "example.com" IN {
    type master;
    file "forward.example.com";
    allowupdate { none; };
};

创建对应的区域数据文件/var/named/forward.example.com

sudo vi /var/named/forward.example.com

在文件中添加以下内容:

$TTL 86400
@   IN  SOA     ns1.example.com. admin.example.com. (
            2023101001  ; Serial
            3600        ; Refresh
            1800        ; Retry
            604800      ; Expire
            86400       ; Minimum TTL
)
    IN  NS      ns1.example.com.
    IN  A       192.168.1.100
ns1 IN  A       192.168.1.100
www IN  A       192.168.1.100

配置反向解析区域

反向解析的作用是根据IP地址查找到对应的主机名(域名),同样地,编辑/etc/named.rfc1912.zones文件,添加反向解析区域的配置。

sudo vi /etc/named.rfc1912.zones

在文件中添加以下内容(以192.168.1.x为例):

zone "1.168.192.inaddr.arpa" IN {
    type master;
    file "reverse.example.com";
    allowupdate { none; };
};

创建对应的区域数据文件/var/named/reverse.example.com

新装centos7dns配置

sudo vi /var/named/reverse.example.com

在文件中添加以下内容:

$TTL 86400
@   IN  SOA     ns1.example.com. admin.example.com. (
            2023101001  ; Serial
            3600        ; Refresh
            1800        ; Retry
            604800      ; Expire
            86400       ; Minimum TTL
)
    IN  NS      ns1.example.com.
    IN  PTR     ns1.example.com.
100 IN  PTR     www.example.com.

设置防火墙规则

为了允许DNS流量通过防火墙,需要开放TCP和UDP的53端口。

sudo firewallcmd permanent addport=53/tcp
sudo firewallcmd permanent addport=53/udp
sudo firewallcmd reload

启动并启用BIND服务

配置完成后,启动BIND服务并设置为开机自启。

sudo systemctl enable named
sudo systemctl start named

使用systemctl status named命令检查服务状态,确保其正在运行。

sudo systemctl status named

测试DNS解析

使用dignslookup命令测试正向和反向解析是否配置成功。

测试正向解析

dig @localhost www.example.com

如果配置正确,你应该能够看到www.example.com对应的IP地址。

新装centos7dns配置

测试反向解析

dig x @localhost 192.168.1.100

如果配置正确,你应该能够看到192.168.1.100对应的域名。

相关问题与解答

Q1:如何更改BIND监听的端口号?

A1:可以通过修改BIND的主配置文件/etc/named.conf中的listenon port 53 { any; };行,将端口号53改为你想要的端口号(例如5353),然后重新启动BIND服务即可,但请注意,更改端口号后,防火墙规则也需要相应调整。

Q2:如何配置BIND只对特定IP地址或子网进行响应?

A2:可以通过修改BIND的主配置文件/etc/named.conf中的allowquery { any; };行,将any改为特定的IP地址或子网(例如168.1.0/24),然后重新启动BIND服务即可,这样,BIND只会对来自该子网的查询进行响应,增强了安全性

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年8月    »
123
45678910
11121314151617
18192021222324
25262728293031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.