加密原理簡述、實現httpd自簽證書訪問、dns主、輔服務器搭建及智能dns服務

1、簡述加密算法的原理

介于用戶空間和內核空間之間有用于數據加密的協議,對來至用戶空間的數據進行加密,并轉交給內核空間發送至目標端,然后由目標端接收加密數據然后交付給加密協議解密后的數據顯示給用戶空間。當然數據也可不通過加密協議直接傳送。

image

2、加密算法的分類:

  • 對稱加密:數據保密(保密性)
  • 公鑰加密:身份認證、密鑰交換、數據加密(不常用,比對稱要慢3個數量級)
  • 單向加密:保證數據的完整性。

3、對稱加密的加密圖示

發送端與接收端使用同一個密鑰進行加密或解密,將原始數據分割成固定大小的塊,通過加密協議逐個進行加密。而接收方使用密鑰進行單個解密并組個固定數據塊文件。

image

4、公鑰加密:

加密和解密時使用的是一對密鑰(即:公鑰、私鑰)私鑰是通過工具創建的,屬于用戶私有,公鑰是從私鑰中提出產生的,向所有人公開,使用公鑰加密的文件通過私鑰可以直接解密反之亦然。相對于對稱加密安全性更高,通常情況下僅作身份驗證和交換密鑰。對資源的占用也比較多。

![iagme]

5、單向加密

單向加密的原理是提取數據的指紋信息,進行加密并定長顯示出來,一旦讀取的指紋信息有絲毫偏差都會產生截然不容的結果,導致雪崩效應。

定長輸出:

[root@localhost ~]# md5sum /etc/passwd /etc/issue
4b488ac773035573a6a838c0eed7253c  /etc/passwd
f078fe086dfc22f64b5dca2e1b95de2c  /etc/issue

[root@localhost ~]# sha224sum /etc/passwd /etc/issue
f7c56524f9ac472310abc2d17ccdca3740ce1d9ded251f2b30287dab  /etc/passwd
172dc10d5bac2a9551c4ef09eb81331cae4c30d07861a9a0f254082d  /etc/issue

雪崩效應:

[root@localhost ~]# echo "abc" | sha224sum
f5c93b6f06f7c56d7ea720c121e3b1fb6730e5cf5f18d776bf0f2d88  -

[root@localhost ~]# echo "Abc" | sha224sum
023a17e1746f568423ab4c294dca639177fea3afa2904202b4cd153e  -
[root@localhost ~]#

參考筆記: 馬哥筆記 網絡筆記

2、搭建apache并使用自簽證書實現https訪問,自簽名證書的域名自擬

apache

后綴類型解釋:

  • 證書:crt(簽發的證書),pem(ca 服務器自簽證書)
  • 私鑰:key
  • 證書請求:csr

一、ca 服務器 (192.168.1.115):

1.使用命令:生成私鑰。

