Skip to main content

moregeek program

#yyds干货盘点# web安全day5:DNS部署与安全-多极客编程

所有网站都是部署在网络中的具体某个服务器上的,我们通常在浏览器的地址栏中输入网站的网址来访问这个网站,网址的格式类似于www.xxxx.com,那么我们的浏览器是如何知道这个网址对应了网络中的哪一台服务器呢?

我们知道,在网络中,一般用ip地址来标识一台设备的位置,那么网址和ip之间一定有某种对应关系,才得以让我们不用记住复杂的ip地址而仅仅使用某个朗朗上口的网址就能访问到它。这个对应关系实际是就是网络中的dns服务器来帮助我们完成的。

今天我们就来了解以下DNS的前世今生,部署方式以及它遇到的安全问题。


1、DNS的作用

DNS全称Domain Name Service,域名服务。作用是为客户机提供域名解析服务。

2、域名组成

2.1、概述

如“www.51cto.com.cn”是一个域名,从严格意义上来讲,“51cto.com.cn”才被称为域名,这个域名是全球唯一的,而“www”是主机名。

“主机名.域名“称为完全限定域名(FQDN).一个域名下可以有多个主机,域名全球唯一,那么”主机名.域名“肯定也是全球唯一的。

以”51cto.com.cn“域名为例,一般管理员在命名其主机的时候会根据其主机的功能而命名,比如网站的是www,博客的是blog,论坛的是bbs,难么对应的FQDN为www.51cto.com.cn,blog.51cto.com.cn,bbs.51cto.com.cn,这么多个FQDN,然而我们只需要申请一个域名即”51cto.com.cn“即可。

#yyds干货盘点# web安全day5:DNS部署与安全_服务器

2.2、域名组成

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_02顶级域名:

org:组织

com:公司

edu:教育机构

cn:国家

一级域名:

cctv:自定义

huawei:自定义

com:公司

二级域名:

mail:邮件

www:网页

tsinghua:自定义

三级域名:

mail:邮件

www:网页

3、监听端口

tcp53

udp53

4、dns解析种类

4.1、按照查询方式分类:

1)递归查询:客户机与本地DNS服务器之间

2)迭代查询:本地DNS服务器与根等其他DNS服务器的解析过程#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_03

我们可以看出,过程1和8是递归查询,2-7是迭代查询。

如何区分和判断递归查询和迭代查询这两个概念呢?我们可以从回复内容来进行分析,我们可以看到当我们本地的服务器去问根权威服务器的时候,根服务器并没有告诉我们答案,而是告诉我们应该去问谁。但是本地客户机去问本地的服务器的时候,本地服务器通过自己的努力,直接告诉了本地客户机答案。



这里可能有部分同学有疑问,为什么本地的域名服务器直接去找根域名服务器呢?而不是一级一级从下向上开始呢?这是因为我们本地服务器很难知道所有的下级域名服务器地址,而根域名服务器地址是比较容易知道的。


4.2、按照查询内容分类:

1)正向解析:已知域名,解析ip地址

2)反向解析:已知ip地址,解析域名

绝大多数是正向解析。


5、实验一:DNS服务器搭建

作为dns服务器,ip地址必须固定。我们将其设置为10.1.1.1/24.然后添加dns服务。#yyds干货盘点# web安全day5:DNS部署与安全_主机名_04


在管理工具中就可以找到DNS。


#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_05



我们可以通过netstat -an看到当前开启的服务端口情况。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_06

可以看到TCP和UDP的53号端口都已经开启,这是DNS服务必须要使用的。

我们继续对DNS进行配置,点开服务器,我们可以看到有事件查看器、正向查找区域、反向查找区域。我们之前已经了解过正向查找和反向查找的区别。那么我们现在希望根据某个网址查找到某个ip地址,我们应该使用正向查询。我们右键点击正向查找区域,新建一个区域。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_07


在区域类型中,提醒我们选择创建的区域类型,主要分为主要区域、辅助区域、存根区域。主要区域的作用是直接在服务器上更新的区域副本、辅助区域是当我们的主要区域出现故障而进行的冗余,存根区域的作用是创建根服务器,作为一个企业,我们显然不需要创建根服务器,在本实验中,我们选择主要区域。


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_08

区域名称我们以baidu.com为例,它的意义是告诉客户机,以后如果访问baidu.com就来找我,我是这个区域的权威服务器,我给的应答叫做权威应答。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_09

