centos7搭建DNS服务,CA字签证书

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_42616691/article/details/95478545

1、描述TSL链路的通信图

在这里插入图片描述

第一阶段:client hello
	1:向服务端发送支持的协议版本,比如 tls1.2
	2:客户端生成一个随机数,稍后用户生成“会话秘钥”
	3:发送支持的加密算法,比如 AES,RSA 
	4:支持的压缩算法

第二阶段:server hello 
	1:确认使用的加密的通信协议版本,比如 tls1.2 
	2:服务器端生成一个随机数,稍后用于生成”会话秘钥“
	3:确认使用的加密方法
	4:发送服务器证书

第三阶段:
	1:客户端验证服务器证书,在确认无误后取出其公钥,验证(发证机构,完整性,证书持有者,证书有效期,吊销列表)
	2:发送一下信息给服务器;
		a:发送一个随机数
		b:编码变更通知,表示随后的信息都将用双方商定的加密方法和秘钥发送
		c:客户端握手结束通知

第四阶段:
	1:收到客户端发来的第三个随机数pre-master-key后,计算生成本次会话所有的“会话秘钥“
	2:向客户端发送如下信息:
		a:编码变更通知,表示随后的信息都将用双方商定的加密方法和秘钥发送
		b:服务器端握手结束通知

2、如何创建自签的证书

 在确定配置为CA的服务器上生成一个自签证书,并为CA提供所有需要的目录及文件即可
	步骤:
		(1)生成私钥:
			[root@ca ~]# (umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096) 
				umask 077:表示创建的密码文件权限为 -rw-------,只有自己能参看。
				openssl genrsa:表示生产秘钥。
				-out:表示生成到哪里。
				4096:表示密码长度 ,一般有(1024,2048,4096)	

		(2)生成自签证书:
			[root@ca ~]# openssl  req -new -x509  -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 365
				-new:生成新证书签署请求
				-509:生成自签格式证书,创建私有CA时使用
				-key:生成请求时用到的私有文件路径
				-out:生成的请求的文件路径,如果自签操作将直接生成签署过的证书
				-days:证书的有效时长,单位是day(天)

在这里插入图片描述

	(3)为CA提供所需的目录及文件:
		[root@ca ~]# mkdir -pv /etc/pki/CA/{certs,crl,newcerts}
		[root@ca ~]# touch /etc/pki/CA/{serial,index.txt} 
			serial:序列号
			index.txt:数据库
		[root@ca ~]#echo 01> /etc/pki/CA/serial
			01:表示序列号

接下来以httpd服务为例:

	(1)在httpd服务器生成私钥:
		[root@server ~]# mkdir /etc/httpd/ssl 
		[root@server ~]# cd /etc/httpd/ssl 
	 	[root@server ssl]# (umask 077;openssl genrsa -out httpd.key 2048)
	(2)生成证书签署请求:	
		[root@server ssl]# openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr -days 365  #这里填的信息要和前面证书的信息一致
	(3)将请求发送给CA主机:
		[root@server ssl]# scp /etc/httpd/httpd.csr root@192.168.1.120:/tmp/ 
	(4)在CA主机上签署证书:	
		[root@ca ~]# openssl ca -in /tmp/httpd.csr  -out /etc/pki/CA/certs/httpd.crt -days 365
	(5)将签署好的证书发送给httpd服务器:
		[root@ca ~]# scp /etc/pki/CA/certs/httpd.crt root@192.168.1.110:/etc/httpd/ssl/	 		
	(6)查看证书的信息:
		[root@server ~]# openssl x509 -in /etc/httpd/ssl/httpd.crt -noout -serial -subject

吊销证书:

	步骤: 
	 (1)客户端获取要吊销的证书serial(在使用证书的主机上面执行)
	 	~]# openssl x509 -in /etc/httpd/ssl/httpd.crt -noout -serial -subject
	 (2)CA主机吊销证书:先根据客户端提交的serial和subject信息,对比信息与本机数据库index.txt中存储的信息是够一致			 
		  吊销:~]# openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem 
			 	注意:其中的SERIAL.pem要换成证书的真正的序列号
	 (3)生成吊销证书的吊销编号(第一次吊销证书是执行)
	 	~]# echo 01 > /etc/pki/CA/crlnumber

	 (4)更新证书吊销列表:
	 	~]# openssl ca -gencrl -out thisca.crl 

	 (5)查看crl文件:
		~]# openssl crl -in /path/form/car_file.crl 

3、搭建DNS服务器** -基于centos7

	1.下载DNS服务:yum  -y install bind bind-utils 

	2.修改本机DNS地址:vim /etc/resolv.conf
	注意:永久生效需要配置网卡配置文件。

在这里插入图片描述

	3.启动DNS服务:systemctl start named 
	4.测试:ping baidu.com

在这里插入图片描述

	4.查看端口是否处于监听:netstat -tnlp 

在这里插入图片描述

