Centos7搭建DNS(bind)服务器,配置域名泛解析记录

Centos7搭建DNS并配置域名泛解析记录

  • 1、前言和环境准备
    • 1.1、 环境准备
    • 1.2、 Nginx环境搭建
  • 2、DNS环境搭建---bind模块
  • 3、配置域名泛解析
  • 4、域名检验

1、前言和环境准备

前言就是没钱买域名,学习成本较大(穷批哭死),再加上windows个人版的上的hosts文件不支持域名泛解析和多租户的域名解析,windows server环境又需要秘钥提供不支持长期学习,所以出一篇文章记录一下。

1.1、 环境准备

客户机:windows个人环境即可
服务器:两台nginx服务器(centos7)、一台纯净版的Centos7用于安装DNS
软件:nginx和vmware,nginx搭在linux里,虚拟机用的vm,其他vbox也可,或者docker环境更加简便

1.2、 Nginx环境搭建

见专栏nginx部分即可
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第1张图片
再用xshell连接上去即可

2、DNS环境搭建—bind模块

2.1 安装bind模块依赖

yum -y install bind  bind-chroot

安装好后,会在系统中配置一个named用户,这个先记着
然后再看下vm配置的虚拟网卡的网段
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第2张图片
我这里是192.168.153.0/24,网关是192.168.153.2
2.2 配置基本的配置文件named.conf

 vim  /etc/named.conf

Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第3张图片

第13行,修改成本机DNS的服务器地址,这个地址就是其他服务器包括客户机中配置的地址,需要记住
第21行,为支持泛解析,配置成子网的网段

2.3 配置正向解析文件和逆向解析文件

 vim  /etc/named.rfc1912.zones

Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第4张图片
正向规则:

zone "sange.com" IN {    # zone后面跟着根域名
        type master;
        file "/var/named/dns_named/conf/sange.conf"; # file里面跟着正向配置文件地址
        allow-update { none; };
};

逆向规则:

zone "153.168.192.in-addr.arpa" IN {  # 153.168.192为网段的写法
        type master;
        file "/var/named/dns_named/conf/sange.txt"; # file里面跟着逆向配置文件地址
        allow-update { none; };
};

配置DNS服务器的静态IP
DNS的地址一般都是固定的,所以接下来配置DNS这台主机的静态IP

# ifcfg-ens33这里是根据自己的ifconfig网卡判断的,大部分centos7都是这个网卡
vim /etc/sysconfig/network-scripts/ifcfg-ens33

配置详情如图:
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第5张图片
配置防火墙出入规则
DNS服务占用53端口,配置如下
可以选择关闭防火墙

systemctl stop firewalld 
systemctl disable firewalld 关闭防火墙自启
systemctl enable firewalld 开启防火墙自启
systemctl restart firewalld 重启防火墙

或者配置进出规则

firewall-cmd --zone=public --add-port=53/tcp --permanent
firewall-cmd --zone=public --add-port=53/udp --permanent
firewall-cmd --reload 重启防火墙 || systemctl restart firewalld 重启防火墙
firewall-cmd --list-all 查看防火墙配置、出入规则

3、配置域名泛解析

到我们的/var/named目录下,其中新建一个正反规则file属性值的目录结构

cd /var/named
mkdir -p dns_named/conf

Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第6张图片
查看named.empty文件,这是named服务提供的一套正反规则配置文件模板,我们复制该文件进入./dns_named/conf/下,其中注意复制过去需要一样的权限和属性

## 注意复制过去需要保持和 /etc/named.rfc1912.zones 中的配置一样
cp -p named.empty ./dns_named/conf/sange.conf
cp -p named.empty ./dns_named/conf/sange.txt

3.1、配置正反向规则文件
如下配置即可
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第7张图片
同理,逆向规则如下:
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第8张图片
第一列表示网段号差值IP,第三列表示逆向解析到的主机域名
3.2、配置客户机和Nginx服务器DNS
同理配置两台nginx的ifcfg-en33文件,加上DNS2=192.168.153.3
Windows主机这里这样配置即可
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第9张图片这时ping一下看看
Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第10张图片Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第11张图片
成功

4、域名检验

解析校验成功后,我们配置nginx的反向代理,就拿百度的网址举例,我们到153.168那台sange.com根域名上配置一下

vim /usr/local/nginx/conf/nginx.conf

Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第12张图片
然后重新加载nginx,这时我们去windows客户机上去加载sange.com网页

Centos7搭建DNS(bind)服务器,配置域名泛解析记录_第13张图片配置成功

你可能感兴趣的:(运维,服务器,linux,运维)