1、詳細描述一次加密通訊的過程,結合圖示最佳。
SSL協議基礎: SSL協議位于TCP/IP協議與各種應用層協議之間,本身又分為兩層: 1)SSL記錄協議:建立在可靠傳輸層協議(TCP)之上,為上層協議提供數據封裝、壓縮、加密等基本功能。 2)SSL握手協議:在SSL記錄協議之上,用于實際數據傳輸前,通訊雙方進行身份認證、協商加密算法、交換加密密鑰等。 SSL協議通信過程: 1)瀏覽器發送一個連接請求給服務器;服務器將自己的證書(包含服務器公鑰S_PuKey)、對稱加密算法種類及其他相 關信息返回客戶端。 2)客戶端瀏覽器檢查服務器傳送到CA證書是否由自己信賴的CA中心簽發。若是,執行第4步;否則,給客戶一個警告 信息:詢問是否繼續訪問 3)客戶端瀏覽器比較證書里的信息,如證書有效期、服務器域名和公鑰S_PK,與服務器傳回的信息是否一致;如果 一致,則瀏覽器完成對服務器的身份認證. 4)服務器要求客戶端發送客戶端證書(包含客戶端公鑰C_PuKey)、支持的對稱加密方案及其他相關信息。收到 后,服務器進行相同的身份認證,若沒有通過驗證,則拒絕連接; 5)服務器根據客戶端瀏覽器發送到密碼種類,選擇一種加密程度最高的方案,用客戶端公鑰C_PubKey加密后通知 到瀏覽器; 6)客戶端通過私鑰C_prKey解密后,得知服務器選擇的加密方案,并選擇一個通話密鑰Key,接著用服務器公鑰 S_PuKey加密后發送服務器; 7)服務器接收到的瀏覽器傳送到消息,用私鑰S_PrKey解密,獲得通話密鑰key。 8)接下來的數據傳輸都使用該對稱密鑰Key進行加密。 上面所述的是雙向認證SSL協議的具體通訊過程,服務器和用戶雙方必須都有證書。由此可見,SSL協議是通過非對稱 密鑰機制保證雙方身份認證,并完成建立連接,在實際數據通信時通過對稱密鑰機制保障數據安全性。
2、描述創建私有CA的過程,以及為客戶端發來的證書請求進行辦法證書。
配置文件:/etc/pki/tls/openssl.cnf 1)創建所需要的文件 [root@Server ~]# cd /etc/pki/CA [root@Server CA]# touch index.txt [root@Server CA]# echo 01 > serial 2)CA自簽證書 [root@Server CA]# (umask 077;openssl genrsa -out private/cakey.pem 2048) [root@Server CA]# openssl req -new -x509 -key private/cakey.pem -days 7300 -out cacert.pem -new:生成新證書簽署請求; -x509:專用于CA生成自簽證書; -key:生成請求時用到的私鑰文件; -days n:證書的有效期限; -out /PATH/TO/SOMECERTFILE:證書的保存路徑 3)發證 (a)客戶端生成證書請求 [root@Client ~]# mkdir /etc/httpd/ssl [root@Client ~]# (umask 077;openssl genrsa -out /etc/httpd/ssl/httpd.key 2048) [root@Client ~]# cd /etc/httpd/ssl/ [root@Client ssl]# openssl req -new -key httpd.key -days 365 -out httpd.csr (b)把請求文件傳輸給CA [root@Client ssl]# scp httpd.csr 192.168.1.61:/tmp/ (c)CA簽署證書,并將證書發還給請求者 [root@Server CA]# openssl ca -in /tmp/httpd.csr -out /etc/pki/CA/certs/httpd.crt -days 365 [root@Server CA]# scp /etc/pki/CA/certs/httpd.crt 192.168.1.62:/etc/httpd/ssl/
3、描述DNS查詢過程以及DNS服務器類別。
DNS查詢過程: 1)瀏覽器緩存 當用戶通過瀏覽器訪問某域名時,瀏覽器首先會在自己的緩存中查找是否有該域名對應的IP地址(若曾經訪問過該域名且 沒有清空緩存便存在) 2)系統緩存 當瀏覽器緩存中無域名對應IP則會自動檢查用戶計算機系統中hosts(linux:/etc/hosts, Windows: C:\Windows\System32\drivers\etc\hosts)文件中是否有該域名對應的IP 3)路由器緩存 當瀏覽器及系統緩存中均無域名對應IP則進入路由器緩存中檢查,以下三步均為客戶端的DNS緩存 4)ISP(互聯網服務提供商)DNS緩存 當在客戶端查找不到域名對應IP地址,則將進入ISP DNS緩存中進行查詢。如果用的是電信網絡,則會進入電信的 DNS緩存服務器中進行查找。 5)根域名服務器 如果以上均為完成,則進入根服務器進行查詢。全球13臺根域名服務器,1個主根服務器,12個輔根域名服務器。根域名 收到請求后會查詢區域文件記錄,若無則將其管轄范圍內的頂級域名(.com)服務器IP地址告訴本地DNS服務器; 6)頂級域名服務器 頂級域名服務器收到請求后查看區域文件記錄,或無則將其管轄范圍內主域名服務器的IP地址告訴本地DNS服務器; 7)二級域名服務器 主域名服務器接受到請求后查詢自己的緩存,如果沒有則進入下一級域名服務器進行查詢,重復該步驟直到找到正確刻錄; 8)保存結果至緩存 本地域名服務器把返回的結果保存到緩存,以備下一次使用,同時將該結果反饋給客戶端,客戶端通過這個IP地址與 web服務器建立鏈接。 DNS服務器類別: 1)主DNS服務器:維護所負責解析的域內解析庫服務器;解析庫由本地管理員管理維護。 2)輔助DNS服務器:從主DNS服務器或其它的從DNS服務器那里“復制”(區域傳遞)一份解析庫。 3)緩存DNS服務器: 可運行域名服務器軟件但沒有域名數據庫。它從某個遠程服務器取得每次域名服務器的查詢回答,一旦獲取一個答案, 就將它放在高速緩存中,以后查詢相同信息時就用它予以回答。緩存域名服務器不是權威性服務器,因為提供的 所有信息都是間接信息。 4)轉發器: 負責所有非本地域名的本地查詢。轉發域名服務器接到查詢請求時,在其緩存中查找,如果找不到就把請求依次轉發到 指定的域名服務器,直到查詢到結果為止,否則返回無法查找到結果
。
4、搭建一套DNS服務器,負責解析magedu.com域名(自行設定主機名及IP)
(1)、能夠對一些主機名進行正向解析和逆向解析;
(2)、對子域cdn.magedu.com進行子域授權,子域負責解析對應子域中的主機名;
(3)、為了保證DNS服務系統的高可用性,請設計一套方案,并寫出詳細的實施過程
[root@Master ~]# yum -y install bind 常用的配置文件有: /etc/named.conf#主配置文件 /etc/named.rfc1912.zones#區域配置文件 /etc/rc.d/init.d/named#啟動腳本 /var/named#存放區域數據文件 [root@Master ~]# 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 { 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"; }; logging { channel default_debug { file "data/named.run"; severity dynamic; }; }; zone "." IN { type hint; file "named.ca"; }; include "/etc/named.rfc1912.zones"; listen-on port 53 { any; };表示監聽本地IP的53端口,允許所用地址訪問本地53端口 allow-query { any; };允許所有地址查詢 recursion yes;是否遞歸,如果是no那么這臺DNS服務器將不會遞歸解析,yes或注釋掉不寫,表是允許,默認是允許的 include "/etc/named.rfc1912.zones";加載區域配置文件 正向和反向區域解析 [root@Master ~]# vim /etc/named.rfc1912.zones 在配置文件的末尾添加正向和反向配置 zone "magedu.com" IN { type master; file "magedu.com.zone"; allow-transfer { 192.168.1.65; }; }; zone "1.168.192.in-addr.arpa" IN { type master; file "1.168.192.zone"; allow-transfer { 192.168.1.65; }; }; allow-transfer { 192.168.1.65; };表示只允許192.168.1.65這個主機同步數據,也就是作它的輔助DNS, 多個IP用“;”隔開; 編輯正向解析的zone文件 [root@Master ~]# vim /var/named/magedu.com.zone $TTL 86400 $ORIGIN magedu.com. @ IN SOA ns1.magedu.com. admin.magedu.com. ( 2016092101 1H 5M 7D 1D ) IN NS ns1 IN NS ns2 IN MX 10 mx1 IN MX 20 mx2 IN A 192.168.1.64 ns1 IN A 192.168.1.64 ns2 IN A 192.168.1.65 mx1 IN A 192.168.1.66 mx2 IN A 192.168.1.67 www IN A 192.168.1.64 www IN A 192.168.1.65 ftp IN CNAME www 反向解析zone文件 [root@Master ~]# vim /var/named/1.168.192.zone $TTL 86400 $ORIGIN 1.168.192.in-addr.arpa. @ IN SOA ns1.magedu.com. admin.magedu.com. ( 2016092101 1H 5M 7D 1D ) IN NS ns1.magedu.com. IN NS ns2.magedu.com. 64 IN PTR ns1.magedu.com. 65 IN PTR ns2.magedu.com. 66 IN PTR mx1.magedu.com. 67 IN PTR mx2.magedu.com. 64 IN PTR www.magedu.com. 65 IN PTR www.magedu.com. [root@Master ~]# service named start 正向解析: [root@Master ~]# dig @192.168.1.64 www.magedu.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> @192.168.1.61 www.magedu.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54957 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;www.magedu.com. IN A ;; ANSWER SECTION: www.magedu.com. 86400 IN A 192.168.1.64 www.magedu.com. 86400 IN A 192.168.1.65 ;; AUTHORITY SECTION: magedu.com. 86400 IN NS ns1.magedu.com. magedu.com. 86400 IN NS ns2.magedu.com. ;; ADDITIONAL SECTION: ns1.magedu.com. 86400 IN A 192.168.1.64 ns2.magedu.com. 86400 IN A 192.168.1.65 ;; Query time: 0 msec ;; SERVER: 192.168.1.61#53(192.168.1.64) ;; WHEN: Mon Sep 26 21:15:11 2016 ;; MSG SIZE rcvd: 132 反向解析 [root@Master ~]# dig -x 192.168.1.64 @192.168.1.64 ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -x 192.168.1.64 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 23623 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;64.1.168.192.in-addr.arpa. IN PTR ;; ANSWER SECTION: 64.1.168.192.in-addr.arpa. 86400 IN PTR ns1.magedu.com. ;; AUTHORITY SECTION: 1.168.192.in-addr.arpa. 86400 IN NS ns2.magedu.com. 1.168.192.in-addr.arpa. 86400 IN NS ns1.magedu.com. ;; ADDITIONAL SECTION: ns1.magedu.com. 86400 IN A 192.168.1.64 ns2.magedu.com. 86400 IN A 192.168.1.65 ;; Query time: 0 msec ;; SERVER: 192.168.1.64#53(192.168.1.64) ;; WHEN: Wed Sep 21 21:56:14 2016 ;; MSG SIZE rcvd: 135 配置主從同步 [root@Slave ~]# vim /etc/named.rfc1912.zones 在末尾添加 zone "magedu.com" IN { type slave; masters { 192.168.1.64; }; file "slaves/magedu.com.zone"; allow-transfer { none; }; }; zone "1.168.192.in-addr.arpa" IN { type slave; masters { 192.168.1.64; }; file "slaves/1.168.192.zone"; allow-transfer { none; }; }; 批定type類型為slave,并指定主服務器為192.168.1.64 [root@Slave ~]# service named start 服務啟動后,會在/var/named/slaves/自動添加magedu.com.zone和1.168.192.zone文件 [root@Slave ~]# ll /var/named/slaves/ 總用量 8 -rw-r--r-- 1 named named 436 9月 26 22:13 1.168.192.zone -rw-r--r-- 1 named named 502 9月 26 22:13 magedu.com.zone 子域授權 新增一臺IP為192.168.1.61的服務器為子域 在父域的區域文件中添加NS和A記錄 [root@Server ~]# vim /var/named/magedu.com.zone 添加 cdn IN NS ns1.cdn.magedu.com. ns1.cdn IN A 192.168.1.61 [root@cdn ~]# yum -y install bind [root@cdn ~]# scp 192.168.1.64:/etc/named.conf /etc/ [root@cdn ~]# vim /etc/named.rfc1912.zones 在末尾添加 zone "cdn.magedu.com" IN { type master; file "cdn.magedu.com.zone"; }; zone "magedu.com" IN { type forward; forward only; forwarders { 192.168.1.64; }; }; [root@cdn ~]# vim /var/named/cdn.magedu.com.zone $TTL 86400 @ IN SOA ns.cdn.magedu.com. admin.cdn.magedu.com. ( 2016092201 2H 5M 7D 12H ) IN NS ns.cdn.magedu.com. IN MX 10 mx1.cdn.magedu.com. IN A192.168.1.61 ns IN A 192.168.1.61 mx1 IN A 192.168.1.61 www IN A 192.168.1.61 測試 1)子域測試 [root@Cdn ~]# dig @192.168.1.61 www.cdn.magedu.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> @192.168.1.65 www.cdn.magedu.com ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33720 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;www.cdn.magedu.com. IN A ;; ANSWER SECTION: www.cdn.magedu.com. 86400 IN A 192.168.1.61 ;; AUTHORITY SECTION: cdn.magedu.com. 86400 IN NS ns.cdn.magedu.com. ;; ADDITIONAL SECTION: ns.cdn.magedu.com. 86400 IN A 192.168.1.61 ;; Query time: 0 msec ;; SERVER: 192.168.1.65#53(192.168.1.61) ;; WHEN: Mon Sep 26 22:16:44 2016 ;; MSG SIZE rcvd: 85 2)父域測試 [root@Cdn ~]# dig -t www.magedu.com ;; Warning, ignoring invalid type www.magedu.com ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6 <<>> -t www.magedu.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27354 ;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;. IN NS ;; ANSWER SECTION: . 518239 IN NS b.root-servers.net. . 518239 IN NS i.root-servers.net. . 518239 IN NS j.root-servers.net. . 518239 IN NS k.root-servers.net. . 518239 IN NS l.root-servers.net. . 518239 IN NS e.root-servers.net. . 518239 IN NS h.root-servers.net. . 518239 IN NS f.root-servers.net. . 518239 IN NS c.root-servers.net. . 518239 IN NS m.root-servers.net. . 518239 IN NS d.root-servers.net. . 518239 IN NS a.root-servers.net. . 518239 IN NS g.root-servers.net. ;; Query time: 0 msec ;; SERVER: 192.168.1.61 #53(192.168.1.65) ;; WHEN: Mon Sep 26 22:18:26 2016 ;; MSG SIZE rcvd: 228
原創文章,作者:N21-天天,如若轉載,請注明出處:http://www.www58058.com/49545
總結性很好,但是能全部做完就更好了