天天看點

dns解析及安全

1、DNS系統

DNS是英文Domain Name System(域名系統)的縮寫,它是一種可以将域名和IP位址互相映射的以層次結構分布的資料庫系統,為網際網路的運作提供關鍵性的基礎服務。各種基于域名的Web通路,email系統、檔案共享系統等都依靠DNS服務得以正常實作。DNS系統采用備份技術和緩存技術保證了資料庫運作的可靠性和服務速率。

2、DNS服務原理

DNS系統采用遞歸查詢請求的方式來響應使用者的查詢。

dns解析及安全

1)使用者向DNS 用戶端發送DNS請求,用戶端先檢視本地緩存,如果緩存中有該域名,則直接傳回給使用者;用戶端若沒有域名的相關緩存,則向本地域名伺服器提出解析請求。

2)本地域名伺服器在收到請求後,先檢視緩存,若緩存中有相關記錄,則應答用戶端的請求;否則,本地域名伺服器直接向根域名伺服器提出請求。

3)根域名伺服器接到請求後,将包含有所需解釋的域名的頂級域名伺服器傳回給本地域名伺服器。

4)本地域名伺服器根據根域名伺服器的傳回結果,向頂級域名伺服器發送請求。

5)頂級域名伺服器接到請求後,将包含所查詢的域名的域名伺服器傳回給本地域名伺服器。

6)本地域名伺服器根據傳回結果連接配接包含域名的域名伺服器,得到查詢結果,

然後将查詢結果緩存,并向用戶端應答。

7)用戶端接到應答後,将查詢結果緩存,然後向使用者應答。

二、安全威脅

DNS的安全威脅主要可分為幾種:DNS欺騙、分布式拒絕服務攻擊、DNS軟體漏洞攻擊、管理缺陷等。下面分别對這幾類攻擊進行介紹。

DNS協定的相關資料結構

DNS資料報:

typedef struct dns

{

 unsigned short id;

 //辨別,通過它用戶端可以将DNS的請求與應答相比對;

 unsigned short flags;

 //标志:[QR | opcode | AA| TC| RD| RA | zero | rcode ]

 unsigned short quests;

 //問題數目;

 unsigned short answers;

 //資源記錄數目;

 unsigned short author;

 //授權資源記錄數目;

 unsigned short addition;

 //額外資源記錄數目;

}DNS,*PDNS;

在16位的标志中:QR位判斷是查詢/響應封包,opcode差別查詢類型,AA判斷是否為授權回答,TC判斷是否可截斷,RD判斷是否期望遞歸查詢,RA判斷是否為可用遞歸,zero必須為0,rcode為傳回碼字段。

DNS查詢資料報:

typedef struct query

 unsinged char *name;

 //查詢的域名,這是一個大小在0到63之間的字元串;

 unsigned short type;

 //查詢類型,大約有20個不同的類型

 unsigned short classes;

 //查詢類,通常是A類既查詢IP位址。

}QUERY,*PQUERY;

DNS響應資料報:

typedef struct response

 unsigned short name;

 //查詢的域名

 //查詢類型

 //類型碼

 unsigned int  ttl;

 //生存時間

 unsigned short length;

 //資源資料長度

 unsigned int  addr;

 //資源資料

}RESPONSE,*PRESPONSE;

1、DNS欺騙

我們可以看到,在DNS資料報頭部的id(辨別)是用來比對響應和請求資料報的。現在,讓我們來看看域名解析的整個過程。用戶端首先以特定的辨別向DNS伺服器發送域名查詢資料報,在DNS伺服器查詢之後以相同的ID号給用戶端發送域名響應資料報。這時用戶端會将收到的DNS響應資料報的ID和自己發送的查詢資料報ID相比較,如果比對則表明接收到的正是自己等待的資料報,如果不比對則丢棄之。

  假如我們能夠僞裝DNS伺服器提前向用戶端發送響應資料報,那麼用戶端的DNS緩存裡域名所對應的IP就是我們自定義的IP了,同時用戶端也就被帶到了我們希望的網站。條件隻有一個,那就是我們發送的ID比對的DSN響應資料報在DNS伺服器發送的響應資料報之前到達用戶端。下圖清楚的展現了DNS ID欺騙的過程:

Client <--response--| . . . . . .. . . . . . . . . . DNS Server

          |<--[a.b.c == 112.112.112.112]-- Your Computer

到此,我想大家都知道了DNS ID欺騙的實質了,那麼如何才能實作呢?這要分兩種情況:

  1. 本地主機與DNS伺服器,本地主機與用戶端主機均不在同一個區域網路内,方法有以下幾種:向用戶端主機随機發送大量DNS響應資料報,命中率很低;向DNS伺服器發起拒絕服務攻擊,太粗魯;BIND漏洞,使用範圍比較窄。

  2. 本地主機至少與DNS伺服器或用戶端主機中的某一台處在同一個區域網路内:我們可以通過ARP欺騙來實作可靠而穩定的DNS ID欺騙,下面我們将詳細讨論這種情況。

1、DNS ID欺騙

DNS ID欺騙中的攻擊者必須跟使用者處于同一個區域網路内。

攻擊流程:

1)Arp欺騙。欺騙者向使用者發送僞造的arp應答封包,更新使用者本地的arp緩存,使使用者認為欺騙者為網關。這樣,在使用者向本地DNS伺服器發送請求時,資料的流向就改為使用者—欺騙者—網關—本地DNS伺服器。欺騙者通過sniffer軟體,嗅探到DNS請求包的ID和端口号。

2)欺騙者利用得到的ID和端口号,優先向使用者發送僞造DNS應答,使用者在對ID和端口号進行核對後認為是正确的應答。此時使用者通路的域名已經被替換為欺騙者僞造的IP。

3)本地DNS伺服器發送的真的DNS應答包因為晚于僞造包,使用者收到後丢棄。至此,DNS ID欺騙攻擊完成。

2、DNS緩存中毒

在介紹攻擊原理和過程之前首先來介紹一下 DNS 工作的過程。DNS 被設計成客戶 - 伺服器應用程式,需要把位址映射為名字或把名字映射為位址的主機需要調用 DNS 解析程式,向最近的 DNS 伺服器發出查詢請求,此時,DNS 伺服器可以有兩種方式來響應客戶的請求,一種叫遞歸解析,另一種叫疊代解析。DNS 緩存中毒攻擊主要是針對遞歸解析方式工作并緩存非本域的解析結果的 DNS 伺服器。

  當攻擊者與使用者不是處于同一個區域網路時,攻擊者無法得到DNS請求封包的ID與端口号,“生日攻擊”就是在這種情況下的對DNS緩存的一種攻擊方式。

(1)應用程式需要解析一個域名時,會向本機上的 DNS用戶端--解析程式發起域名解析的請求,解析程式收到應用程式的請求後會代表應用程式向首選 DNS 伺服器 DNS1 發起

域名解析請求;

(2)DNS1 收到解析請求後會去查詢自己的管轄域,如果請求的是自己管轄域的域名就會直接将查詢結果傳回給解析程式,進而傳遞給應用程式,如果不在 DNS1 的管轄域内,

DNS1 就向它的上級伺服器 DNS2 發起解析請求,等待 DNS2的查詢結果;

(3)如果 DNS2 解析不了,就會告訴 DNS1,我解析不了,但是我知道 DNS3 可能會知道,你去問問 DNS3 看看;

(4)DNS1 就會給 DNS3 發出解析請求,等到 DNS3 的查詢結果;

(5)如果 DNS3 可以解析,那麼就告訴 DNS1 解析結果,如果 DNS3 也解析不了,那麼 DNS3 也會像 DNS2 那樣,告訴DNS 它所知道的某個 DNS 可能會知道;