[root@MiWiFi-R3-srv pki]# (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@MiWiFi-R3-srv pki]# 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) []:shandong
Locality Name (eg, city) [Default City]:tengzhou
Organization Name (eg, company) [Default Company Ltd]:mageedu
Organizational Unit Name (eg, section) []:ops
Common Name (eg, your name or your server's hostname) []:ca.magedu.com
Email Address []:

3.創建CA所需要的目錄及文件

[root@MiWiFi-R3-srv pki]# mkdir -pv /etc/pki/CA/{certs,crl,newcerts}
mkdir: 已創建目錄 "/etc/pki/CA/certs"
mkdir: 已創建目錄 "/etc/pki/CA/crl"
mkdir: 已創建目錄 "/etc/pki/CA/newcerts"
[root@MiWiFi-R3-srv pki]# touch /etc/pki/CA/{serial,index.txt}
[root@MiWiFi-R3-srv pki]# echo 01 > /etc/pki/CA/serial

二、客戶端(191.168.1.131) 申請證書

1.創建目錄

[root@localhost ~]# mkdir -pv /etc/httpd/ssl
mkdir: 已創建目錄 "/etc/httpd"
mkdir: 已創建目錄 "/etc/httpd/ssl"
[root@localhost ~]# cd /etc/httpd/ssl

2.用到證書的主機生成私鑰

[root@localhost ssl]# (umask 077; openssl genrsa -out /etc/httpd/ssl/httpd.key 2048)
Generating RSA private key, 2048 bit long modulus
............................................+++
.........................................................................+++
e is 65537 (0x10001)

3.生成證書簽署請求

[root@localhost ssl]# openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr -days 365
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) []:shandong
Locality Name (eg, city) [Default City]:tengzhou
Organization Name (eg, company) [Default Company Ltd]:mageedu
Organizational Unit Name (eg, section) []:ops
Common Name (eg, your name or your server's hostname) []:www.magedu.com
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:123456
An optional company name []:a

將申請以可靠的方式發送給192.168.1.115 CA服務器

[root@localhost ssl]# scp httpd.csr root@192.168.1.101:/tmp/
root@192.168.1.101's password: 
httpd.csr                                                                                       100% 1066     1.0KB/s   00:00  

三、ca 服務器(192.168.1.115) 簽發證書

[root@MiWiFi-R3-srv pki]# openssl ca -in /tmp/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 365
Using configuration from /etc/pki/tls/openssl.cnf
Check that the request matches the signature
Signature ok
Certificate Details:
        Serial Number: 1 (0x1)
        Validity
            Not Before: Apr 29 14:59:43 2018 GMT
            Not After : Apr 29 14:59:43 2019 GMT
        Subject:
            countryName               = CN
            stateOrProvinceName       = shandong
            organizationName          = mageedu
            organizationalUnitName    = ops
            commonName                = www.magedu.com
        X509v3 extensions:
            X509v3 Basic Constraints: 
                CA:FALSE
            Netscape Comment: 
                OpenSSL Generated Certificate
            X509v3 Subject Key Identifier: 
                52:45:76:06:A8:43:FC:2B:E4:71:D1:F1:F0:EF:C7:A3:AB:76:66:29
            X509v3 Authority Key Identifier: 
                keyid:39:B3:4B:48:C3:28:1A:4B:D0:6E:A1:4F:5E:1A:47:AD:CE:85:CC:00

Certificate is to be certified until Apr 29 14:59:43 2019 GMT (365 days)
Sign the certificate? [y/n]:y


1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated

查看證書信息
[root@MiWiFi-R3-srv pki]# openssl x509 -in /etc/pki/CA/certs/httpd.crt -noout -serial -subject
serial=01
subject= /C=CN/ST=shandong/O=mageedu/OU=ops/CN=www.magedu.com
查看證書序列
[root@MiWiFi-R3-srv CA]# cat /etc/pki/CA/index.txt
V	190429145943Z		01	unknown	/C=CN/ST=shandong/O=mageedu/OU=ops/CN=www.magedu.com

3、簡述DNS服務器原理,并搭建主-輔服務器

DNS服務器原理

DNS服務器是一種基于C/S架構,運行在應用層的一種協議.使用53號端口發送請求和響應請求,進行名稱解析,解析的過程就是通過DNS服務器的數據庫將名稱解析成IP或IP解析成名稱。

例如:www.magedu.com. ip為 101.200.188.230

其中magedu.com就是域,域還包括:

所有的FQNS和IP都存在于一個倒樹結構的DNS服務器分支下.表示為最高級根.

DNS名稱解析兩種方式:
  • 正向解析
    • 名稱 —> IP
  • 反向解析
    • IP —> 名稱

而兩種的解析卻是完全不通的兩套根。

DNS服務器類型也分為兩種:
  • 一種負責解析的(主、輔服務器)
  • 另一種則是只緩存記錄被解析過的服務器。
DNS的兩種查詢方式:
  • 遞歸式查詢;
    • 遞歸式查詢的DNS服務器必須回應給客戶端一個具體的解析信息。圖中客戶端到客戶單端DNS服務器
  • 迭代式查詢;
    • 迭代式DNS服務器如果的結果則將此申請轉發給其他DNS服務器進行查詢,直至找到結果。圖中根(.)到下一級查詢

image

以查詢pan.baidu.com. 為例解析DNS流程

image

  • 2.客戶端DNS服務器如果沒有,將直接查詢根 (.)DNS服務器.
  • 3.根(.)DNS服務器沒有則將查詢的名稱至右往左進行解析(.:代表根,com:代表區域,baidu:代表名稱,pan:代表類型)轉至其他DNS解析.直至解析到baiduDNS服務器.
  • 4.在baidu DNS服務器的數據庫上,查詢到結果依次返回至客戶端 DNS服務器緩存一份然后將結果反回給客戶端直接訪問并也緩存一份至host文件。

主、輔 DNS 服務器

image

主、輔服務器的關系:
  • 主DNS服務器:是可以進行解析域數據庫的服務器,也可以進行寫入新的數據。
  • 輔DNS服務器:是主DNS服務器的解析庫的實時備份,只能進行域解析操作不能寫入新數據。
主、輔 DNS服務器備份條件:
  • 當主DNS服務器數據更新時,服務器的版本則會發生變化,此時則同時輔DNS服務器進行增量更新。
  • 輔DNS服務器也會固定間隔時間對主DNS服務器版本號進行查詢,是否需要更新。
  • 當輔DNS服務器查詢主DNS服務器時出錯,便會等待一定的間隔重新場所連接。
  • 當多次重連依然無法聯系到主DNS服務器后,將放棄從主DNS服務器更新,停止相應服務
  • 無法得到回應時間。

區域數據庫文件:

資源記錄類型:

  • NS:域名服務記錄;一個區域解析庫除了有一個主還有多個。
    • name:打槍區域的區域名稱
    • value:單槍區域的某DNS服務器的名稱(例如:ns.magedu.com)
  • A:address,地址記錄
    • name:某主機名FQDN;
    • value:某IPv4地址;FQDN —> IPv4
  • AAAA:地址記錄 FQDN—> IPv6;
    • name:FQDN
    • value:IPv6
  • CNAME:別名記錄;
    • name:FQDN格式的別名;
    • value:FQND格式的正式名字
  • PTR: IP—>FQDN
    • name:IP地址,有特性格式,IP反過來寫,而且加特定后綴,例如1.2.3.4的記錄實際寫為4.3.2.1.in-addr.arpa.:value:FQND
  • MX:郵件交換器;擁有優先級0-99;數字越小越高。
  • SOA:起始授權記錄,每個區域只有一個SOA記錄。
    • name:當前區域的名字;
    • value:有多部分組成。
      • 當前區域的區域名稱;主機DNS服務器名稱
      • 當前區域管理員的郵箱地址,地址中@必須用點代替。
      • 主機服務協調屬性的定義以及否定答案的TTL。

注意的幾點:

  • (1)TTL可以從全集繼承;
  • (2)@表示當前區域的名稱;
  • (3)相鄰的兩條記錄某name相同時,后邊的可省略;
  • (4)對于正向區域來說,各MX,NS等類型的記錄的value為FQDN,此FQDN應該有一個A記錄;

配置前準備:

關掉防火墻:

CentOS 6
# service iptables  stop
# chkconfig  iptables  off 
CentOS 7
# systemctl  stop  firewalld.service 
# systemctl  disable  firewalld.service

準備兩臺CentOS 主機

主 DNS服務器

系統版本:centos 7 主機地址:192.168.1.110

安裝 bind

~]# yum -y install bind