在我们的c盘中就会创建这样一个区域解析文件,文件的名字就叫做baidu.com.dns。我们可以在windows/system32/dns中找到它。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_10

在这里我们选择不允许动态更新,关于active directory我们后续还会讲到。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_11

最后我们确认一下我们的配置。我们创建了一个对于baidu.com的正向解析,它的配置保存在baidu.com.dns这个文件中。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_12


现在我们可以在我们的主界面看到我们这一条配置了。在右侧,记录了所有关于baidu.com的解析记录,可以发现已经存在两条了,一条的名称是与父文件夹相同表示没有主机名,我们还记得主机名指的是www\mail等信息,表示我们服务器的服务类型,类型是SOA,SOA的意思表示我们是baidu.com的权威服务器,所包含的数据是我们dns服务器的主机名和hostmaster.

一条是名称服务器(NS)。所有可以解析baidu.com的服务器都会在这里显示,目前只有我们自己是名称服务器。

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_13



我们接下来需要新建A记录,A记录也叫主机记录,是一条正向查询的记录。我们在右侧空白处右键新建主机

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_14

我们将主机名称定为www,下方的完全合格的域名会自动进行补全,然后为其填写一个ip地址,这表示如果访问www.baidu.com就去1.1.1.1.

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_15

现在在右侧就会多出一个新的类型为主机的数据。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_16



我们在另外一台客户机中验证一下。本实验中还使用了一台windowsxp的客户机,ip地址是10.1.1.2,我们需要将该客户机的dns服务器地址配置为我们的dns服务器,即10.1.1.1。

#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_17


在cmd中使用nslookup www.baidu.com来进行验证。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_18我们可以看到name为www.baidu.com的地址是1.1.1.1.说明解析成功了。另外我们也可以使用ping命令来进行验证,在cmd中使用ping www.baidu.com。

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_19虽然没有ping通,但是我们看到地址解析成功了。这代表我们的dns服务器运行正常。

我们继续在cmd中使用ping pan.baidu.com来验证能否解析成功百度网盘的地址。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_20我们发现并没有解析到pan.baidu.com的ip地址。这是因为我们并没有在dns服务器中添加这样一条记录。

我们可以在dns服务器中添加来进行验证。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_21


可以看到已经解析成功了。

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_22

接下来我们可以ping pan.baidu.com,如果还是没有办法解析到,需要我们刷新一下我们的缓存,因为windowxp刚刚没有解析到,所以缓存中记录到了无法解析的内容。这也说明,如果我们的客户机学习到一条假的解析记录导致无法上网,在很长一段时间内,都会无法自行恢复。

我们使用ipconfig /flushdns命令进行本地dns缓存刷新。

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_23

我们发现这时候可以解析到了。我们也可以使用ipconfig /displaydns来查看客户机本地缓存的dns解析记录。

#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_24

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_25


6、实验二:给DNS服务器定义名称

我们再回过头看一下我们之前对www.baidu.com的解析记录。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_18

可以发现有一句”cant find server name for address 10.1.1.1:timed out“。这是什么意思呢?其实我们在进行地址解析的时候,并不是一开始就向服务器去问www.baidu.com的ip地址是什么,而是先问服务器10.1.1.1你叫什么名字,这其实是反向解析的体现。如果连问三遍都没有回应,那么就会显示server:unknown。这并不会影响地址解析和上网。


我们今天可以学习一下如何给我们的服务器起一个名字。

在服务器中新建一个反向查找区域,网络id就是我们的服务器地址所在ip段#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_27

其他都是默认设置

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_28


然后在正向查找区域中新建正向查找,主机名就是我们为dns服务器定义的名称。注意一定要打上更新相关的指针记录的勾。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_29


#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_30

然后在反向查找区域右侧新建一个指针PTR,指向我们的dns1.baidu.com

#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_31

最后我们的反向查找区域的内容是这样的。


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_32


我们回到windowsxp中进行验证。

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_33

发现其server已经不是unknown了,而是我们之前定义的dns1.baidu.com。实验成功。

7、实验三:创建DNS辅助服务器


我们既然知道dns服务器非常重要,那么如果我们的dns服务器发生故障怎么办呢?在大多数企业中,一般部署了两到三台dns服务器,除了一台主服务器外,其他的都是辅助服务器,用来在主服务器发生故障的时候进行替补。