(6)最後,DNS1 又向 DNS4 發出查詢請求,等待查詢結果;

(7)DNS4 可以解析該域名,就發送一個相應包給 DNS1解析結果;

(8)DNS1收到解析結果後就會将結果發送給用戶端的解析程式,并将解析結果儲存在自己的緩存中,以便以後再有請求解析該域名時,就可以直接從緩存中得到解析的結果,

提高效率。至此,整個解析過程就結束了。

在 DNS1 發出的查詢請求中會包含一個 TID,用來表示某個查詢,在收到的響應資料包中也同樣會包括 TID,表示是對某個 TID 查詢請求的結果響應,DNS1 會根據 TID 來判斷是它發出的某個請求的響應。

DNS 伺服器不是收到的任何 DNS 響應資料包都會接受的,它會解碼資料包,檢查資料包是否符合接受的标準,那DNS 伺服器檢查資料包中的哪些資料來判斷該資料包是不是它所希望的包呢?

(1)響應資料包中目的端口

在 DNS 伺服器發出的查詢請求包中包含了它的 UDP 端口号,對方收到該資料包後傳回的響應資料包中的目的端口号就應該為 DNS 伺服器發出包的源 UDP 端口号,如果收到資料包中的目的端口号不對,就說明不是對 DNS 伺服器發出的請求的響應,是以,網絡協定棧就會直接丢棄該資料包,而不會将資料包傳遞到 DNS 伺服器。

(2)響應資料包中的問題域

當給某個查詢請求資料包發回響應資料包時,DNS 伺服器會拷貝請求資料包中的問題域,是以 DNS 伺服器收到響應資料包後就可以通過檢查問題域是否與發出的查詢包中的問題域是否一緻來判斷響應資料包的合法性。舉個例子,DNS1 向 DNS2發出問題域是 www.nsfocus.com 的請求資料包,詢問 www.nsfocus.com 的IP位址,DNS1不能将問題域為www.baidu.com 的響應資料包中的位址做為查詢域名為www.nsfocus.com的位址的回答。當出現這樣的情況伺服器就會丢棄該資料包。

(3)響應資料包中的查詢 ID(TID)

DNS 伺服器沒發出一個查詢請求都會配置設定對應的一個查詢 ID 号,在内部對應是某一個域名查詢請求,在 DNS 伺服器内部區分不同的查詢就要 TID 号,如果 DNS 伺服器收到的響應資料包中的 TID 号不在 DNS 伺服器等待響應資料的 TID中,就表示 DNS 伺服器收到的響應資料包不是回答自己發出的查詢請求的,伺服器就會丢棄該資料包。

(4)響應資料包中的授權域和附加域

授權域和附加域中的域名必須和問題域中的域名是同屬于某個域名下的子域名。

如果上述所有條件都滿足了,DNS 域名伺服器就會接受該響應資料包是對它發出的某個查詢請求的響應,使用相應資料包中的資料,并緩存結果。

如果某個攻擊者可以預測和僞造響應資料包,他就可以對 DNS 伺服器發起緩存中毒攻擊了。由于 DNS 伺服器發送的資料包中的 TID 隻有 16 位,而且大部分的 DNS 實作發出的請求中的源端口都是固定不變的。是以,攻擊者就可以僞造DNS 響應包,DNS 伺服器在收到響應包後就會将解析結果儲存在自己的緩存中,進而實作了緩存中毒攻擊。值得注意的是當 DNS 伺服器收到了不是它所希望的的資料包時,它就會簡單的丢棄資料包,是以,攻擊者就不必每次都需要猜對所有的資料,可以發送許多包猜測一些關鍵的

參數。

由于 DNS 伺服器發出的請求包中的源端口都是固定的,是以,攻擊者就可以向攻擊目标發送一個精心構造的域名請求,通過上述的遞歸解析,最終攻擊目标就會向攻擊者控制

