DNS域名系統(Domain Name System的縮寫),是一個將域名和IP地址相互映射的分佈式數據庫,可以令人經過便於記憶的域名地址訪問互聯網(好比:沃通官網www.wosign.com),而無需記住長串毫無關聯性的IP地址(好比:123.196.2.455)。DNS能夠理解爲「互聯網的地址簿」,是互聯網的一項基礎服務。html
DNS的重要性也讓其成了黑客主要攻擊對象,常見的DNS攻擊包括:DNS劫持、緩存投毒、DNS欺騙等等,目的就是經過各類攻擊手段將正常訪問合法網站的用戶,引到黑客控制的假冒服務器上,進行釣魚欺詐、竊取用戶憑證或敏感數據等非法行爲。數據庫
爲了防止針對DNS系統的攻擊,強化域名系統的安全性,互聯網誕生了4種提高DNS安全性的協議,分別是DNSSEC,DNSCrypt,DNS over TLS,DNS over HTTPS。瀏覽器
DNSSEC是「Domain Name System Security Extensions」的縮寫,表明域名系統安全擴展,容許域名全部者對DNS記錄進行數字簽名,簽名DNS記錄的私有簽名密鑰一般僅由合法域名全部者持有,所以可防止未經受權的第三方修改DNS條目。緩存
DNSSEC誕生於1997年,已經列入互聯網標準化文檔(參考RFC 4033、RFC 4034、RFC 4035),是最先大規模部署的DNS安全協議,全部的根域名服務器都已經部署了DNSSEC。安全
雖然DNSSEC已經誕生20年,但APNIC統計其採用率幾乎不到19.3%,ICANN敦促業界普及使用DNSSEC協議。不過,DNSSEC協議僅提供真實性和完整性的校驗,沒法確保DNS流量通訊的機密性。服務器
DNSCrypt是OpenDNS發佈的加密DNS工具。與SSL將HTTP流量轉換爲HTTPS加密流量的原理相同,DNSCrypt也是將常規DNS流量轉換爲加密DNS流量,這樣能夠防止竊聽和中間人攻擊。它不須要對域名或它們的工做方式進行任何更改,只是提供了一種方法,安全加密客戶端與DNS服務器之間的通訊。在必定程度上,DNSCrypt比DNSSEC的保密性更強,由於DNSSEC只作數字簽名的校驗,而DNSCrypt既能加密DNS流量也能確保完整性。分佈式
不過,DNSCrypt客戶端必須明確信任所選提供者的公鑰,想使用哪一個DNSCrypt服務器,就須要預先安裝該服務器的公鑰,而不是經過常規瀏覽器中受信任證書頒發機構列表獲取信任;此外,DNSCrypt未申請列入標準化文檔,在大規模的應用場景中存在必定的侷限性。工具
DNS over TLS(簡稱DoT)是一項安全協議,它能夠強制全部和DNS服務器相關的連接都使用TLS,已列入標準文檔(參見 RFC 7858 和 RFC 8310)。測試
DNS over TLS 就是基於 TLS 隧道之上的域名協議,因爲 TLS 自己已經實現了保密性與完整性,所以 DoT 天然也就具備這兩項特性。DoT經過TLS協議及SSL/TLS證書(如:沃通SSL證書)實現安全加密和身份驗證,實現保密性和完整性。網站
與前述兩項協議相比,DNS over TLS更具優點:和DNSSEC相比,DNS over TLS具有了保密性;與 DNSCrypt相比,DNS over TLS已經造成標準化文檔。不過,目前支持DNS over TLS 的客戶端還不夠多,主流瀏覽器尚未計劃增長對DNS over TLS的支持。
不少人將DNS over HTTPS 和DNS over TLS混爲一談,事實上兩者是兩種不一樣的協議,DNS over TLS使用TCP做爲基本的鏈接協議,而DNS over HTTPS使用HTTPS和HTTP/2進行鏈接;DNS over TLS有本身的端口853,DNS over HTTPS則使用HTTPS標準端口443。
不過,兩種協議都是經過TLS加密和SSL/TLS證書(如:沃通SSL證書)來實現保密性與完整性。目前,DNS over HTTPS已經造成相應的草案,但尚未造成RFC標準化文檔正式發佈,但已經受到主流瀏覽器的青睞,Mozilla 已經決定在Firefox Nightly中測試DNS-over-HTTPS協議。
Web服務器使用HTTPS加密已經獲得普遍的普及和認同,而加密DNS服務器流量其實也是同等重要的。但實現DNS流量加密仍然須要DNS服務器、客戶端瀏覽器等生態環境的支持。在DNS加密生態還沒有完整創建的初期,沃通CA推薦網站服務器部署超安EV SSL證書,在瀏覽器上直觀顯示綠色地址欄及單位名稱,網站顯示名稱具備惟一性,讓假冒服務器難以複製仿冒,有效下降用戶被假冒網站釣魚欺詐的風險。此外,也建議域名全部者敦促服務商儘快支持DNS加密,創建安全可信的DNS域名系統使用環境。