PowerDNS 配置 DNS 名稱伺服器

安全劍客發表於2020-08-16
導讀 使用 PDNS 為你的專案提供穩定可靠的域名系統(DNS)伺服器。

幾個月前,我們接到了一個要求,為一個新專案提供一個穩定可靠的域名系統(DNS)伺服器。該專案使用容器進行自動部署,每個新環境都會生成唯一的隨機 URL。在對可能的方案進行了大量研究之後,我們決定嘗試一下  PowerDNS(PDNS)

一開始,我們發現  PowerDNS 在所有主流   發行版中都得到了支援,它採用 GPL 許可,且倉庫保持更新。我們還在官方網站上發現了整潔、組織良好的文件,以及大量來自真正喜歡和使用該產品的人在網路上的使用方法。看了一些並學習了一些基本 之後,安裝了  PDNS,啟動並執行,我們的旅程開始了。

資料庫驅動

PowerDNS 將記錄儲存在 SQL 資料庫中。這對我們來說是新變化,不必使用文字檔案來儲存記錄是一個不錯的更改。我們選擇  MariaDB 作為首選的強大工具,由於有大量的正確地設定來安裝名稱伺服器的資訊,我們可以完美地設定和加固我們的資料庫。

簡單配置

其次使我們感興趣的是  PDNS 的所有功能都在配置檔案中。 pdns.conf 有許多選項,你可以透過新增或刪除   號來啟用或禁用這些選項。這真是太神奇了,因為它使我們有機會將這項新的服務整合到我們現有的基礎架構中,並且只有我們想要的功能,不多也不少。一個簡單的例子:

誰可以訪問你的網路伺服器?

webserver-allow-from=172.10.0.1,172.10.1.2

我可以轉發基於域的請求嗎?當然!

forward-zones=mylocal.io=127.0.0.1:5300
forward-zones+=example.com=172.10.0.5:53
forward-zones+=lucky.tech=172.10.1.5:53
包含 API

我們可以使用配置檔案進行啟用 API 服務,解決了我們開發團隊的第一個需求,讓我們見識到了  PDNS 的強大。這個功能讓我們透過傳送請求,簡單、乾淨地建立、修改或刪除 DNS 伺服器中的記錄。

這個 API 有一些基本的安全性引數,因此,只需幾步,你就可以基於 IP 地址和預共享金鑰驗證的組合來控制誰有權與名稱伺服器進行互動。這是配置檔案的樣子:

api=yes
api-key=lkjdsfpoiernf
webserver-allow-from=172.10.7.13,172.10.7.5
日誌

在日誌方面, PDNS 做得非常出色。你可以使用日誌檔案和一個簡單的內建  Web 伺服器來監控伺服器並檢視計算機的執行狀況。你可以使用瀏覽器檢視伺服器不同型別的統計資訊,例如 CPU 使用率和收到的  DNS 查詢。這非常有價值。例如,我們能夠檢測到一些“不太健康”的 PC,它們正在向我們的伺服器傳送與惡意流量相關的站點的  DNS 請求。深入檢視日誌後,我們可以看到流量來自何處,並對這些 PC 進行清理操作。

其他功能

這只是你使用 PowerDNS 可以做的所有事情的一點點。它還有更多的功能。它是一個擁有很多功能和特性的完整名稱伺服器,因此值得一試。

目前,我們尚未部署  DNSSEC,但似乎只需點選一下即可將其快速投入生產環境。另外,在將遞迴服務與名稱伺服器分離時, PowerDNS 有個不錯的方法。我瞭解到它還支援  DNS RPZ(響應策略區域),並且還提供了非常不錯且設計良好的前端,可讓你使用  Web 瀏覽器來管理伺服器,如下圖。

PowerDNS 配置 DNS 名稱伺服器PowerDNS 配置 DNS 名稱伺服器

PowerDNS frontend

信不信由你,你只需花費幾個小時瞭解 PDNS,就可以大大提高你對 DNS 和 IT 操作的瞭解。

 


via: 

作者:  選題:  譯者:  校對:

本文由   原創編譯,  榮譽推出

原文來自:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2713215/,如需轉載,請註明出處,否則將追究法律責任。

相關文章