的 DNS 伺服器發出查詢請求,此時,攻擊者就可以通過抓包來得到攻擊目标發出查詢請求時所用的 UDP 端口是多少。接下來就是猜測目标 DNS 伺服器查詢包中的 TID 了。由于一些DNS 實作使用了簡單的 TID 生成算法,如,簡單的加一,這樣就可以預測 DNS 伺服器下一個查詢請求會使用的 TID 了,攻擊者就可以向目标伺服器發送大量的帶預測 TID 的請求響應包來命中目标伺服器的查詢請求,在目标伺服器接收了僞造的響應包後,就會将僞造包中的響應資料存儲在自己的緩存中,到此 DNS 緩存中毒就算成功了。

攻擊流程如下:

1、  攻擊者向DNS伺服器發送一定數量的DNS請求包,請求的DNS選擇該DNS伺服器解析不了的,這樣的情況下,DNS伺服器會向上層DNS伺服器發出相同數量的請求。

2、  攻擊者快速向DNS伺服器發送一定數量的僞造的DNS應答包,其中ID和端口号為随機的,當ID和端口号與正确的相碰撞時,緩存攻擊成功。DNS伺服器将錯誤的DNS解析項緩存,這樣,所有DNS請求都将導向攻擊者僞造的IP位址。

“生日悖論”的數學模型可以證明,一次成功的攻擊所需發送僞造包的數量并不多,即是說“生日攻擊”是易于發動,也易于成功的。

2、分布式拒絕服務攻擊

DNS放大攻擊的基本原理

DNS 放大攻擊是一種新型的拒絕服務攻擊,攻擊者利用僵屍網絡中大量的被控主機,僞裝成被攻擊主機,在特定的時間點上,連續向多個允許遞歸查詢的 DNS 伺服器發送大量

的 DNS 查詢請求,迫使其提供應答服務,經 DNS 伺服器放大後的大量應答資料發送到被攻擊主機,形成攻擊流量,導緻其無法提供正常服務甚至癱瘓。

如圖 2 所示,要實作這種攻擊,攻擊者首先要找到支援遞歸查詢的第三方 DNS 伺服器并向其發送一個查詢請求,這台DNS 伺服器随後會把這個查詢按照遞歸的原則發送給其他 DNS伺服器。之後攻擊者會向這些伺服器發送一個 DNS 記錄查詢,在這些 DNS 伺服器上存儲一個文本記錄用于進行放大攻擊,接着攻擊者會以被攻擊者的 IP 位址向這些伺服器發送帶有 EDNS選項的 DNS 查詢資訊,這些第三方 DNS 伺服器會使用經過放大的文本進行回複,用大量的 UDP 資料包淹沒被攻擊者。

2.3 DNS放大攻擊的特點

2.3.1充分利用DNS伺服器的特性

DNS 自身的特性決定了它可以被利用作為“攻擊放大器”進行 DDOS 攻擊。一是 DNS 協定自身的弱點導緻 DNS 查詢請求封包及查詢應答封包均可被僞造,網絡攻擊者可以通過構造虛假的源位址僞裝成被攻擊主機向 DNS 伺服器發送 DNS查詢請求,同時還可以隐藏攻擊者的身份 ;二是 DNS 伺服器對 DNS 查詢請求是“有求必應”,并且無法判斷一個 DNS 查詢請求是否為惡意攻擊 ;三是 DNS 伺服器解析域名時,應答封包比查詢封包要大,可以實作放大攻擊的效果。

2.3.2 攻擊流量大

2005 年之前,攻擊者能夠向 DNS 伺服器發出 60 個位元組的查詢資訊,收到 512 個位元組的回應資訊,使通訊量放大 8.5倍。随着對 DNS 協定的深入研究,攻擊者發現利用具有遞歸

