第十一周作业

1、详细描述一次加密通讯的过程,结合图示最佳。

一次通信加密过程:

发送方:

1.使用单向加密算法提取生成数据特征码;

2.使用自己的私钥加密特征码附加在数据后面;

3.生成用于对称加密的临时密钥;

4.用此临时密钥加密数据和已经使用私钥加密后的特征码;

5.使用接受方的公钥加密此临时密钥,附加在对称密钥后的数据后方;

接受方:

1.使用自己的私钥解密加密的临时密钥,从而获得临时密钥;

2.使用对称密钥解密对称加密的数据和私钥加密的特征码密文,从而获得数据和特征码密文;

3.使用对方的公钥解密特征码密文,从而获得从计算生成的特征码;

4.使用与对方同样的单向加密算法计算数据的特征码,并与解密而来的进行比较;

第十一周作业

2、描述创建私有CA的过程,以及为客户端发来的证书请求进行办法证书。

使用OpenSSL构建私有CA的步骤:

1.生成私钥;

[root@localhost ~]# (umask 077; openssl genrsa -out /etc/pki/CA/private/cakey.pem 4096)
Generating RSA private key, 4096 bit long modulus
…………………………………………………….++
…………………………………………………++
e is 65537 (0x10001)

2.生成自签署证书;

[root@localhost ~]# openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem -days 3655
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
—–
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Shanghai
Locality Name (eg, city) [Default City]:Shanghai
Organization Name (eg, company) [Default Company Ltd]:Magedu
Organizational Unit Name (eg, section) []:Ops
Common Name (eg, your name or your server’s hostname) []:ca.magedu.com
Email Address []:caadmin@magedu.com

-new:生成新签署证书请求;

-x509:生成自签格式证书,专用于创建私有CA时使用;

-key:生成请求时用到的自由文件路径;

-out:生成的请求文件路径;如果自签操作将直接生成签署过的证书;

-days:证书的有效时长,单位是day;

3.为CA提供所需的文件及目录;

[root@localhost ~]# mkdir -pv /etc/pki/CA/{certs,crl,newcerts}
[root@localhost ~]# touch /etc/pki/CA/{serial,index.txt}
[root@localhost ~]# echo 01> /etc/pki/CA/serial

 

3、描述DNS查询过程以及DNS服务器类别。

DNS查询过程:

此处以www.magedu.com为例,首先查询本地主机上的hosts文件是否有www.magedu.com主机与ip地址的对应关系,若有则直接给予响应;若没有则向指定的DNS server发起请求,DNS server收到请求后首先查询本地缓存记录是否有magedu.com的解析记录,若有则直接反馈给客户端,若没有此时DNS server会主动向根域名服务器发起查询www.magedu.com的请求,但是根只记录了.com的相关信息,此时根会告知.com的地址,DNS server收到.com后便向.com发起查询www.magedu.com的请求,而.com只记录了magedu.com的记录,此时.com服务器会告知DNS server  magedu.com的地址,DNS server收到magedu.com的地址后便向magedu.com主机发起查询www.magedu.com的请求,magedu.com主机查询本地的记录找到了www对应的IP地址,于是将www.magedu.com对应的IP地址反馈给DNS server,DNS server在收到结果后会先将结果存储在本地的DNS缓存中(此过程是为了方便下次如果有相同的解析请求时可以快速的响应),之后再将结果直接反馈给客户端,解析完成。

DNS服务器的类别:

DNS域名服务器是用来存储主机-域名映射信息的,这些服务器具体又可以分为4类:

(1)主DNS服务器:负责维护一个区域的所有域名信息,是特定的所有信息的权威信息源,数据可以修改。

(2)辅助DNS服务器:当主域名服务器出现故障、关闭或负载过重时,辅助域名服务器作为主域名服务器的备份提供域名解析服务。辅助域名服务器中的区域文件中的数据是从另外的一台主域名服务器中复制过来的,是不可以修改的。

(3)高速缓存服务器:从某个远程服务器取得每次域名服务器的查询回答,一旦取得一个答案就将它放在高速缓存中,以后查询相同的信息就用高速缓存中的数据回答,缓存域名服务器不是权威的域名服务器,因为它提供的信息都是间接信息。

(4)转发DNS服务器:负责所有非本地域名的本地查询。转发域名服务器接到查询请求后,在其缓存中查找,如找不到就将请求依次转发到指定的域名服务器,直到查找到结果为止,否则返回无法映射的结果。

4、搭建一套DNS服务器,负责解析magedu.com域名(自行设定主机名及IP)