配置解析一个正向区域:(主要记录为 A ,AAAA)
	(1)定义区域:	vim/etc/named.rfc1912.zones  #新增一个区域		
		配置格式:
				zone "ZONE_NAME" IN {
					type master;   #(master|slave|hint|forword)=(主服务器|从服务器|根服务器|转发服务器)
					file "ZONE_NAME.zone";
				};

在这里插入图片描述

	修改配置文件:vim /etc/named.conf
		listen-on port 53 { 192.168.30.137; }; #这里填本机ip,或者"any"表示所有主机
		 //allow-query     { localhost; };  #禁止只允许本机解析,或者"any"表示允许所有主机解析
	
	(2)建立区域数据文件:在/var/named/目录下建立区域数据文件		
		[root@master ~]# vim /var/named/like.com.zone 		
			$TTL 3600
			$ORIGIN like.com.
			@       IN      SOA     ns1.like.com.   dnsadmin.like.com. (
							2019071702 ;序列号
							1H  ;刷新时间
							10M  ;重试时间
							3D  ;过期时间
							1D ) ;否定答案的TTL值
					IN      NS      ns1 
					IN      MX  10  mx1 
			ns1     IN      A       192.168.30.137
			mx1     IN      A       192.168.30.140
			www     IN      A       192.168.30.137
			web     IN      CNAME   www 
			bbs     IN      A       192.168.30.142
			bbs     IN      A       192.168.30.143

	[root@master ~]# chown :named /var/named/like.com.zone  #修改属组 
	[root@master ~]# chmod 640 /var/named/like.com.zone  #修改文件权限
	[root@master ~]# named-checkzone  like.com /var/named/like.com.zone #检查区域文件  
	[root@master ~]# named-checkconf #检查配置文件

在这里插入图片描述

(3)让服务器重载配置文件和区域数据文件
	~]# rndc status  :查看状态
	~]# rndc reload  :重载

在这里插入图片描述

	(4)测试:dig -t A www.like.com 
		-t:指定类型
		A:表示A记录

在这里插入图片描述
在这里插入图片描述
(2).配置一个反向解析区域:

1.在区域配置文件新增一个反向解析区域:
	~]#vim /etc/named.rfc1912.zones 
		
		zone "30.168.192.in-addr.arpa" IN {
    		type master;
   			file "192.168.30.zone";
		};

注意:反写区域的名字"网段"

2.定义区域解析库文件(主要记录为PTR)
	$TTL 3600
	$ORIGIN 30.168.192.in-addr.arpa.
	@       IN      SOA     ns1.like.com.   dnsadmin.like.com. (
	                2019072201
	                1H
	                5M
	                1D
	                5H )
	        IN      NS      ns1.like.com.
	137     IN      PTR     ns1.like.com.
	138     IN      PTR     mx1.like.com.
	139     IN      PTR     www.like.com

 [root@master ~]# chown :named /var/named/192168.30.zone  #修改属组 
 [root@master ~]# chmod 640 /var/named/192168.30.zone   #修改文件权限
 [root@master ~]# named-checkzone   30.168.192.in-addr.arpa   /var/named/192168.30.zone #检查区域文件  
 [root@master ~]# named-checkconf #检查配置文件

	4.让服务器重载配置文件和区域数据文件
		[root@master ~]#rndc reload  #重载	

	5.测试:dig -x 192.168.30.137

在这里插入图片描述
在这里插入图片描述

4、熟悉DNSPOD的解析类型

1、A (Address) 记录是用来指定主机名(或域名)对应的IP地址记录。 
就是说:通过A记录,大家可以设置自己的不同域名转到不同的IP上去 

www.test.com 转到IP 192.168.1.11

web.test.com 转到IP 192.168.1.12

mail.test.com 转到IP 192.168.1.13

2、MX记录(Mail Exchange):邮件交换记录

功能:用户可以将该域名下的邮件服务器指向到自己的mail server上,然后即可自行操作控制所有的邮箱设置。

3、CNAME (Canonical Name)记录,通常称别名解析

功能:可以将注册的不同域名都转到一个域名记录上,由这个域名记录统一解析管理,与A记录不同的是,CNAME别名记录设置的可以是一个域名的描述而不一定是IP地址!

4、URL (Uniform Resource Locator )转发:网址转发

功能:如果您没有一台独立的服务器(也就是没有一个独立的IP地址)或者您还有一个域名B,您想访问A域名时访问到B域名的内容,这时您就可以通过URL转发来实现。 
url转发可以转发到某一个目录下,甚至某一个文件上。而cname是不可以,这就是url转发和cname的主要区别所在。

5、NS(Name Server)记录是域名服务器记录
功能:用来指定该域名由哪个DNS服务器来进行解析,可以把一个域名的不同二级域名分别指向到不同的DNS系统来解析。

6、AAAA记录 IPV6解析记录
展开阅读全文

没有更多推荐了,返回首页