开启一台新的windows2003服务器,ip地址配置为10.1.1.3,将其配置成一台辅助dns服务器。

选择辅助区域。

#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_34

区域名称和主服务器的名称保持一致,还是baidu.com


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_35


指定从主服务器复制内容,所以需要输入主服务器的ip地址。

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_36


成功后,我们可以看到记录和主服务器保持了一致,并且是自动从主服务器同步的。


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_37







8、实验四:别名的使用


#yyds干货盘点# web安全day5:DNS部署与安全_dns服务器_38



在windowsxp中进行验证


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_39


这样我们也可以理解我们在访问百度的时候为什么会有www.a.shifen.com的原因了,因为www.baidu.com只是一个别名,而真实名字其实是www.a.shifen.com.

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_40



9、实验五:dns服务器解析顺序

接下来的实验,需要我们的虚拟机能够真实上网,所以在网络设置这方面,还需要不补充一些知识。在v之前的实验中,我们的所有虚拟机都是挂在vmnet2上的,vmnet2我们可以把它看成是一台交换机,这台交换机没有和真实网络连接,为了和真实网络连接,我们需要挂在vmnet0中,vmnet0可以理解是我们电脑真实机所在的交换机

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_41

在编辑中将vmnet0的外部连接设置在我们实际使用的有线或者无线网卡中。

#yyds干货盘点# web安全day5:DNS部署与安全_主机名_42


将所有虚拟机的ip地址设置为自动获取。并且windowsxp的dns服务器地址也设置为自动获取。



windowxp最后的ip地址是:


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_43


windows2003最后的ip地址是:

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_44

此时我们在windowsxp中去ping 百度。

#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_45


发现它的ip地址已经不是我们之前所设置的1.1.1.1了。


我们查看一下它的设置。原来的dns服务器地址发生了变化。


#yyds干货盘点# web安全day5:DNS部署与安全_服务器_46




我们把windowsxp的dns服务器地址依然指向windows2003.



#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_47

现在我们再次解析www.qq.com会是什么呢?

#yyds干货盘点# web安全day5:DNS部署与安全_服务器_48


#yyds干货盘点# web安全day5:DNS部署与安全_ip地址_49


因为我们的dns服务器中并没有qq.com的解析所以它会从根服务器中迭代到。而对于baidu.com,因为我们的dns服务器中已经包含,所以会依然返回自己所记录的地址。

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_50

#yyds干货盘点# web安全day5:DNS部署与安全_域名服务器_51



©著作权归作者所有:来自51CTO博客作者小梁L同学的原创作品,如需转载,请注明出处,否则将追究法律责任
#yyds干货盘点# web安全day5:DNS部署与安全
https://blog.51cto.com/u_1965839/4605910

一文搞懂对称加密:加密算法、工作模式、填充方式、代码实现-多极客编程

微信搜索:码农StayUp 主页地址:https://gozhuyinglong.github.io 源码分享:https://github.com/gozhuyinglong/blog-demos 上篇介绍了《单向散列加密》,它是一种消息摘要算法。该算法在信息安全领域,有很多重要的应用场景,比如:用户密码保护、数字签名、文件完整性校验、云盘妙传等。 单向散列加密只能够对消息进行加密(严格来

Meterpreter从入门到精通(十八)-多极客编程

第十八课 Meterpreter的API和mixins      在前面的课程中,我们已经见识到了Meterpreter的强大功能,它让我们的渗那个透测试更简单轻松。在本节课中,我们将更深入的讨论与Meterpreter相关的高级概念。我们将更深入地研究Metasploit的核心,以了解Meterpreter脚本如何工作以及如何构建自己的脚本。       从渗那个透测试人员的角度来看,如何执行我

网络安全学习笔记工具篇(四)——使用OpenSCAP Workbench进行基线扫描与修复-多极客编程

一、前言在前一篇“OpenSCAP简介”中对OpenSCAP相关的概念、术语、工具等进行了相关的介绍说明,相关的概念都附上了参考链接。在本文中将介绍安装Scap-Workbench、如何使用SCAP Workbench图形界面进行安全基线扫描、修复以及使用该工具如何对已有的安全基线进行裁剪以适应自身企业的需要。 二、测试环境说明       安装OpenSCAP的服务器:CentOSLinux r

#yyds干货盘点# web安全day6:IIS之WEB服务器-多极客编程