正向解析庫–配置

1、編輯默認配置文件添加域配置

1、添加本機地址;192.168.1.110;

2、停用

  • dnssec-enable no;
  • dnssec-validation no;

3、添加域解析文件目錄

~]# vim /etc/named.conf

options {
        listen-on port 53 { 127.0.0.1; 192.168.1.110; };  添加本機地址
        listen-on-v6 port 53 { ::1; };
...
...
	//allow-query     { localhost; };   關閉
...
...
        dnssec-enable no;  關掉
        dnssec-validation no;  關掉
...
...
zone "magedu.com" IN {        添加這里
      type  master;
      file  "magedu.com.zone";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
2、新建指向的域配置文件。

1、新建域文件magedu.com.zone

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

內容如下:

$TTL 3600
$ORIGIN magedu.com.
@	IN	SOA	ns1.magedu.com.	dnsadmin.magedu.com. (
        2018051201
		1H
                10M
		3D
		1D )
	IN	    NS        ns1
	IN	    MX     10 mx1
        IN          MX     20 mx2
ns1		IN	  A 	     192.168.1.50
mx1		IN	  A          192.168.1.51
mx2		IN        A 	     192.168.1.52
www		IN	  A	     192.168.1.53
web		IN	  CNAME      www
bbs		IN	  A          192.168.1.54
bbs             IN        A          192.168.1.55

修改屬組、語法檢查及測試

1、修改屬組權限為named

~]# chgrp named magedu.com.zone

2、修改權限,其他用戶無權限

~]# chmod o= /var/named/magedu.com.zone