查詢功能的 DNS 伺服器可以把 DNS 回應資料放大到 66 倍 [2] 。如果數以萬計的計算機,僞裝成被攻擊主機同時向 DNS 伺服器連續發送大量的 DNS 請求資料包,由 DNS 伺服器傳回的應答資料流量成倍放大,甚至能夠超過每秒鐘 100GB,這對被攻擊主機來說是緻命的攻擊行為。

2.3.3 可以依靠僵屍網絡發動攻擊

網際網路中存在着大量的僵屍網絡,為實施 DNS 放大攻擊提供了便利條件。網絡攻擊者可以利用僵屍網絡中大量的被控主機,在特定的時間點上,連續向 DNS 伺服器發送大量的請求引發 DNS 解析過程,可以形成極大的攻擊流量,同時具有極強的隐蔽性。

攻擊者通過控制的“僵屍網絡”(成百上千的被控主機群)向目标DNS伺服器發送DNS查詢請求,進而導緻目标DNS伺服器過載以及網絡線路堵塞。進而形成分布式拒絕服務攻擊。

著名的“暴風影音DNS攻擊”事件就是分布式拒絕服務攻擊的一個執行個體。

3、軟體漏洞攻擊

1、  DoS(Deny of Service)攻擊

利用DNS軟體的漏洞,如9.2.0版本以前的BIND,向正在運作的BIND裝置發送特定的DNS資料包請求,BIND會自動關閉,使用者的請求将無法得到DNS伺服器的任何應答,使用者也将無法通路網際網路,進而形成DoS攻擊。

2、  緩沖區溢出攻擊

利用DNS軟體對輸入的請求字元串不做做嚴格的檢查的安全漏洞,攻擊者構造特殊的資料包攻擊DNS伺服器,以期造成DNS軟體的緩沖區溢出,在溢出成功後,通過執行特殊的代碼獲得進階的權限,進而得到DNS伺服器的控制權。

4、管理缺陷

DNS現有的管理、配置以及安全機制的規劃都非常有限,甚至還很初級。例如目前全球DNS系統仍然主要依賴多點鏡像、負載均衡等方法來應對流量突發通路以及遭受DDOS攻擊時保持正常運轉。另外對DNS的管理和配置以及安全防護也主要依賴管理者的實際經驗。

作為網際網路關鍵基礎設施的DNS,目前仍然存在4個方面的主要問題:

技術方面:RFC1035規定DNS協定基于UDP,最長隻能是512位元組,全球最多隻能有13台根伺服器,IP分片難以處理,DNSSEC和IPv6也難以支援等。解決的方案提出了兩個,一是雖然做了ENDS0的擴充但實際應用的很少,二是鼓勵基于TCP的DNS但可能會帶來更大的問題。其他的問題還有緩沖區投毒,無法知道非法的gTLD(通用頂級域)和ccTLD而導緻的根伺服器污染,UDP的欺騙攻擊,DNSSEC中的根密鑰管理和更新問題等,與IPv6共存時DNS串行解析增加的新延遲,利用相似字元進行網絡釣魚等。

實作方面:常用的名字伺服器軟體(BIND和Windows)曆史上有一些可以被利用的安全漏洞,可用來做投毒、中間人攻擊和DOS攻擊等,尤其是在遞歸解析時。另外,由于無效TLD、重複解析和源位址錯誤(如RFC1918)等,根伺服器上75%-98%的流量實際上是沒必要的,缺少緩存、UDP缺乏循環監測機制和anycast以及超額部署DNS,都污染了DNS。另外,WEB浏覽器也喜歡為應用增加一些沒法解析的名字上去。

營運方面:如不合格的代理機構,網絡的差異性,開放的解析軟體,沒有SOA,名字伺服器複雜的互相依賴,TTL的設定,名字空間的随意擴充,把DNS當作負載均衡技術用等。

注冊方面:注冊相當亂。

三、解決方案

應對上述DNS安全威脅的主要辦法可總結如下:

