实现要求
部署DNS缓存和主从服务器,使得内网用户将DNS分别指向内网和外网的网站.
基本过程
- 0. 安装BIND服务
- 1. 编辑BIND主配置文件
- 2. 编辑子配置文件(区域配置文件)
- 3. 编辑正向解析配置文件
- 4. 重启named服务,并加入开机启动项
- 5. 搭建内网web服务.
- 6. 在关闭防火墙和Selinux的情况下检验成果
- 7. 最后在配置从服务DNS和DNS缓存后,检验能否继续访问内网和外网
基础知识点
(1)监听端口:
TCP/UDP 53号端口
(2)A记录
通俗来说A记录就是服务器的IP,域名绑定A记录就是告诉DNS,当输入域名的时候给你引导向设置在DNS的A记录所对应的服务器。
(3)MX记录
邮件交换记录 (MX record)是域名系统(DNS)中的一种资源记录类型,用于指定负责处理发往收件人域名的邮件服务器。
(4)主配置文件(/etc/named.conf)
定义bind服务程序的运行,例如开放哪个接口的53号端口用于监听用户的请求,对于哪些用户的请求予以回
复等内容。
(5)区域配置文件(/etc/named.rfc1912.zones)
用来保存域名和IP地址对应关系的所在位置。(调用数据配置文件)
(6)数据配置文件(/var/named)
该目录用来保存域名和IP地址真实对应关系的数据配置文件。
准备工作:
准备三台Centos7系统和一台win系统的虚拟机(centos7虚拟机恢复至"自动挂载镜像"快照)
防火墙关闭 命令:systemctl stop firewalld
SElinux关闭 命令:setenforce 0
(1)大致设备信息如下图标示
(2)客户端ping 主/从DNS服务器:
(3)Apache服务器 ping 主/从DNS服务器:
安装配置主BIND服务
(1)安装BIND服务,键入下方命令安装.
yum -y install bind-chroot.x86_64
(2)DNS采用的UDP协议,监听53号端口,进一步检验named工作是否正常:
iptables -L -n |grep 53
主配置文件修改
(1)将主配置文件(/etc/named.conf)的第13行和第19行的地址均修改为any,同时也在22行加上第三方DNS114.114.114.114作为代解析使用.
vim /etc/named.conf #编辑named.conf配置文件
(2)接下来将第64行的语句注释掉,/etc/named.root.key是安全密码
(3)配置完毕,键入命令检查配置文件是否出错.
systemctl restart named #重启named服务 named-checkconf #检查配置文件
主区域配置文件修改
(1)进入编辑区域配置文件
vim /etc/named.rfc1912.zones #编辑域配置文件
(2)添加下列配置,同时也配置记录同步从服务器.
zone "good.cn" IN { type master; //服务类型为主服务器(干活的),相对而言有slave(备胎) file "good-zone"; //针对名为 good.cn的zone,域名和IP解析规则保存的文件名(good-zone),可以任意命名 allow-update { 192.168.28.11; }; //同步给slave服务器 192.168.28.11 }; //----结束符
主服务配置正向解析
(1)复制一份正向解析的模板文件named.localhost,然后把域名和IP地址的对应数据填写数据配置文件中并保存。
注意:该模板文件的所有者是root,所属组是named,权限是640
cd /var/named/ #进入配置文件目录 cp -a named.localhost good-zone #复制一份正向解析的模板文件,-a为保持源文件属性
(2)编辑good-zone文件,记得ip指向Apache服务器IP地址192.168.28.20
vim /var/named/good-zone
编辑内容:
(3)重启named服务
systemctl restart named
(4)配置完毕后,使用下列命令分别查看两个配置文件是否生效
named-checkzone www.good.cn /var/named/good-zone
(5)如果重启命令如果输入后有报错信息,请自行键入下列命令开始排错(下图为正常)
named-checkconf -z /etc/named.conf
安装配置从BIND服务
(1)安装BIND服务,键入下方命令安装.
yum -y install bind-chroot.x86_64
(2)DNS采用的UDP协议,监听53号端口,进一步检验named工作是否正常:
iptables -L -n |grep 53
修改从服务器的区域配置文件
(1)在从服务器上的主配置文件/etc/named.conf进行修改,并添加代解析DNS114.114.114.114(服务器使用第二台centos系统)
vim /etc/named.conf
(2)接下来将第64行的语句注释掉,/etc/named.root.key是安全密码
(3)修改从服务器的区域配置文件
vim /etc/named.rfc1912.zones
zone "good.cn" IN { type slave; //服务类型为主服务器(干活的),相对而言有slave(备胎) file "slaves/good-zone"; //针对名为 good.cn的zone,域名和IP解析规则保存的文件名(good-zone),可以任意命名 masterfile-format text; masters {192.168.28.10;}; }; //----结束符
(4)重启主/从服务器的named服务,并且关闭防火墙.(不报错即为ok)
systemctl restart named systemctl stop firewalld
(5)在从服务器上查询已经在自动同步主服务器的DNS记录.
cd /var/named/slaves cat good-zone
安装配置Apache服务
(1)内网Apache服务我们准备第三台centos系统,全新的linux系统来做web网站服务器.
ip为192.168.28.20,域名为www.good.cn
(2)安装httpd服务.
yum -y install httpd
(3)启动httpd服务,默认未启动.
systemctl start httpd
(4)查看httpd服务状态(active(running)说明服务状态正常启动)
systemctl status httpd
(5)加入开机启动项,默认不加入..
systemctl enable httpd
查看命令:
systemctl is-enabled httpd
看到会显为enabled.
上传网站源码
(1)在/var/www/html/目录下新建good文件夹作为www.good.cn的站点.
cd /var/www/html/ mkdir good
(2)上传web源码到good文件夹.
cd /var/www/html/good #进入目录 rz #xshell自带的上传文件命令
(3)编辑主配置文件httpd.conf(在113行左右空白处添加)
vim /etc/httpd/conf/httpd.conf #编辑httpd配置文件 ========下面代码为虚拟主机基于域名的站点配置=========== <VirtualHost 192.168.28.20> DocumentRoot /var/www/html/good #用户访问www.good.cn的时候,示推送的是/var/www/html/good内容 ServerName www.good.cn <Directory /var/www/html/good> AllowOverride None Require all granted </directory> </VirtualHost>
(4)修改好配置后都要重启httpd服务.
systemctl restart httpd.service #重启
检验结果
(1)客户端追踪内网网站域名www.good.cn的DNS记录:
nslookup www.good.cn
(2)客户端追踪外网网站www.mainblog.cn的DNS记录:
nslookup www.mainblog.cn
(3)客户端浏览器访问www.baidu.cn(这条记录是不在我们主从服务器上的,要寻求114帮忙):
httpd服务常用命令
(1)启动、终止、重启
systemctl start httpd.service #启动 systemctl stop httpd.service #停止 systemctl restart httpd.service #重启
(2)设置开机启动/关闭
systemctl enable httpd.service #开机启动 systemctl disable httpd.service #开机不启动
(3)检查httpd状态
systemctl status httpd.service
常用系统服务命令
(1)Windows查看当前终端的DNS
ipconfig/all nslookup //查看当前终端对于某个域名解析的IP地址
(2)Linux系统nslookup和ping均可用于查看DNS
dig
常用named服务命令
systemctl start named #启动named服务 systemctl restart named #重启named服务
附件
附件为个人打包好的VM虚拟机centos7.7镜像,内附两个快照.需要的可以自行下载解压加载到虚拟机即可.
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。