Dnssec簽名方法及其系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種DNSSEC簽名方法及其系統(tǒng),用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn);主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)初始資源記錄至密鑰管理模塊;密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密模塊中對(duì)初始資源記錄進(jìn)行加密簽名,并將加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn);第二節(jié)點(diǎn)將加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證;主服務(wù)器和輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù),并通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
【專利說(shuō)明】DNSSEC簽名方法及其系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)【技術(shù)領(lǐng)域】,具體涉及一種DNSSEC簽名方法及其系統(tǒng)。
【背景技術(shù)】
[0002]域名系統(tǒng)(Domain Name System,簡(jiǎn)稱DNS),與互聯(lián)網(wǎng)的其他協(xié)議或系統(tǒng)一樣,在一個(gè)可信的、純凈的環(huán)境里運(yùn)行得很好。但由于互聯(lián)網(wǎng)環(huán)境異常復(fù)雜,充斥著各種欺詐、攻擊,DNS協(xié)議的脆弱性也 就浮出水面。對(duì)DNS的攻擊可能導(dǎo)致互聯(lián)網(wǎng)大面積的癱瘓,DNS的最大缺陷是解析的請(qǐng)求者無(wú)法驗(yàn)證它所收到的應(yīng)答信息的真實(shí)性。
[0003]域名系統(tǒng)的安全協(xié)議(DNS Security Extensions,簡(jiǎn)稱DNSSEC)給解析服務(wù)器提供了防止上當(dāng)受騙的武器,即一種可以驗(yàn)證應(yīng)答信息真實(shí)性和完整性的機(jī)制?,F(xiàn)有DNS服務(wù)普遍缺少DNSSEC功能,國(guó)內(nèi)普及度更是極低,只能通過軟件方式在測(cè)試床進(jìn)行試驗(yàn),達(dá)到生產(chǎn)環(huán)境運(yùn)行標(biāo)準(zhǔn)的高性能DNSSEC服務(wù)目前還沒有。
【發(fā)明內(nèi)容】
[0004]本發(fā)明提供一種DNSSEC簽名方法及其系統(tǒng),其可以解決生產(chǎn)環(huán)境中DNSSEC硬件冗余部署的問題,通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明提供一種DNSSEC簽名方法,采用主服務(wù)器和輔服務(wù)器,所述主服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);所述輔服務(wù)器中包括--第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn),包括:
[0006]用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn);
[0007]所述主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)所述初始資源記錄至密鑰管理模塊;
[0008]所述密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn),其中,密鑰管理模塊默認(rèn)開啟主服務(wù)器的服務(wù);
[0009]所述第二節(jié)點(diǎn)將所述加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證;
[0010]所述主服務(wù)器和所述輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)。
[0011]進(jìn)一步地,該方法還包括:
[0012]當(dāng)所述主服務(wù)器中的密鑰管理模塊的文件發(fā)生變化時(shí),通過定時(shí)同步程序?qū)⑺鲎兓瘜?shí)時(shí)同步至所述輔服務(wù)器中的密鑰管理模塊中,以使所述主服務(wù)器中的密鑰管理模塊與所述輔服務(wù)器中的密鑰管理模塊中的數(shù)據(jù)信息相同。
[0013]進(jìn)一步地,所述主服務(wù)器中的第一節(jié)點(diǎn)和所述輔服務(wù)器中的第一節(jié)點(diǎn)所使用的初始資源記錄和序列值相同,且資源記錄的更新和序列值的增加保持一致。[0014]進(jìn)一步地,所述主服務(wù)器和所述輔服務(wù)器的數(shù)據(jù)信息保持一致,包括:
[0015]所述主服務(wù)器中的第一節(jié)點(diǎn)的數(shù)據(jù)信息和所述輔服務(wù)器中的第一節(jié)點(diǎn)的數(shù)據(jù)信息一致;所述主服務(wù)器中的密鑰管理模塊的數(shù)據(jù)信息和所述輔服務(wù)器中的密鑰管理模塊的
數(shù)據(jù)信息一致。
[0016]進(jìn)一步地,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)包括:
[0017]當(dāng)所述主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn)的服務(wù)不可用時(shí),所述輔服務(wù)器的密鑰管理實(shí)時(shí)收到所述輔服務(wù)器的第一節(jié)點(diǎn)的初始資源記錄,通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)。
[0018]進(jìn)一步地,所述主服務(wù)器和所述輔服務(wù)器中的第二節(jié)點(diǎn)同時(shí)作為下一級(jí)的第一節(jié)點(diǎn),默認(rèn)下一級(jí)節(jié)點(diǎn)首先去請(qǐng)求主服務(wù)器中的第二節(jié)點(diǎn),當(dāng)主服務(wù)器的服務(wù)不可用時(shí),則從輔服務(wù)器中的第二節(jié)點(diǎn)獲取資源記錄。
[0019]進(jìn)一步地,當(dāng)輔服務(wù)器中的密鑰管理模塊關(guān)閉的狀態(tài)下,輔服務(wù)器中的第二節(jié)點(diǎn)的序列值小于主服務(wù)器中的第二節(jié)點(diǎn)的序列值。
[0020]為實(shí)現(xiàn)上述目的,本發(fā)明提供一種DNSSEC簽名系統(tǒng),包括主服務(wù)器、輔服務(wù)器、硬件加密簽名模塊,所述主服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);所述輔服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn),包括:
[0021]用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn);
[0022]所述主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)所述初始資源記錄至密鑰管理模塊;
[0023]所述密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn),其中,密鑰管理模塊默認(rèn)開啟主服務(wù)器的服務(wù);
[0024]所述第二節(jié)點(diǎn)將所述加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證;
[0025]所述主服務(wù)器和所述輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)。
[0026]進(jìn)一步地,還包括:
[0027]定時(shí)同步模塊,用于當(dāng)所述主服務(wù)器中的密鑰管理模塊的文件發(fā)生變化時(shí),通過定時(shí)同步程序?qū)⑺鲎兓瘜?shí)時(shí)同步至所述輔服務(wù)器中的密鑰管理模塊中,以使所述主服務(wù)器中的密鑰管理模塊與所述輔服務(wù)器中的密鑰管理模塊中的數(shù)據(jù)信息相同。
[0028]進(jìn)一步地,還包括:
[0029]實(shí)時(shí)監(jiān)控模塊,用于實(shí)時(shí)監(jiān)控主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn),
[0030]當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)包括:
[0031]當(dāng)所述主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn)的服務(wù)不可用時(shí),所述輔服務(wù)器的密鑰管理實(shí)時(shí)收到所述輔服務(wù)器的第一節(jié)點(diǎn)的初始資源記錄,通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)。
[0032]本發(fā)明提供的DNSSEC簽名方法及其系統(tǒng)中,通過采用硬件加密簽名模塊(Hardware Security Module,簡(jiǎn)稱HSM)與pkcs#ll接口來(lái)保證數(shù)據(jù)加密過程中的機(jī)密性、密鑰的不可導(dǎo)出性,有效的防止了密鑰的泄露。本發(fā)明的技術(shù)方案解決了生產(chǎn)環(huán)境中DNSSEC硬件冗余部署的問題,通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
【專利附圖】
【附圖說(shuō)明】
[0033]圖1為本發(fā)明實(shí)施例一提供的DNSSEC簽名方法的流程示意圖;
[0034]圖2為本發(fā)明實(shí)施例二提供的DNSSEC簽名系統(tǒng)的結(jié)構(gòu)示意圖;
[0035]圖3為DNSSEC簽名系統(tǒng)的應(yīng)用示意圖。
【具體實(shí)施方式】
[0036]為使本領(lǐng)域技術(shù)人員更好地理解本發(fā)明的技術(shù)方案,下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
[0037]圖1為本發(fā)明實(shí)施例一提供的DNSSEC簽名方法的流程示意圖,如圖1所示,該DNSSEC簽名方法采用主服務(wù)器和輔服務(wù)器,所述主服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);所述輔服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);該方法包括:
[0038]步驟S1、用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn)。
[0039]具體地,用戶從區(qū)文件數(shù)據(jù)庫(kù)中獲取資源記錄,資源記錄以初始資源記錄的形式存在于第一節(jié)點(diǎn)(master)中。
[0040]主服務(wù)器中的用戶和輔服務(wù)器中的用戶保證兩個(gè)第一節(jié)點(diǎn)中的資源記錄最新并且一致,首先保證兩個(gè)第一節(jié)點(diǎn)使用的原始區(qū)的區(qū)文件內(nèi)容和序列值完全相同,主服務(wù)器和輔服務(wù)器中的兩個(gè)用戶通過區(qū)文件數(shù)據(jù)庫(kù)中新增的資源記錄按順序更新對(duì)應(yīng)的主服務(wù)器和輔服務(wù)器中的第一節(jié)點(diǎn)的數(shù)據(jù)。
[0041]由于第一節(jié)點(diǎn)采用nsupdate更新機(jī)制,nsupdate是一個(gè)動(dòng)態(tài)的DNS更新工具,其可以向DNS服務(wù)器提交更新資源記錄的請(qǐng)求,它可以從區(qū)文件中添加或刪除資源記錄,而不需要手動(dòng)進(jìn)行編輯區(qū)文件,從而保證了主服務(wù)器和輔服務(wù)器兩邊的更新數(shù)據(jù)量和序列值的增加規(guī)律是一致的。
[0042]如果任何一個(gè)第一節(jié)點(diǎn)服務(wù)不可用時(shí),對(duì)應(yīng)的用戶將無(wú)法更新,直到第一節(jié)點(diǎn)恢復(fù)正常,如果更新記錄失敗,通過用戶的事務(wù)保證機(jī)制,用戶繼續(xù)嘗試更新,從而保證了區(qū)數(shù)據(jù)不會(huì)丟失。
[0043]步驟S2、所述主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)所述初始資源記錄至密鑰管理模塊。
[0044]具體地,主服務(wù)器中的第一節(jié)點(diǎn)接收到新的資源記錄后會(huì)通過增量區(qū)域傳輸(Incremental Zone Transfer,簡(jiǎn)稱IXFR)機(jī)制及時(shí)下發(fā)給密鑰管理模塊。密鑰管理模塊負(fù)責(zé)維護(hù)各個(gè)區(qū)域的密鑰的生命周期管理,包括密鑰的輪轉(zhuǎn)和區(qū)參數(shù)的配置。密鑰管理模塊執(zhí)行接收和下發(fā)數(shù)據(jù)對(duì)的通信采用IXFR機(jī)制,可以實(shí)時(shí)對(duì)新的數(shù)據(jù)進(jìn)行“接收-簽名-下發(fā)”的操作,能夠提高對(duì)大區(qū)數(shù)據(jù)的處理的效率。
[0045]步驟S3、所述密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn),其中,密鑰管理模塊默認(rèn)開啟主服務(wù)器的服務(wù)。
[0046]具體地,密鑰管理模塊(opendnssec)通過第一接口(pkcs#ll)與硬件加密簽名模塊(Hardware Security Module,簡(jiǎn)稱HSM)進(jìn)行通信,HSM對(duì)初始資源記錄進(jìn)行簽名、倉(cāng)ij建和保存密鑰,提高了密鑰的安全性,將簽名工作與軟件服務(wù)器解耦,使得軟件服務(wù)器可以專注于通信和管理等工作,大大緩解對(duì)中央處理器的依賴。
[0047]密鑰管理模塊在對(duì)區(qū)文件和密鑰進(jìn)行管理時(shí)需要與HSM加密機(jī)進(jìn)行通信,通過pkcs#ll接口在HSM中創(chuàng)建密鑰,并通過調(diào)用相應(yīng)的pkcs#ll的簽名接口將資源記錄傳給HSM進(jìn)行簽名,然后將簽名后到資源記錄進(jìn)行一定規(guī)律的拼裝再通過IXFR機(jī)制下發(fā)給第二節(jié)點(diǎn)(slave)。
[0048]密鑰管理模塊默認(rèn)只開啟主服務(wù)器上的服務(wù),輔服務(wù)器上的服務(wù)并不開啟。通過定時(shí)同步程序保證輔服務(wù)器上的服務(wù)和主服務(wù)器上的密鑰管理模塊的配置文件和其他管理文件的高度一致,一旦主服務(wù)器上的對(duì)應(yīng)文件有變動(dòng),則實(shí)時(shí)同步到輔服務(wù)器的相應(yīng)文件。
[0049]通過監(jiān)控程序?qū)崟r(shí)監(jiān)控主服務(wù)器上的第一節(jié)點(diǎn)、opendnssec服務(wù)、第二節(jié)點(diǎn)的服務(wù)可用性,如果上述服務(wù)器中的三個(gè)服務(wù)均不可用,如端口不可達(dá),dig返回異常結(jié)果,則自動(dòng)啟動(dòng)輔服務(wù)器中的opendnssec服務(wù),由于兩臺(tái)服務(wù)器中的opendnssc服務(wù)中的數(shù)據(jù)完全相同,即區(qū)信息相同,對(duì)應(yīng)的密鑰相同則保證了 dnssec服務(wù)的連續(xù)行。
[0050]步驟S4、所述第二節(jié)點(diǎn)將所述加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證。
[0051]步驟S5、所述主服務(wù)器和所述輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)。
[0052]具體地,輔助服務(wù)器上的opendnssec服務(wù)實(shí)時(shí)收到輔助服務(wù)器中的第一節(jié)點(diǎn)的資源記錄數(shù)據(jù),調(diào)用hsm接口進(jìn)行簽名,最后再發(fā)送給輔助服務(wù)器上的第二節(jié)點(diǎn)。主輔服務(wù)器中的第二節(jié)點(diǎn)同時(shí)作為下一級(jí)第二節(jié)點(diǎn)的第一節(jié)點(diǎn),但是默認(rèn)下一級(jí)別的第二節(jié)點(diǎn)首先去請(qǐng)求主服務(wù)器中的第二節(jié)點(diǎn),只有當(dāng)主服務(wù)器不可用時(shí),才會(huì)嘗試去輔服務(wù)器中的第二節(jié)點(diǎn)獲取區(qū)數(shù)據(jù),平時(shí)輔助服務(wù)器上的第二節(jié)點(diǎn)不會(huì)收到請(qǐng)求,這樣就不會(huì)造成區(qū)數(shù)據(jù)的不同導(dǎo)致下發(fā)出現(xiàn)問題。
[0053]由于序列值的原因,平時(shí)輔助服務(wù)器上的第二節(jié)點(diǎn)接收不到opendnssec的下發(fā)數(shù)據(jù),因?yàn)樗鼪]有開啟,所以它的序列值小于主服務(wù)器中的第二節(jié)點(diǎn),理論上下一級(jí)別的第二節(jié)點(diǎn)只會(huì)去請(qǐng)求比它的序列值更大的第一節(jié)點(diǎn)的數(shù)據(jù)。當(dāng)輔助服務(wù)器的opendnssec開啟后,它對(duì)區(qū)數(shù)據(jù)的簽名和下發(fā)規(guī)則完全和主服務(wù)器中的opendnssc相同,包括序列值的變化規(guī)律,所以當(dāng)?shù)谝还?jié)點(diǎn)下發(fā)record紀(jì)錄到主服務(wù)器巖機(jī)時(shí)刻的時(shí)候,兩邊的opendnssc下發(fā)的數(shù)據(jù)的序列值達(dá)到了相同的值,從此以后如果第一節(jié)點(diǎn)繼續(xù)下發(fā)數(shù)據(jù)給opendnssec,那么序列值將會(huì)超過以前曾經(jīng)達(dá)到的最大序列值,從這一個(gè)序列值以后,第二節(jié)點(diǎn)的下一級(jí)別的第二節(jié)點(diǎn)將會(huì)對(duì)比自己的序列值小于當(dāng)前所請(qǐng)求的輔服務(wù)器中第二節(jié)點(diǎn)的序列值,所以會(huì)繼續(xù)請(qǐng)求新的資源記錄數(shù)據(jù),進(jìn)而DNS數(shù)據(jù)下發(fā)的連續(xù)性便得到了保證。
[0054]本實(shí)施例提供的DNSSEC簽名方法中,通過采用硬件加密簽名模塊與pkcs#ll接口來(lái)保證數(shù)據(jù)加密過程中的機(jī)密性、密鑰的不可導(dǎo)出性,有效的防止了密鑰的泄露,解決了生產(chǎn)環(huán)境中DNSSEC硬件冗余部署的問題,通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
[0055]圖2為本發(fā)明實(shí)施例二提供的DNSSEC簽名系統(tǒng)的結(jié)構(gòu)示意圖,如圖2所示,該DNSSEC簽名系統(tǒng)包括:主服務(wù)器201、輔服務(wù)器202、硬件加密簽名模塊203、定時(shí)同步單元204和實(shí)時(shí)監(jiān)控單元205。其中,主服務(wù)器201包括:第一節(jié)點(diǎn)2011、密鑰管理模塊2012和第二節(jié)點(diǎn)2013 ;輔服務(wù)器202包括:第一節(jié)點(diǎn)2021、密鑰管理模塊2022和第二節(jié)點(diǎn)2023。
[0056]具體地,用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器201中的第一節(jié)點(diǎn)2011 ;主服務(wù)器中201的第一節(jié)點(diǎn)2011接收并下發(fā)初始資源記錄至密鑰管理模塊2012 ;密鑰管理模塊2012通過第一接口與硬件加密簽名模塊203進(jìn)行通信,在硬件加密簽名模塊203中對(duì)初始資源記錄進(jìn)行加密簽名,并將加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)2013,其中,密鑰管理模塊2012默認(rèn)開啟主服務(wù)器201的服務(wù);第二節(jié)點(diǎn)2013將加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證;主服務(wù)器201和輔服務(wù)器202中的數(shù)據(jù)信息保持一致,當(dāng)主服務(wù)器201中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器202中的服務(wù)。
[0057]優(yōu)選地,該DNSSEC簽名系統(tǒng)還包括:定時(shí)同步模塊204,用于當(dāng)主服務(wù)器201中的密鑰管理模塊2012的文件發(fā)生變化時(shí),通過定時(shí)同步模塊204將變化實(shí)時(shí)同步至輔服務(wù)器202中的密鑰管理模塊2022中,以使主服務(wù)器201中的密鑰管理模塊2012與輔服務(wù)器202中的密鑰管理模塊2022中的數(shù)據(jù)信息相同。
[0058]進(jìn)一步地,該DNSSEC簽名系統(tǒng)還包括:實(shí)時(shí)監(jiān)控模塊205,用于實(shí)時(shí)監(jiān)控主服務(wù)器201中的第一節(jié)點(diǎn)2011、密鑰管理模塊2012和第二節(jié)點(diǎn)2013,當(dāng)主服務(wù)器201中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器202中的服務(wù)包括:當(dāng)主服務(wù)器201中的第一節(jié)點(diǎn)2011、密鑰管理模塊2012和第二節(jié)點(diǎn)2013的服務(wù)不可用時(shí),輔服務(wù)器202的密鑰管理模塊2022實(shí)時(shí)收到輔服務(wù)器202的第一節(jié)點(diǎn)2021的初始資源記錄,通過第一接口與硬件加密簽名模塊202進(jìn)行通信,在硬件加密簽名模塊202中對(duì)初始資源記錄進(jìn)行加密簽名,并將加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)2023。
[0059]本實(shí)施例提供的DNSSEC簽名系統(tǒng)中,通過采用硬件加密簽名模塊與pkcs#ll接口來(lái)保證數(shù)據(jù)加密過程中的機(jī)密性、密鑰的不可導(dǎo)出性,有效的防止了密鑰的泄露。通過部署兩套系統(tǒng)解決單點(diǎn)問題,從而解決了生產(chǎn)環(huán)境中DNSSEC硬件冗余部署的問題,通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
[0060]圖3為DNSSEC簽名系統(tǒng)的應(yīng)用示意圖,如圖3所示,該DNSSEC簽名系統(tǒng)中,通過部署兩套系統(tǒng)來(lái)解決單點(diǎn)的問題。通過兩個(gè)consumer保證兩個(gè)master中的record紀(jì)錄保持最新并且一致。首先保證兩個(gè)master使用的原始區(qū)的區(qū)文件內(nèi)容和serial值完全相同,然后兩邊的consumer服務(wù)通過epp庫(kù)中新增的record紀(jì)錄按順序更新對(duì)應(yīng)的master節(jié)點(diǎn)的數(shù)據(jù),由于master采用bind的nsupdate機(jī)制,保證了兩邊的更新數(shù)據(jù)量和serial的增加的規(guī)律是一致的。如果任何一個(gè)master服務(wù)不可用,對(duì)應(yīng)的consumer將無(wú)法更新,直到master節(jié)點(diǎn)恢復(fù)正常,但由于consumer的事務(wù)保證機(jī)制,如果更新record失敗,則會(huì)回滾,繼續(xù)嘗試更新,所以不存在丟失區(qū)數(shù)據(jù)的情況。
[0061]Opendnssc默認(rèn)只開啟主服務(wù)器上的服務(wù),輔服務(wù)器上的服務(wù)并不開啟,但通過定時(shí)同步程序保證輔服務(wù)器上的opendnssec服務(wù)和主服務(wù)器上的opendnssec的配置文件和其他管理文件的高度一致,一旦主服務(wù)器上的對(duì)應(yīng)文件有變動(dòng),則實(shí)時(shí)同步到輔服務(wù)器的相應(yīng)文件。通過監(jiān)控程序?qū)崟r(shí)監(jiān)控主服務(wù)器上的master節(jié)點(diǎn)、opendnssec服務(wù)、slave節(jié)點(diǎn)的服務(wù)可用性,如果上述服務(wù)器中的三個(gè)服務(wù)均不可用,如端口不可達(dá),dig返回異常結(jié)果,則自動(dòng)啟動(dòng)輔服務(wù)器中的opendnssec服務(wù),由于兩臺(tái)服務(wù)器中的opendnssc服務(wù)中的數(shù)據(jù)完全相同,即區(qū)信息相同,對(duì)應(yīng)的key相同則保證了 dnssec服務(wù)的連續(xù)行。
[0062]輔助服務(wù)器上的opendnssec服務(wù)實(shí)時(shí)收到輔助服務(wù)器中的master節(jié)點(diǎn)的record數(shù)據(jù),調(diào)用HSM設(shè)備提供的pkcs#ll接口進(jìn)行簽名,最后再發(fā)送給輔助服務(wù)器上的slave階段。主輔服務(wù)器中的slave節(jié)點(diǎn)同時(shí)作為下一級(jí)slave節(jié)點(diǎn)的master節(jié)點(diǎn),但是默認(rèn)下一級(jí)別的slave節(jié)點(diǎn)首先去請(qǐng)求主服務(wù)器中的slave節(jié)點(diǎn),只有當(dāng)主服務(wù)器不可用時(shí),才會(huì)嘗試去輔服務(wù)器中的slave節(jié)點(diǎn)獲取區(qū)數(shù)據(jù),平時(shí)輔助服務(wù)器上的salve節(jié)點(diǎn)不會(huì)收到請(qǐng)求,這樣就不會(huì)造成區(qū)數(shù)據(jù)的不同導(dǎo)致下發(fā)出現(xiàn)問題。由于serial值的原因,平時(shí)輔助服務(wù)器上的slave節(jié)點(diǎn)接收不到opendnssec的下發(fā)數(shù)據(jù),因?yàn)樗鼪]有開啟,所以它的serial值小于主服務(wù)器中的slave節(jié)點(diǎn),理論上下一級(jí)別的slave節(jié)點(diǎn)只會(huì)去請(qǐng)求比它的serial值更大的master節(jié)點(diǎn)的數(shù)據(jù)。
[0063]當(dāng)輔助服務(wù)器的opendnssec開啟后,它對(duì)區(qū)數(shù)據(jù)的簽名和下發(fā)規(guī)則完全和主服務(wù)器中的opendnssc相同,包括serial值的變化規(guī)律,所以當(dāng)master節(jié)點(diǎn)下發(fā)record紀(jì)錄到主服務(wù)器宕機(jī)時(shí)刻的時(shí)候,兩邊的opendnssc下發(fā)的數(shù)據(jù)的serial值達(dá)到了相同的值,從此以后如果master繼續(xù)下發(fā)數(shù)據(jù)給opendnssec,那么serial值將會(huì)超過以前曾經(jīng)達(dá)到的最大serial值,從這一個(gè)serial值以后,slave節(jié)點(diǎn)的下一級(jí)別的slave節(jié)點(diǎn)將會(huì)對(duì)比自己的serial值小于當(dāng)前所請(qǐng)求的輔服務(wù)器中slave節(jié)點(diǎn)的serial值,所以會(huì)繼續(xù)請(qǐng)求新的record數(shù)據(jù),進(jìn)而dns數(shù)據(jù)下發(fā)的連續(xù)性便得到了保證。
[0064]本實(shí)施例提供的DNSSEC簽名系統(tǒng)中,采用主服務(wù)器和服務(wù)器,保證DNS數(shù)據(jù)從簽名到下發(fā)的完整性和可靠性。通過采用硬件加密簽名模塊與pkcs#ll接口來(lái)保證數(shù)據(jù)加密過程中的機(jī)密性、密鑰的不可導(dǎo)出性,有效的防止了密鑰的泄露。本發(fā)明的技術(shù)方案解決了生產(chǎn)環(huán)境中DNSSEC硬件冗余部署的問題,通過動(dòng)態(tài)監(jiān)控和主輔服務(wù)器的智能切換來(lái)保證DNSSEC數(shù)據(jù)的連續(xù)性和完整性。
[0065]可以理解的是,以上實(shí)施方式僅僅是為了說(shuō)明本發(fā)明的原理而采用的示例性實(shí)施方式,然而本發(fā)明并不局限于此。對(duì)于本領(lǐng)域內(nèi)的普通技術(shù)人員而言,在不脫離本發(fā)明的精神和實(shí)質(zhì)的情況下,可以做出各種變型和改進(jìn),這些變型和改進(jìn)也視為本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1.一種DNSSEC簽名方法,其特征在于,采用主服務(wù)器和輔服務(wù)器,所述主服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);所述輔服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn),包括: 用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn); 所述主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)所述初始資源記錄至密鑰管理模塊; 所述密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn),其中,密鑰管理模塊默認(rèn)開啟主服務(wù)器的服務(wù); 所述第二節(jié)點(diǎn)將所述加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證; 所述主服務(wù)器和所述輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)。
2.根據(jù)權(quán)利要求1所述的DNSSEC簽名方法,其特征在于,還包括: 當(dāng)所述主服務(wù)器中的密鑰管理模塊的文件發(fā)生變化時(shí),通過定時(shí)同步程序?qū)⑺鲎兓瘜?shí)時(shí)同步至所述輔服務(wù)器中的密鑰管理模塊中,以使所述主服務(wù)器中的密鑰管理模塊與所述輔服務(wù)器中的密鑰管理模塊中的數(shù)據(jù)信息相同。
3.根據(jù)權(quán)利要求2所述的DNSSEC簽名方法,其特征在于,所述主服務(wù)器中的第一節(jié)點(diǎn)和所述輔服務(wù)器中的第一節(jié)點(diǎn)所使用的初始資源記錄和序列值相同,且資源記錄的更新和序列值的增加保持一致。
4.根據(jù)權(quán)利要求3所述的DNSSEC簽名方法,其特征在于,所述主服務(wù)器和所述輔服務(wù)器的數(shù)據(jù)信息保持一致,包括: 所述主服務(wù)器中的第一節(jié)點(diǎn)的數(shù)據(jù)信息和所述輔服務(wù)器中的第一節(jié)點(diǎn)的數(shù)據(jù)信息一致;所述主服務(wù)器中的密鑰管理模塊的數(shù)據(jù)信息和所述輔服務(wù)器中的密鑰管理模塊的數(shù)據(jù)信息一致。
5.根據(jù)權(quán)利要求4所述的DNSSEC簽名方法,其特征在于,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)包括: 當(dāng)所述主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn)的服務(wù)不可用時(shí),所述輔服務(wù)器的密鑰管理實(shí)時(shí)收到所述輔服務(wù)器的第一節(jié)點(diǎn)的初始資源記錄,通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)。
6.根據(jù)權(quán)利要求5所述的DNSSEC簽名方法,其特征在于,所述主服務(wù)器和所述輔服務(wù)器中的第二節(jié)點(diǎn)同時(shí)作為下一級(jí)的第一節(jié)點(diǎn),默認(rèn)下一級(jí)節(jié)點(diǎn)首先去請(qǐng)求主服務(wù)器中的第二節(jié)點(diǎn),當(dāng)主服務(wù)器的服務(wù)不可用時(shí),則從輔服務(wù)器中的第二節(jié)點(diǎn)獲取資源記錄。
7.根據(jù)權(quán)利要求6所述的DNSSEC簽名方法,其特征在于,當(dāng)輔服務(wù)器中的密鑰管理模塊關(guān)閉的狀態(tài)下,輔服務(wù)器中的第二節(jié)點(diǎn)的序列值小于主服務(wù)器中的第二節(jié)點(diǎn)的序列值。
8.—種DNSSEC簽名系統(tǒng),包括主服務(wù)器、輔服務(wù)器、硬件加密簽名模塊,所述主服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn);所述輔服務(wù)器中包括:第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn),包括:用戶從區(qū)域文件數(shù)據(jù)庫(kù)中獲取初始資源記錄,并將初始資源記錄發(fā)送至主服務(wù)器中的第一節(jié)點(diǎn); 所述主服務(wù)器中的第一節(jié)點(diǎn)接收并下發(fā)所述初始資源記錄至密鑰管理模塊; 所述密鑰管理模塊通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn),其中,密鑰管理模塊默認(rèn)開啟主服務(wù)器的服務(wù); 所述第二節(jié)點(diǎn)將所述加密簽名后的資源記錄發(fā)送至各個(gè)權(quán)威DNS服務(wù)器中,遞歸服務(wù)器對(duì)加密簽名后的資源記錄進(jìn)行查詢和驗(yàn)證; 所述主服務(wù)器和所述輔服務(wù)器中的數(shù)據(jù)信息保持一致,當(dāng)所述主服務(wù)器中的服務(wù)不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)。
9.根據(jù)權(quán)利要求8所述的DNSSEC簽名系統(tǒng),其特征在于,還包括: 定時(shí)同步模塊,用于當(dāng)所述主服務(wù)器中的密鑰管理模塊的文件發(fā)生變化時(shí),通過定時(shí)同步程序?qū)⑺鲎兓瘜?shí)時(shí)同步至所述輔服務(wù)器中的密鑰管理模塊中,以使所述主服務(wù)器中的密鑰管理模塊與所述輔服務(wù)器中的密鑰管理模塊中的數(shù)據(jù)信息相同。
10.根據(jù)權(quán)利要求9所述的DNSSEC簽名系統(tǒng),其特征在于,還包括: 實(shí)時(shí)監(jiān)控模塊,用于實(shí)時(shí)監(jiān)控主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn), 當(dāng)所述主服務(wù)器中的服務(wù) 不可用時(shí),則啟動(dòng)輔服務(wù)器中的服務(wù)包括: 當(dāng)所述主服務(wù)器中的第一節(jié)點(diǎn)、密鑰管理模塊和第二節(jié)點(diǎn)的服務(wù)不可用時(shí),所述輔服務(wù)器的密鑰管理實(shí)時(shí)收到所述輔服務(wù)器的第一節(jié)點(diǎn)的初始資源記錄,通過第一接口與硬件加密簽名模塊進(jìn)行通信,在硬件加密簽名模塊中對(duì)所述初始資源記錄進(jìn)行加密簽名,并將所述加密簽名后的資源記錄發(fā)送至第二節(jié)點(diǎn)。
【文檔編號(hào)】H04L9/32GK103746817SQ201410055563
【公開日】2014年4月23日 申請(qǐng)日期:2014年2月18日 優(yōu)先權(quán)日:2014年2月18日
【發(fā)明者】劉碩 申請(qǐng)人:互聯(lián)網(wǎng)域名系統(tǒng)北京市工程研究中心有限公司, 北龍中網(wǎng)(北京)科技有限責(zé)任公司