(1)、能够对一些主机名进行正向解析和逆向解析;

(2)、对子域cdn.magedu.com进行子域授权,子域负责解析对应子域中的主机名;

(3)、为了保证DNS服务系统的高可用性,请设计一套方案,并写出详细的实施过程;

一、安装DNS服务器软件

[root@localhost ~]# yum install -y named

二、配置相关配置文件

DNS的配置文件有很多个,其中:

/etc/named.conf,/etc/named.rfc1912.zones:为DNS的主配置文件;

/var/named/:该目录为DNS数据库文件的存放目录,所有的域文件都存放在此目录下;

/etc/rc.d/init.d/named:为DNS服务的服务脚本

首先编辑/etc/named.conf文件

[root@localhost ~]# vim /etc/named.conf

options {
listen-on port 53 { any; };          53为监听的端口,将后面的参数修改为any,any表示所有主机都可以进行访问解析
listen-on-v6 port 53 { ::1; };
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”;
allow-query { any; };                允许那些主机请求查询,any表示所有主机
recursion yes;                       允许递归查询

dnssec-enable no;
dnssec-validation no;

/* Path to ISC DLV key */
bindkeys-file “/etc/named.iscdlv.key”;

managed-keys-directory “/var/named/dynamic”;
};

编辑完成后启动DNS服务

[root@localhost ~]# service named start

查看服务是否启动并监听在53端口上

[root@localhost ~]# ss -tnl | grep :53
LISTEN 0 3 ::1:53 :::*
LISTEN 0 3 192.168.1.101:53 *:*
LISTEN 0 3 127.0.0.1:53 *:*

编辑/etc/named.rfc1912.zones文件,在文件中添加zone;

[root@localhost ~]# vim /etc/named.rfc1912.zones