web服务器也称为网页服务器或者http服务器,其使用的协议是http或者https。http协议端口号:tcp80https协议端口号:tcp443web服务器发布软件:微软:IIS(Internet information service),可以发布web网站和ftp站点。linux:apache/lamp/tomcat/nginx 等第三方:phpstudy、xampp,可以理解为官方软件的

#yyds干货盘点# web安全day7:IIS之FTP服务器-多极客编程

1、简介ftp服务器全称叫做file transfor protocol 服务器,中文叫做文件传输协议。2、所用的端口号tcp20和21.其中20是数据传输端口,21是控制端口。3、ftp的工作方式server有两个进程 一个主进程 负责接收新的请求 若干从进程 负责处理单个请求 主进程的工作步骤:监听21号端口 等待client发来的连接请求启动从属进程 处理client发来的连接请求 clie

#yyds干货盘点# web安全day8:深入浅出掌握windows域-多极客编程

作为普通人,工作生活中很少有听到域的概念,但是作为桌面运维工程师,域这个概念在工作中是不陌生的,如果企业网络中计算机和用户数量较多时,要实现高效管理,就需要windows域。但是很多人并不完全理解域的概念和意义,我计划用三篇博文,通过实验和理论结合,把计算机的域这个概念讲明白。Wind​ows域 是计算机网络的一种形式,其中所有​​用户帐户​​ ,计算机,打印机和其他​​安全主体​​都在位于称为域

一文搞懂对称加密:加密算法、工作模式、填充方式、代码实现-多极客编程

微信搜索:码农StayUp 主页地址:https://gozhuyinglong.github.io 源码分享:https://github.com/gozhuyinglong/blog-demos 上篇介绍了《单向散列加密》,它是一种消息摘要算法。该算法在信息安全领域,有很多重要的应用场景,比如:用户密码保护、数字签名、文件完整性校验、云盘妙传等。 单向散列加密只能够对消息进行加密(严格来

DHCP和DHCP中继(附配置)-多极客编程

@TOC DHCP和DHCP中继 DHCP概述 DHCP定义 DHCP(Dynamic Host configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作。 主要有两个用途: 给内部网络或网络服务供应商自动分配IP地址 给用户或者内部网络管理员作为对所有计算机作中央管理的手段 DHCP作用 减少管理员的工作量 避免输入错误的可能 避免IP地址冲突

Meterpreter从入门到精通(十八)-多极客编程

第十八课 Meterpreter的API和mixins      在前面的课程中,我们已经见识到了Meterpreter的强大功能,它让我们的渗那个透测试更简单轻松。在本节课中,我们将更深入的讨论与Meterpreter相关的高级概念。我们将更深入地研究Metasploit的核心,以了解Meterpreter脚本如何工作以及如何构建自己的脚本。       从渗那个透测试人员的角度来看,如何执行我

如何设置IPv4和IPv6报文的DSCP值——网络测试仪实操-多极客编程

一、操作说明在QoS测试中,经常要设置不同优先级的报文,来验证被测设备对于优先级的调度。所以,我们就要了解如何设置IPv6和IPv6报文中的DSCP(大部分使用DSCP值,也会用到TOS值)这里我们使用测试接交换机,交换机转发测试仪发出的报文,我们在接收端口抓包,验证配置正确性。​二、测试拓扑拓扑说明1、测试仪两个端口和DUT两个端口相连2、测试P1端口发出流量,经过DUT转发后,从B端口发出,进

技术分享| 如何做一款容纳百人的视频会议?-多极客编程

在视频通话或直播场景中,如果多个用户同时发流,由于设备性能消耗和网络流量的上升,可能带来比较大的体验下降,本文就场景层面调用 API 进行讲解,采用 iOS 接口作为示例,其他端在文档中心自行查找。 懒人法 在多人音视频通信过程中,设备的网络流量会出现间接性的波动(突发流量、网络信号问题),影响通话质量,开发者需要对当前通话的质量指标做统计分析,经过分析结果,自行调用API结果进行问题解决,但

#yyds干货盘点# web安全day6:IIS之WEB服务器-多极客编程

web服务器也称为网页服务器或者http服务器,其使用的协议是http或者https。http协议端口号:tcp80https协议端口号:tcp443web服务器发布软件:微软:IIS(Internet information service),可以发布web网站和ftp站点。linux:apache/lamp/tomcat/nginx 等第三方:phpstudy、xampp,可以理解为官方软件的