3、檢查語法錯誤

~]# named-checkconf

4、檢查區域配置文件錯誤

~]# named-checkzone magedu.com /var/named/magedu.com.zone

重載區域配置及測試

1、重載區域

~]# rndc reload

2、測試

[root@localhost named]# dig -t A web.magedu.com @192.168.1.110



; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -t A web.magedu.com @192.168.1.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9158
;; flags: qr aa rd; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;web.magedu.com.			IN	A

;; ANSWER SECTION:
web.magedu.com.		3600	IN	CNAME	www.magedu.com.
www.magedu.com.		3600	IN	A	192.168.1.53

;; AUTHORITY SECTION:
magedu.com.		3600	IN	NS	ns1.magedu.com.

;; ADDITIONAL SECTION:
ns1.magedu.com.		3600	IN	A	192.168.1.50

;; Query time: 0 msec
;; SERVER: 192.168.1.110#53(192.168.1.110)
;; WHEN:  5 11 21:37:44 EDT 2018
;; MSG SIZE  rcvd: 111

反向解析庫-配置

主機地址:192.168.1.110

1、編輯反方向解析信息添加配置

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


...
...

zone "1.168.192.in-addr.arpa" IN {      添加
           type master;
           file "172.16.100.zone";
};

2、新建配置文件

~]# vim /var/named/192.168.1.zone

配置信息如下:

$TTL	3600
$ORIGIN	1.168.192.in-addr.arpa;
@	IN	SOA	ns1.magedu.com.	nsadmin.magedu.com. (
        2018051201
        1H
        10M
	3D
	12H )
  IN		NS	ns1.magedu.com.
50	IN	PTR	ns1.magedu.com.
51	IN	PTR	mx1.magedu.com.
52	IN	PTR	mx2.magedu.com.
53	IN	PTR	bbs.magedu.com.
54	IN 	PTR	bbs.magedu.com.
55	IN	PTR	www.magedu.com.

注意序列號位數不可超出限定格式10個數值

修改屬組、語法檢查

1、修改文件屬組

~]# chgrp named /var/named/192.168.1.zone 

2、取消其他用戶權限

~]# chmod o= /var/named/192.168.1.zone

3、檢查語法錯誤

~]# named-checkconf

重載區域配置及測試

1、重載區域

~]# rndc reload

2、測試

[root@localhost named]# dig -x 192.168.1.50 @192.168.1.110



; <<>> DiG 9.9.4-RedHat-9.9.4-51.el7_4.2 <<>> -x 192.168.1.50 @192.168.1.110
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 62861
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;50.1.168.192.in-addr.arpa.	IN	PTR

;; ANSWER SECTION:
50.1.168.192.in-addr.arpa. 3600	IN	PTR	ns1.magedu.com.

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

;; ADDITIONAL SECTION:
ns1.magedu.com.		3600	IN	A	192.168.1.50

;; Query time: 0 msec
;; SERVER: 192.168.1.110#53(192.168.1.110)
;; WHEN:  5 12 01:43:07 EDT 2018
;; MSG SIZE  rcvd: 112

輔 DNS服務器

輔 dns服務器地址:192.168.1.147

安裝 bind

~]# yum -y install bind

1、修改配置文件

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

