在Firefox上開始使用DNS over HTTPS

在Firefox上開始使用DNS over HTTPS

來自專欄技術文章翻譯6 人贊了文章

原文鏈接:

原文鏈接?

medium.com

DNS over HTTPS(DoH)是一種新協議,最近獲得了很大的關注。 Firefox最近在其nightly版本中添加了對它的支持,在本文中,我們將介紹配置它的步驟。

Firefox配置

Firefox在默認情況下不啟用DNS over HTTPS(DoH),因此您必須在瀏覽器欄上鍵入about:config以打開設置頁面。 在那裡,你必須修改2個與Trusted Recursive Resolver(aka network.trr)相關的設置:

  • network.trr.mode
  • network.trr.uri(您指定要使用的安全解析程序)。

第1個(trr.mode)控制如何使用DNS over HTTPS(DoH)。 默認情況下,它設置為0,表示已禁用。 您可以將其更改為「2」以啟用它。 trr.mode的選項是:

  • 0?—?Off (默認)。使用操作系統解析程序。
  • 1?—?Race native against TRR.。並行執行並與首先返回結果的那個一起執行。最有可能的是本地將獲勝。
  • 2?—?First。首先使用TRR,並且僅當安全解決方案失敗時才使用操作系統解析程序。
  • 3?—?Only。只使用TRR。不使用原生(初始設置後)。
  • 4?—?Shadow。運行TRR與本機並行進行定時和測量,但僅使用本機解析器結果。
  • 5?—?Off by choice。這與0相同,但標記為:通過選擇完成,默認不完成。

我建議將trr.mode設置為2,這樣如果失敗,它將回退到默認的解析器。 對於最偏執的人,您可以設置為3,但如果您的DNS over HTTPS(DoH)伺服器發生故障,您可以離線。

至於第2個(network.trr.uri),您必須指定要使用的提供程序。 有4個公開宣布的DNS over HTTPS(DoH)伺服器:

  • mozilla.cloudflare-dns.com (未經CloudFlare過濾)
  • dns.google.com/experime (未經Google過濾 - 最穩定且運行時間更長)
  • doh.cleanbrowsing.org/d (由CleanBrowsing過濾,阻止成人內容)
  • https://doh.cleanbrowsing.org/doh/secure-filter/ (已過濾,僅阻止惡意域)

因此,如果我強制執行Google的DNS over HTTPS(DoH),那麼您的about:config將如何顯示(模式設置為3,trr.uri設置為Google URL):

對於CleanBrowsing,如果您想要過濾成人內容,則如下所示:

在幕後

在幕後,DNS over HTTPS(DoH)非常有趣。 我設置了一個代理來查看流量,這就是GET模式的樣子(而不是使用HTTP POSTS):

GET https://dns.google.com/experimental?ct&dns=AAABAAABAAAAAAAAB2V4YW1wbGUDY29tAACAAE HTTP/2.0

DNS查詢來自此base64值,該值解碼為example.com的A記錄請求。 我注意到Firefox正在為example.com做多個A請求,即使我沒有訪問該網站。 我認為這是為了測試DNS over HTTPS(DoH)是否有效。

提供給伺服器的用戶代理只是瀏覽器的標準。 就我而言:Mozilla / 5.0(Macintosh; Intel Mac OS X 10.11; rv:61.0)Gecko / 20100101 Firefox / 61.0

這意味著一些事情:

如果您使用的是GET模式,則所有請求都將存儲在DNS伺服器Web日誌中。 除非確實有必要,否則不要使用它。

您必須信任您的 DNS over HTTPS 提供商(duh)。 但有些事情需要考慮。 只有少數提供商支持它,我們正在將DNS集中在一些可以看到您正在做的事情的公司手中。 Google沒有任何惡意,CloudFlare和CleanBrowsing都表示他們不會記錄請求。 但是,我們必須要小心。

調試DNS over HTTPS(DoH)

如果您需要調試和測試 DNS over HTTPS (或FireFox模式不起作用),我建議您嘗試以下兩種工具:

  • github.com/bagder/dns2d
  • github.com/dcid/doh-php

第一個是在Perl中,可用於解碼base64請求,另一個在PHP中,可用於解決連接問題並測試任何doman的DoH。

這就是它。 您是否使用DNS over HTTPS(DoH)? 到目前為止你的經歷是什麼?

更多信息

這個故事發表在Noteworthy,每天都有成千上萬的人來學習塑造我們喜愛的產品的人和想法。

關注我們的出版物,查看期刊團隊的更多產品和設計故事。

推薦閱讀:

TAG:火狐瀏覽器Firefox | DNS解析 | DNS |