防範Arp攻擊、采用UDP随機端口、建立靜态IP映射、運作最新版本的BIND、限制查詢、利用防火牆進行保護、利用交叉檢驗、使用TSIG機制、利用DNSSEC機制。

下面分别做出說明。

1、防範Arp攻擊

主要是針對區域網路的DNS ID欺騙攻擊。如上所述,DNS ID欺騙是基于Arp欺騙的,防範了Arp欺騙攻擊,DNS ID欺騙攻擊是無法成功實施的。

2、采用UDP随機端口

不再使用預設的53端口查詢,而是在UDP端口範圍内随機選擇,可使對ID與端口組合的猜解難度增加6萬倍,進而降低使DNS緩存攻擊的成功率。

3、建立靜态IP映射

主要是指DNS伺服器對少部分重要網站或經常通路的網站做靜态映射表,使對這些網站的通路不再需要經過緩存或者向上一級的疊代查詢,進而在機制上杜絕DNS欺騙攻擊。(就是添加主機記錄)

4、運作最新版本的BIND

使用最新版本的BIND,可以防止已知的針對DNS軟體的攻擊(如DoS攻擊、緩沖區溢出漏洞攻擊等)。應密切關注BIND安全公告,及時打好更新檔。

5、限制查詢

在BIND8和BIND9之後,BIND的allow-query子句允許管理者對到來的查詢請求使用基于IP位址的控制政策,通路控制清單可以對特定的區甚至是對該域名伺服器受到的任何查詢請求使用限制政策。如限制所有查詢、限制特定區的查詢、防止未授權的區的查詢、以最少權限運作BIND等。http://www.nsfocus.net/vulndb/16089 

6、利用防火牆進行保護

這種保護方式可以使受保護的DNS伺服器不緻遭受分布式拒絕服務攻擊、軟體漏洞攻擊。原理是在DNS伺服器主機上建立一個僞DNS伺服器供外部查詢,而在内部系統上建立一個真實的DNS伺服器專供内部使用。配置使用者的内部DNS客戶機,用于對内部伺服器的所有查詢,當内部主機通路某個網站時,僅當内部DNS伺服器上沒有緩存記錄時,内部DNS才将查詢請求發送到外部DNS伺服器上,以保護内部伺服器免受攻擊。

7、利用交叉檢驗

這種保護方式可以從一定程度上防範DNS欺騙攻擊。原理是反向查詢已得到的IP位址對應的主機名,用該主機名查詢DNS伺服器對應于該主機名的IP位址,如果一緻,則請求合法,否則非法。

8、使用TSIG機制

DNS 的事務簽名分為 TSIG (Transaction Signatures) 與 SIG0 (SIGnature)兩種。該如何選擇呢? 首先,要先判斷用戶端與伺服器間的信任關系為何,若是可信任者,可選擇對稱式的 TSIG。TSIG 隻有一組密碼,并無公開/私密金鑰之分;若是非完全信任者,可選擇非對稱式金鑰的 SIG0,雖有公開/私密金鑰之分,相對的,設定上也較複雜。至于要選用哪種較适合,就由自己來判斷。通常區帶傳輸是主域名伺服器到輔助域名伺服器。通常 在主域名伺服器配置檔案/etc/named.conf的dns-ip-list的通路控制清單(ACL,access control list)會列出一些IP位址,它們隻能為主域進行傳輸區帶資訊。

1.TSIG技術

交易簽章 (TSIGRFC 2845),是為了保護 DNS安全而發展的。從BIND 8.2版本開始引入 TSIG 機制,其驗證 DNS 訊息方式是使用共享金鑰 (Secret Key) 及單向雜湊函式(One-way hash function) 來提供訊息的驗證和資料的完整性。主要針對區帶傳輸(ZONE Transfer)進行保護的作用,利用密碼學編碼方式為通訊傳輸資訊加密以保證 DNS 訊息的安全,特别是響應與更新的訊息資料。也就是說在DNS伺服器之間進行轄區傳送時所提供保護的機制,以確定傳輸資料不被竊取及監聽。

