安装与配置DNS

1.安装DNS BIND服务器。

[root@servera ~]# yum install bind -y

1.1 将BIND配置为域及其反向域的非递归、权威DNS服务器。缺省情况下,bind包为这些正向和反向查找配置区域和区域文件。但是,默认情况下,named只侦听loopback接口上的连接,所以你需要修改它的配置:

  • 让服务器侦听所有localhost和servera.pvt.example.com的IPv4和IPv6接口。
  • 允许从localhost和serverb.pvt.example.com(IP地址192.168.62.11和fc62:5265:6448:6174::b)主机查询。
  • 禁用递归。

由此产生的/etc/named.conf文件内容如下所示:

options {
        listen-on port 53 { 127.0.0.1; 192.168.62.10; };
        listen-on-v6 port 53 { ::1; fc62:5265:6448:6174::a; };
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";
        statistics-file "/var/named/data/named_stats.txt";
        memstatistics-file "/var/named/data/named_mem_stats.txt";
        secroots-file   "/var/named/data/named.secroots";
        recursing-file  "/var/named/data/named.recursing";
        allow-query     { localhost; 192.168.62.11; fc62:5265:6448:6174::b; };
        
        recursion no;

        dnssec-enable yes;
        dnssec-validation yes;

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";

        /* https://fedoraproject.org/wiki/Changes/CryptoPolicy */
        include "/etc/crypto-policies/back-ends/bind.config";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

zone "." IN {
        type hint;
        file "named.ca";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

1.2 将dns服务添加到防火墙策略中,然后启动named服务。

[root@servera ~]# firewall-cmd --permanent --add-service=dns
[root@servera ~]# firewall-cmd --reload
[root@servera ~]# firewall-cmd --list-all | grep service
  services: cockpit dhcpv6-client dns ssh
[root@servera ~]# systemctl enable --now named.service

1.3 确认serverb从servera获得有效的DNS响应,IP地址用于正和反向本地主机查找,servera.pvt.example.com作为测试时要查询的dns主机。

[root@servera ~]# host localhost.localdomain 192.168.62.10
Using domain server:
Name: 192.168.62.10
Address: 192.168.62.10#53
Aliases: 

localhost.localdomain has address 127.0.0.1
localhost.localdomain has IPv6 address ::1

1.4 完成cr-network/files/zones目录中提供的部分区域文件,然后将其安装到servera上的/var/named目录中。

/var/named/pvt.example.com.zone正常查找区域文件应具有以下内容:

[root@servera ~]# rpm -qc bind
/var/named/named.localhost
/var/named/named.loopback

[root@servera ~]# cp /var/named/named.localhost /var/named/pvt.example.com.zone
[root@servera ~]# vim /var/named/pvt.example.com.zone
$TTL 1D
@	IN SOA	servera.pvt.example.com. dnslab.example.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	600	IN	NS	servera
servera	IN	A	192.168.62.10
serverb	IN	A	192.168.62.11
serverc	IN	A	192.168.62.12
serverd	IN	A	192.168.62.13

servera	IN	AAAA	fc62:5265:6448:6174::a
serverb	IN	AAAA	fc62:5265:6448:6174::b
serverc	IN	AAAA	fc62:5265:6448:6174::c
serverd	IN	AAAA	fc62:5265:6448:6174::d

/var/named/192.168.62.zone的IPv4反向查找区域文件应具有以下内容:

[root@servera ~]# rpm -qc bind
/var/named/named.localhost
/var/named/named.loopback

[root@servera ~]# cp /var/named/named.loopback /var/named/192.168.62.zone
[root@servera ~]# vim /var/named/192.168.62.zone
$TTL 1D
@	IN SOA	servera.pvt.example.com. dnslab.example.com. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	600	IN	NS	servera.pvt.example.com.
10	IN	PTR	servera.pvt.example.com.
11	IN	PTR	serverb.pvt.example.com.
12	IN	PTR	serverc.pvt.example.com.
13	IN	PTR	serverd.pvt.example.com.

/var/named/fc62.5265.6448.6174.zone的IPv6反向查找区域文件应具有以下内容:

[root@servera ~]# cp /var/named/192.168.62.zone /var/named/fc62.5265.6448.6174.zone
$TTL 1D
@       IN SOA  servera.pvt.example.com. dnslab.example.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        600     IN      NS      servera.pvt.example.com.
A.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN      PTR     servera.pvt.example.com.
B.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN      PTR     serverb.pvt.example.com.
C.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN      PTR     serverc.pvt.example.com.
D.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN      PTR     serverd.pvt.example.com.

1.5 配置区域文件的权限,使BIND可以读取但不能修改它们:

[root@servera ~]# chgrp named /var/named/*.zone
[root@servera ~]# chmod 640 /var/named/*.zone
[root@servera ~]# ls -l /var/named/*.zone
-rw-r-----. 1 root named 327 May 21 16:23 /var/named/192.168.62.zone
-rw-r-----. 1 root named 443 May 21 16:35 /var/named/fc62.5265.6448.6174.zone
-rw-r-----. 1 root named 435 May 21 16:20 /var/named/pvt.example.com.zone

1.6 在BIND中配置新的区域文件。完成cr-network/files/bind目录中的named.pvt.conf文件,然后将其安装到servera的/etc/目录中。

[student@workstation]$ vim /home/student/cr-network/files/bind/named.pvt.conf

zone "pvt.example.com" IN {
  type master;
  file "pvt.example.com.zone";
  forwarders {};
};

zone "62.168.192.in-addr.arpa" IN {
  type master;
  file "192.168.62.zone";
  forwarders {};
};

zone "4.7.1.6.8.4.4.6.5.6.2.5.2.6.C.F.ip6.arpa" IN {
  type master;
  file "fc62.5265.6448.6174.zone";
  forwarders {};
};

[student@workstation ~]$ scp /home/student/cr-network/files/bind/named.pvt.conf root@servera:/etc/
Warning: Permanently added 'servera' (ECDSA) to the list of known hosts.
named.pvt.conf  

[root@servera ~]# ls /etc/named.pvt.conf 
/etc/named.pvt.conf

1.7 配置文件权限,使BIND可以读取但不能修改:

[root@servera ~]# chgrp named /etc/named.pvt.conf 
[root@servera ~]# chmod 640 /etc/named.pvt.conf 
[root@servera ~]# ls -l /etc/named.pvt.conf 
-rw-r-----. 1 root named 307 May 21 16:48 /etc/named.pvt.conf

1.8 修改/etc/named.conf,使其包含pvt.example.com区域的配置文件。生成的文件应该以以下内容:

[root@servera ~]# vim /etc/named.conf
...output omitted...
include "/etc/named.pvt.conf";

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";

1.9 重新启动named服务。

[root@servera ~]# systemctl restart named

1.10 确认servera回答serverb的pvt.example.com的正向和反向查询,而不是其他主机。测试时显示指定servera.pvt.example.com的IP地址作为要查询的DNS主机。

2.将serverb配置为缓存的dns名称服务器。从servera获取pvt.example.com的应答,但查询其他域的bastion.lab.example.com。缓存名称服务器只能在其环回和组网络接口上侦听 DNS 查询。仅允许 pvt.example.com 主机和 localhost 执行 DNS 查询。

2.1 安装unbound软件包。

[root@serverb ~]# yum install unbound -y

2.2 编辑 /etc/unbound/unbound.conf 中的 server 子句以配置 unbound,如下所示:

  • 监听 192.168.62.11 和 fc62:5265:6448:6174:b 接口。
  • 允许来自 192.168.62.0/24 和 fc62: 5265:6448:6174::/64 子网的查询。
  • 从 DNSSEC 验证中移除 example.com 区域。
  • 将所有正向和反向 pvt.example.com 查询转发到 192.168.62.10。
  • 将所有其他查找转发到 172. 25. 250. 254。

生成的文件应包含以下指令:

[root@serverb ~]# vim /etc/unbound/unbound.conf

server:
...output omitted...
        interface: 192.168.62.11
        interface: fc62:5265:6448:6174::b
...output omitted...
		access-control: 192.168.62.0/24 allow
		access-control: fc62:5265:6448:6174::/64 allow
...output omitted...
		domain-insecure: "example.com"
        domain-insecure: "62.168.192.in-addr.arpa."
        domain-insecure: "4.7.1.6.8.4.4.6.5.6.2.5.2.6.c.f.ip6.arpa"
...output omitted...
        local-zone: "25.172.in-addr.arpa." nodefault
        local-zone: "62.168.192.in-addr.arpa." nodefault
        local-zone: "4.7.1.6.8.4.4.6.5.6.2.5.2.6.c.f.ip6.arpa." nodefault
...output omitted...
stub-zone:
        name: "pvt.example.com"
        stub-addr: 192.168.62.10
        stub-addr: fc62:5265:6448:6174::a

stub-zone:
        name: "62.168.192.in-addr.arpa."
        stub-addr: 192.168.62.10
        stub-addr: fc62:5265:6448:6174::a

stub-zone:
        name: "4.7.1.6.8.4.4.6.5.6.2.5.2.6.c.f.ip6.arpa"
        stub-addr: 192.168.62.10
        stub-addr: fc62:5265:6448:6174::a
...output omitted...
forward-zone:
        name: "."
        forward-addr: 172.25.250.254
...output omitted...

2.3 生成私钥和服务器证书。

[root@serverb ~]# unbound-control-setup

2.4 验证 Unbound 配置文件的语法。

[root@serverb ~]# unbound-checkconf

2.5 配置防火墙以允许 DNS 流量。

[root@serverb ~]# firewall-cmd --add-service=dns
[root@serverb ~]# firewall-cmd --add-service=dns --permanent

2.6 启动服务并设置开机自启。

[root@serverb ~]# systemctl enable --now unbound

2.7 确认 serverb.pvt.example.com 将回答来自 serverc.pvt.example.com 的正向和反向 DNS 查询。

[root@servera ~]# host serverb.pvt.example.com 192.168.62.10
Using domain server:
Name: 192.168.62.10
Address: 192.168.62.10#53
Aliases: 

serverb.pvt.example.com has address 192.168.62.11
serverb.pvt.example.com has IPv6 address fc62:5265:6448:6174::b
[root@servera ~]# host serverc.pvt.example.com 192.168.62.10
Using domain server:
Name: 192.168.62.10
Address: 192.168.62.10#53
Aliases: 

serverc.pvt.example.com has address 192.168.62.12
serverc.pvt.example.com has IPv6 address fc62:5265:6448:6174::c
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
安装配置DNS服务器涉及以下步骤: 步骤1:配置网络设置和主机名 修改mail从节点与DNS主节点的主机名。 步骤2:关闭防火墙与安全策略 为了方便测试,关闭防火墙与安全策略。 步骤3:安装DNS服务器 在两个节点上安装DNS服务器。 步骤4:启动DNS服务 在两个节点上启动DNS服务。 步骤5:修改主服务器DNS配置文件 在两个节点上修改主服务器DNS配置文件named.conf。 步骤6:配置正向解析与反向解析(主节点DNS) 创建转发域、编辑区域配置文件、添加区域配置信息。 步骤7:检查配置 检查DNS服务器的配置是否正确。 步骤8:添加/etc/resolv.conf域名服务器IP 将域名服务器的IP地址添加到/etc/resolv.conf文件中。 步骤9:测试DNS解析是否正常 通过测试DNS解析是否正常来验证配置的正确性。 以上是安装配置DNS服务器的一般步骤。根据您的操作系统和具体需求,可能会有一些差异。请根据您的具体情况参考相应的文档或教程来进行详细操作。 [3<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [DNS服务器的安装配置](https://blog.csdn.net/DM_LL/article/details/123621464)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [安装配置 DNS 服务器](https://blog.csdn.net/qian0626/article/details/113558165)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值