//
options {
	listen-on port 53 { 127.0.0.1;  192.168.1.147; }; 添加本機地址
...
...
	//allow-query     { localhost; };   關閉
...
...
	recursion no;    關掉

	dnssec-enable no;    關掉
	dnssec-validation no;    關掉
...

2、添加 域

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

...
...
...
zone "magedu.com" IN {                添加正向解析域
      type slave;
      file "slaves/magedu.com.zone";
      masters { 192.168.1.110; };              添加主服務器地址
};

zone "1.168.192.in-addr.arpa" IN {     添加反向解析域
      type slave;
      file "slaves/192.168.1.zone";
      masters { 192.168.1.110; };        
};


3、測試

正向解析-測試
[root@localhost slaves]# dig -t A ftp.magedu.com @192.168.1.147

; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7 <<>> -t A ftp.magedu.com @192.168.1.147
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 52373
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ftp.magedu.com.			IN	A

;; ANSWER SECTION:
ftp.magedu.com.		3600	IN	A	192.168.1.56

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

;; ADDITIONAL SECTION:
ns1.magedu.com.		3600	IN	A	192.168.1.50
ns2.magedu.com.		3600	IN	A	192.168.1.147

;; Query time: 0 msec
;; SERVER: 192.168.1.147#53(192.168.1.147)
;; WHEN:  5 19 03:26:56 EDT 2018
;; MSG SIZE  rcvd: 127
反向解析-測試
[root@localhost slaves]# dig -x 192.168.1.55 @192.168.1.147

; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7 <<>> -x 192.168.1.55 @192.168.1.147
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35517
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 2
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;55.1.168.192.in-addr.arpa.	IN	PTR

;; ANSWER SECTION:
55.1.168.192.in-addr.arpa. 3600	IN	PTR	www.magedu.com.

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

;; ADDITIONAL SECTION:
ns1.magedu.com.		3600	IN	A	192.168.1.50

;; Query time: 0 msec
;; SERVER: 192.168.1.147#53(192.168.1.147)
;; WHEN:  5 19 03:27:21 EDT 2018
;; MSG SIZE  rcvd: 116

子域授權 區域轉發和全局轉發 安全控制 acl、

http://www.bubuko.com/infodetail-1043264.html

子域服務器

子域服務器:192.168.1.103

1、首先在父域主服務器(192.168.1.110)授權給子服務器

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


$TTL    3600
$ORIGIN magedu.com.
@       IN      SOA     ns1.magedu.com. dnsadmin.magedu.com. (
                2018051202   更新序列號
                1H
                10M
                3D
                1D )
        IN          NS        ns1
ops     IN          NS        ns1.ops   添加
        IN          MX     10 mx1
        IN          MX     20 mx2
ns1             IN        A          192.168.1.50
mx1             IN        A          192.168.1.51
mx2             IN        A          192.168.1.52
www             IN        A          192.168.1.53
web             IN        CNAME      www
bbs             IN        A          192.168.1.54
bbs             IN        A          192.168.1.55
ns1.ops         IN        A          192.168.1.103     添加

2、重啟加載配置

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

3、打開子域服務器(192.168.1.103)安裝bind

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

4、添加本機地址

[root@MiWiFi-R3-srv named]# vim /etc/named.conf


options {
	listen-on port 53 { 127.0.0.1; 192.168.1.103; };  添加子域ip地址
...
...
	//allow-query     { localhost; };
...
...
	dnssec-enable no;
	dnssec-validation no;

5、啟動服務并查看運行狀態

[root@MiWiFi-R3-srv named]# systemctl start named.service

[root@MiWiFi-R3-srv named]# systemctl status named.service


[root@MiWiFi-R3-srv named]# ss -tunl
Netid State      Recv-Q Send-Q                                 Local Address:Port                                   Peer Address:Port 
tcp   UNCONN     0      0                                      192.168.1.103:53     查看端口                                  *:*     
tcp   UNCONN     0      0                                          127.0.0.1:53     查看端口                                  *:* ```
6、定義子域信息
```bash
[root@MiWiFi-R3-srv named]# vim /etc/named.rfc1912.zones 

...
...
zone "ops.magedu.com" IN {       添加
        type master;
        file "ops.magedu.com.zone";
};

7、修改配置文件

[root@MiWiFi-R3-srv named]# cat /var/named/

[root@MiWiFi-R3-srv named]# vim ops.magedu.com.zone

$TTL    3600
$ORIGIN ops.magedu.com.
@       IN      SOA     ns1.ops.magedu.com.     nsadmin.ops.magedu.com. (
                2018052101
                1H
                10M
                1D
                1H )
        IN      NS      ns1
ns1     IN      A       192.168.1.103
www     IN      A       192.168.1.103

8、修改配置文件權限并檢測語法錯誤

[root@MiWiFi-R3-srv named]# chgrp named ops.magedu.com

[root@MiWiFi-R3-srv named]# chmod o= ops.magedu.com

[root@MiWiFi-R3-srv named]# named-checkconf

9、子域測試

[root@MiWiFi-R3-srv named]# dig -t A www.ops.magedu.com @192.168.1.110

10、父域測試

[root@MiWiFi-R3-srv named]# dig -t A www.ops.magedu.com @192.168.1.103

子域-區域轉發

1、編輯子域配置信息

[root@MiWiFi-R3-srv named]# vim /etc/named.rfc1912.zones 

...
...
zone "magedu.com" IN {
        type forward;
        forward only;
        forwarders { 192.168.1.110; 192.168.1.147; };
};

2、檢測語法錯誤和重載配置

[root@MiWiFi-R3-srv named]# named-checkconf

[root@MiWiFi-R3-srv named]# rndc reload

3、測試

[root@MiWiFi-R3-srv named]# dig -t A www.magedu.com @192.168.1.103

子域-全局轉發

1、定義配置文件

[root@MiWiFi-R3-srv named]# vim /etc/named.conf

options {
	listen-on port 53 { 127.0.0.1; 192.168.1.103; };
	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";
    forward only;                              添加
	forwarders { 192.168.1.110; };             添加
	//allow-query     { localhost; };

2、檢測語法錯誤并重載配置

[root@MiWiFi-R3-srv named]# named-checkconf

[root@MiWiFi-R3-srv named]# rndc reload

3、測試

[root@MiWiFi-R3-srv named]# dig -t A www.baidu.com @192.168.1.103

acl權限控制

acl:訪問控制列表;把一個或多個地址并歸為一個命名合集,隨后通過此名稱即可對手機全內的所有主機實現統一調用。

注意修改不同的配置文件會有不同的效果:

  • /etc/named.conf 全局生效
  • /etc/named.rfc1912.zones 僅對域生效

使用格式:

acl acl_name {
    ip;
    net/prelen;
};

bind有四個內置的acl權限:

  • none:沒有一個主機;
  • any:任意主機;
  • local:本機;
  • loaclnet:本機所在的ip所屬的網絡;

訪問控制指令:

  • allow-query {}:允許查詢的主機;白名單;
  • allow-transger {}:允許向哪些主機做區域傳送;默認為所有主機;
  • allow-recursion {}:允許哪些主機向當前DNS服務器發起遞歸查詢請求;
  • allow-update {} ;適用于DDNS,允許動態更新區域數據庫文件中內容;

操作示例 : allow-transger {};

主服務器:192.168.1.110

從服務器:192.168.1.147

子域服務器:192.168.1.103

分別在三臺dns服務器上執行

[root@MiWiFi-R3-srv ~]# dig -t axfr magedu.com @192.168.1.110

執行結果都是可執行

1、我們打開主服務器編輯配置文件;

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


acl slaves {
        192.168.1.103;
};                             添加訪問白名單;

options {
        listen-on port 53 { 127.0.0.1; 192.168.1.110; };
...
...

zone "magedu.com" IN {
        type master;
        file "magedu.com.zone";
        allow-transfer { slaves; };     添加訪問權限
};

測試結果

[root@MiWiFi-R3-srv ~]# dig -t axfr magedu.com @192.168.1.110

主服務器 無效
從服務器 無效
子域服務器 有效

操作示例 : allow-recursion {};

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

...
...
acl mynet {
        192.168.1.147;   添加主機
};

options {
        listen-on port 53 { 127.0.0.1; 192.168.1.110; };
...
...
        recursion yes;  刪掉更換成  allow-recursion { mynet; };

測試結果

[root@localhost ~]# dig -t A www.baidu.com @192.168.1.110 無效

[root@MiWiFi-R3-srv ~]# dig -t A www.baidu.com @192.168.1.147 有效

[root@MiWiFi-R3-srv ~]# dig -t A www.baidu.com @192.168.1.103 無效

操作示例 : allow-update {};

編輯從服務器;


[root@MiWiFi-R3-srv ~]# vim /etc/named.rfc1912.zones
...
...
zone "magedu.com" IN {
        type slave;
        file "slaves/magedu.com.zone";
        masters { 192.168.1.110; };
        allow-update { none; };       添加限制權限;
}; 

測試

[root@MiWiFi-R3-srv ~]# dig -t axfr magedu.com @192.168.1.103  被添加了訪問權限 無效

[root@MiWiFi-R3-srv ~]# dig -t axfr ops.magedu.com @192.168.1.103  沒有添加訪問權限 有效

4、搭建并實現智能DNS

bind view(視圖) 實現智能DNS服務器

所謂智能dns服務器;其實就是使用bind的acl功能將訪問者分類,根據不同的分類給與反饋。

操作前還是三臺主機:

  • 主機:192.168.1.110
  • 測試:192.168.1.147
  • 測試:192.168.1.103

配置前準備:

  • 1.關閉防火墻;
  • 2.安裝bind;

1、主機(192.168.1.110)配置信息

設置緩存成緩存服務器并且將測試機器按組添加。

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


acl a {                     添加組 a
        192.168.1.147;
};
 
acl b {                     添加組 b
        192.168.1.103;
};

options {
        listen-on port 53 { 127.0.0.1; 192.168.1.110; };設置緩存服務器
...
...
        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";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

//zone "." IN {                     屏蔽掉
//      type hint;                  屏蔽掉
//      file "named.ca";            屏蔽掉
//};                                屏蔽掉
        
//include "/etc/named.rfc1912.zones";     屏蔽掉
//include "/etc/named.root.key";          屏蔽掉

view a {
        match-clients { a; };
        zone "magedu.com" IN {
                type master;
                file "magedu.com.zone.a";
        };
        zone "." IN {
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.zones";
        include "/etc/named.root.key";
};

view b {
        match-clients { b;};
        zone "magedu.com" IN {
                type master;
                file "magedu.com.zone.b";
        };
        zone "." IN {
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.zones";
        include "/etc/named.root.key";
};

2-1、編輯分組文件 a 的配置文件

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

$TTL    3600
$ORIGIN magedu.com.
@       IN      SOA     ns.magedu.com.  ns.admin.com. (
                2018052501
                1H
                2H
                3H
                4H )
        IN      NS      ns
ns      IN      A       192.168.1.11
www     IN      A       192.168.1.112
ftp     IN      A       192.168.1.113
web     IN      CNAME   www

檢查語法錯誤
[root@localhost named]# named-checkzone magedu.com magedu.com.zone.a 
zone magedu.com/IN: loaded serial 2018052501
OK

2-2、編輯分組文件 b 的配置文件

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

$TTL    3600
$ORIGIN magedu.com.
@       IN      SOA     ns.magedu.com.  ns.admin.com. (
                2018052501
                1H
                2H
                3H
                4H )
        IN      NS      ns
ns      IN      A       192.168.1.22
www     IN      A       192.168.1.222
ftp     IN      A       192.168.1.223
web     IN      CNAME   www

檢查語法錯誤
[root@localhost named]# named-checkzone magedu.com magedu.com.zone.b 
zone magedu.com/IN: loaded serial 2018052501
OK

3-1、測試機(192.168.1.147)


[root@localhost ~]# nslookup
> server 192.168.1.110
Default server: 192.168.1.110
Address: 192.168.1.110#53
> set q=A
> www.magedu.com
Server:		192.168.1.110
Address:	192.168.1.110#53

Name:	www.magedu.com
Address: 192.168.1.112
> web.magedu.com
Server:		192.168.1.110
Address:	192.168.1.110#53

web.magedu.com	canonical name = www.magedu.com.
Name:	www.magedu.com
Address: 192.168.1.112
> 

3-2、測試機 (192.168.1.103)

[root@localhost ~]# nslookup
> server 192.168.1.110
Default server: 192.168.1.110
Address: 192.168.1.110#53
> set q=A
> www.magedu.com
Server:		192.168.1.110
Address:	192.168.1.110#53

Name:	www.magedu.com
Address: 192.168.1.222
> web.magedu.com
Server:		192.168.1.110
Address:	192.168.1.110#53

web.magedu.com	canonical name = www.magedu.com.
Name:	www.magedu.com
Address: 192.168.1.222

參考: 馬哥筆記; 網絡筆記1

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/99322

(2)
N28_剛好遇到小熊貓N28_剛好遇到小熊貓
上一篇 2018-05-25
下一篇 2018-05-25

相關推薦

欧美性久久久久