zone “magedu.com” IN {                  zone名字为magedu.com
type master;                   此处为主DNS服务器zone的类型为master
file “magedu.zone”;            zone的解析库文件的名称为magedu.zone,对应的文件路径为/var/named目录下

zone “1.168.192.in-addr.arpa” IN {      反向解析的名称为ip网段部分的反写后面加上in-addr.arpa
type master;                   此处为反向的主DNS服务器,zone的类型为master
file “1.168.192.zone”;         zone的解析库文件的名称为1.168.192.zone,对应的文件路径为/var/named目录下
};

主配置文件添加完后使用named-checkconf命令检查是否有语法错误

[root@localhost ~]# named-checkconf

在/var/named/目录下创建区域解析库文件;

[root@localhost ~]# vim /var/named/magedu.zone           创建正向解析库文件;

$TTL 600                                                设置所有变量TTL的值为600秒
magedu.com. IN SOA ns1.magedu.com. admin.magedu.com. (  SOA记录
2017092901                           序列号
1H                                   刷新时间
10M                                  重试时间
1W                                   过期时间
1D                                   否定答案的TTL值
)
IN NS ns1.magedu.com.                       NS记录,当前域的名称magedu.com,DNS服务其名字为ns1.magedu.com
IN NS ns2.magedu.com.                       从DNS服务器名字为ns2.magedu.com
IN MX 10 mx1.magedu.com.                    MX记录,当前域的MX服务器名字为mx1.magedu.com
IN MX 20 mx2.magedu.com.                    10为MX服务器的优先级,数字越小优先级越高
pop3.magedu.com. IN CNAME mx1.magedu.com.               CNAME记录,pop3.magedu.com为mx1.magedu.com的别名
ns1.magedu.com. IN A 192.168.1.101                      A记录,此处为所有主机名对应的ipv4地址
ns2.magedu.com. IN A 192.168.1.102                      从DNS服务器地址
www.magedu.com. IN A 192.168.1.101
mx1.magedu.com. IN A 192.168.1.101
mx2.magedu.com. IN A 192.168.1.102

正向解析库文件配置完成,完成后使用named-checkzone命令查看解析库文件是否有错误

[root@localhost ~]# named-checkzone “magedu.com” /var/named/magedu.zone

没有报错,随后需要将配置文件的权限设为O=0,属组设置为named用户,

[root@localhost ~]# chmod o= /var/named/magedu.zone
[root@localhost ~]# chown :named /var/named/magedu.zone

使用rndc命令进行重载配置文件

[root@localhost ~]# rndc reload
server reload successful

 

此时,正向DNS解析已可以使用。

测试:

[root@localhost ~]# dig -t A www.magedu.com @192.168.1.101

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.4 <<>> -t A www.magedu.com @192.168.1.101
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64569
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.magedu.com. IN A

;; ANSWER SECTION:
www.magedu.com. 600 IN A 192.168.1.101

;; AUTHORITY SECTION:
magedu.com. 600 IN NS ns2.magedu.com.
magedu.com. 600 IN NS ns1.magedu.com.

;; ADDITIONAL SECTION:
ns1.magedu.com. 600 IN A 192.168.1.101
ns2.magedu.com. 600 IN A 192.168.1.102

;; Query time: 1 msec
;; SERVER: 192.168.1.101#53(192.168.1.101)
;; WHEN: Thu Oct 12 16:52:37 2017
;; MSG SIZE rcvd: 116

创建反向解析库文件:

[root@localhost ~]# vim /var/named/1.168.192.zone

$TTL 600
@                IN SOA ns1.magedu.com. admin.magedu.com. (
2017092901
1H
10M
1W
1D
)
IN NS ns1.magedu.com.
IN NS ns2.magedu.com.
101              IN PTR ns1.magedu.com.
IN PTR mx1.magedu.com.
102              IN PTR ns2.magedu.com.
IN PTR mx2.magedu.com.

完成后修改属组和权限,并检查区域文件

[root@localhost ~]# chmod o= /var/named/1.168.192.zone
[root@localhost ~]# chown :named /var/named/1.168.192.zone
[root@localhost ~]# named-checkzone “1.168.192.in-addr.arpa” /var/named/1.168.192.zone

使用rndc命令进行重载配置文件

[root@localhost ~]# rndc reload
server reload successful

测试:

使用rndc命令进行重载配置文件

[root@localhost named]# dig -x 192.168.1.101 @192.168.1.101

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6_9.4 <<>> -x 192.168.1.101 @192.168.1.101
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60637
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;101.1.168.192.in-addr.arpa. IN PTR

;; ANSWER SECTION:
101.1.168.192.in-addr.arpa. 600 IN PTR ns1.magedu.com.
101.1.168.192.in-addr.arpa. 600 IN PTR mx1.magedu.com.

;; AUTHORITY SECTION:
1.168.192.in-addr.arpa. 600 IN NS ns1.magedu.com.
1.168.192.in-addr.arpa. 600 IN NS ns2.magedu.com.

;; ADDITIONAL SECTION:
ns1.magedu.com. 600 IN A 192.168.1.101
ns2.magedu.com. 600 IN A 192.168.1.102

;; Query time: 1 msec
;; SERVER: 192.168.1.101#53(192.168.1.101)
;; WHEN: Thu Oct 12 17:44:30 2017
;; MSG SIZE rcvd: 154

反向解析成功。

三、从服务器配置

配置从DNS服务器配置文件。

[root@localhost ~]# vim /etc/named.conf

options {
listen-on port 53 { 192.168.1.102; 127.0.0.1; };      此处允许访问解析的主机地址为自己
listen-on-v6 port 53 { ::1; };
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”;
allow-query { any; };
recursion yes;

// dnssec-enable yes;
// dnssec-validation yes;

/* Path to ISC DLV key */
bindkeys-file “/etc/named.iscdlv.key”;

managed-keys-directory “/var/named/dynamic”;
};

完成后启动dns服务

修改named.rfc1912.zones文件

[root@localhost ~]# vim /etc/named/named.rfc1912.zones

zone “magedu.com” IN {
type slave;                     域类型设置为slave
file “slaves/magedu.zone”;      由于为从dns服务器此处区域文件存放的位置为/var/named/slaves目录下
masters { 192.168.1.101; };     此处为指向主DNS服务器的地址
};

zone “1.168.192.in-addr.arpa” IN {
type slave;
file “slaves/1.168.192.zone”;
masters { 192.168.1.101; };
};

从dns服务器配置文件修改完成后无需创建数据库文件,会主动去和主服务器同步,不过在此之前需要在主服务器的区域数据库文件中添加从DNS服务器的ns记录和A记录。

四、子域授权

首先在主DNS服务器的区域解析库文件上添加NS记录及A记录

[root@localhost ~]# vim /var/named/magedu.zone

$TTL 600
magedu.com.      IN SOA ns1.magedu.com. admin.magedu.com. (
2017092901
1H
10M
1W
1D
)
IN NS ns1.magedu.com.
IN NS ns2.magedu.com.
IN MX 10 mx1.magedu.com.
IN MX 20 mx2.magedu.com.
cdn.magedu.com.  IN NS ns1.cdn.magedu.com.          添加子域NS记录
pop3.magedu.com. IN CNAME mx1.magedu.com.
ns1.magedu.com.  IN A 192.168.1.101
ns2.magedu.com.  IN A 192.168.1.102
www.magedu.com.  IN A 192.168.1.101
mx1.magedu.com.  IN A 192.168.1.101
mx2.magedu.com.  IN A 192.168.1.102
ns1.cdn.magedu.com. IN A 192.168.1.103              添加子域A记录

在192.168.1.103主机上修改子域DNS服务器配置文件:

[root@localhost ~]# vim /etc/named.conf

options {
//       listen-on port 53 { any; };               此处全部注释也可;
//       listen-on-v6 port 53 { ::1; };
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”;
//       allow-query { localhost; };
recursion yes;

dnssec-enable no;                  此处两项dnssec需要设置为no
dnssec-validation no;

/* Path to ISC DLV key */
bindkeys-file “/etc/named.iscdlv.key”;

managed-keys-directory “/var/named/dynamic”;
};

[root@localhost ~]# vim /etc/named.rfc1912.zones

zone “cdn.magedu.com” IN {               定义子域服务器名字
type master;                    类型为主服务器
file “cdn.magedu.com.zone”;     区域解析库文件位置
};

当需要解析的主机不再子域内时,则转发给上级DNS服务器,转发的zone定义方法如下

zone “magedu.com” IN {                   上级主服务器名称
type forward;                   定义类型为转发
forward only;                   只转发不负责解析
forwarders { 192.168.1.101; };  转发的主DNS服务器地址
};

配置完成后创建解析库文件

[root@localhost ~]# vim /var/named/cdn.magedu.com.zone

$TTL 600
@ IN SOA ns1.cdn.magedu.com. admin.magedu.com. (
2017100101
1H
10M
1W
1D
)
IN NS ns1.cdn.magedu.com.
IN NS ns2.cdn.magedu.com.
ns1 IN A 192.168.1.103
ns2 IN A 192.168.1.104
*   IN A 192.168.1.105

完成后修改属组及权限,至此子域授权完成。

原创文章,作者:M36-Masuri,如若转载,请注明出处:http://www.178linux.com/84013

(0)
M36-MasuriM36-Masuri
上一篇 2017-10-01 09:19
下一篇 2017-10-02

相关推荐

  • centos7上实现corosync V2 + pacemaker + pcs | crmsh备忘录

    1、集群配置的前提: 一、时间同步(ntpdate做crontab定时任务) 二、主机名和IP相互解析 三、基于ssh密钥主机互信 #ssh-keygen -t rsa #ssh-copy-id -i   集群的全生命周期管理工具: pcs: agent(pcsd) crmsh: agentless (pssh)     2、安…

    2017-11-15
  • ip命令详解

      Linux中的ip命令功能强大,可以完成接口配置、路由管理等任务。   格式:ip [ OPTIONS ] OBJECT { COMMAND | help }   下面使用ip命令来完成一些常用的操作:     1、查看接口状态       ip link show [设备名…

    Linux干货 2016-01-14
  • Linux磁盘管理实操

    Linux磁盘管理实操 1、创建一个10G分区,并格式为ext4文件系统。 先使用fdisk工具创建一个10G的新分区。使用fdisk打开要创建磁盘分区的物理设备fdisk /dev/sdb,然后使用n指令创建新的分区,分区类型选此处选择为主分区,第一个柱面使用默认的1,最后的柱面,使用+10G这种表示方式,表示创建的分区大小为10G。 创建后可以使用p指令…

    系统运维 2016-12-13
  • N_28 正则表达式的一些基本用法

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel /home/tuser1 ~]# chmod -R -g— -o— /home/tuser1 2、编辑/etc/group文件,添加组hadoop。 ~]#vi…

    Linux干货 2017-12-23
  • 磁盘管理(1)

    1、磁盘结构(机械硬盘) (1)磁盘构成: 磁臂(机械手臂):连接并固定磁头 马达(电机):可以转动盘片,让磁臂上的磁头可以在盘片上读写数据 扇区:最小的物理存储单位,每个扇区为512bytes 磁头:可以读写数据 盘片:主要记录数据 柱面:将扇区组成一个圆就是柱面,柱面是分区的最小单位 (2)磁盘接口 并口:IDE  SCSI&nbsp…

    Linux干货 2016-08-30
  • bash脚本之数组及字符串切片,登陆配置文件

    一,概述 数组(就是一堆变量的集合) 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合/ 数组名和索引     索引:编号从0开始,属于数值索引     注意:索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引,bash4.0版本之后…

    Linux干货 2016-09-01