2.SIG0 技術簡介

    SIG0是一九九九年三月 由 IBM公 司的D. Eastlake 提出成為标準。其是利用公開金鑰機制為轄區資料進行數字簽章的動作,以保證每筆傳輸的 source record 具有可驗證性與不可否認性。實際上 SIG0 才是防止 DNS Spoofing 發生最主要的技術,SIG0 是使用公開金鑰加密法,讓轄區管理者為其轄區資料加上數字簽章,由此證明轄區資料的可信賴性。除此之外,SIG0 保有是否選擇認證機制的彈性,以及可靈活地配合自訂的安全機制。

9、利用DNSSEC機制

為保證客戶機發送的解析請求的完整性,保護DNS伺服器及其中的資訊,防止入侵者冒充合法使用者向他人提供虛假DNS資訊,IETF(網絡工程任務組)提出了DNS安全擴充(DNSSEC)的安全防範思想。

   1、 DNSSEC工作原理

為提高DNS通路資料包的安全性,DNSSEC在相容現有協定的基礎上引入加密和認證體系,在每個區域都有一對區域級的密鑰對,密鑰對中的公鑰對域名記錄資訊進行數字簽名,進而使支援DNSSEC的接收者可以校驗應答資訊的可靠性。

BIND9.0支援DNS的安全擴充功能…。DNSSEC引入兩個全新的資源記錄類型:KEY和SIG,允許用戶端和域名伺服器對任何DNS資料來源進行密鑰驗證。DNSSEC主要依靠公鑰技術對于包含在DNS中的資訊建立密鑰簽名,密鑰簽名通過計算出一個密鑰Hash數來提供DNS中資料的完整性,并将該Hash數封裝進行保護。私/公鑰對中的私鑰用來封裝Hash數,然後可以用公鑰把Hash數翻譯出來。如果這個翻譯出的Hash值比對接收者計算出來的Hash數,那麼表明資料是完整的、沒有被篡改的。

   2、 DNSSEC的實施

1)、建立一組密鑰對

#cd/vat/named

#dnssec -keygen -a RSA -b 512 -n ZONE qfnu.edu.Kqfnu.edu+002+27782

2)、生成密鑰記錄

#dnssec –makekeyset -t 172802 I<qfnu.edu.+002+27782.key

3)、發送密鑰檔案到上一級域管理者,以供簽名使用

#dnssec -signkey keyset -qfnu.edu Kedu.+002+65396.private

然後将傳回qfnu.edu.signedkey檔案

4)、在進行區域簽名之前,必須先将密鑰記錄添加到區域資料檔案之中

#cat“$include Kqfnn.edu.+002+27782.key”>>db.qfnu.edu

5)、對區域進行簽名

#dnssec –signzone -O qfnu.edu db.qfnu.edu

6)、修改named.conf裡的zone語句,系統将會載新的區域資料檔案

   3、 DNSSEC的不足

一方面,DNSSEC安全性雖然有所提高,但是标記和校驗必然産生額外的開銷,進而影響網絡和伺服器的性能,簽名的資料量很大,加重了域名伺服器對骨幹網以及非骨幹網連接配接的負擔,同時簡明校驗也對CPU造成了很大的負擔,同時簽名和密鑰也占用了磁盤的 空間以及RAM容量。DNSSEC中的根密鑰管理和更新問題。

另一方面,安全性能方面的考慮。絕大多數的DNS軟體是美國出口的,它們為了通過美國政府的安全規定而被迫降低加密算法和過程的安全強度。

第三方面,RSA算法的使用。RSA擁有美國專利,與某些廠商群組織倡導的“免費/開放”目标有所沖突,但是同時又别無選擇。在成本方面也是部署中的一個問題。

繼續閱讀