在 RHEL 8 上將 Bind 設定為私有 DNS 伺服器


按照以下說明在 RHEL 8 上配置 Bind 作為私有 DNS 伺服器。首先,使用包管理器安裝 Bind 包。然後,在 named.conf 檔案(Bind 的主要配置檔案)中設定適當的引數,包括 listen-on、forwarders 和 zones。對於您希望管理的每個域,建立區域檔案幷包含相關的記錄,例如 A、CNAME 和 NS。設定防火牆以允許 DNS 流量。啟動 Bind 服務並使其隨系統啟動。向 DNS 伺服器請求域名記錄以完成測試。按照這些說明,您可以成功地在 RHEL 8 上設定 Bind 作為私有 DNS 伺服器。

使用的方法

  • 手動配置

  • 基於 Web 的管理工具

手動配置

在 RHEL 下將 Bind 配置為私有 DNS 伺服器時,需要直接操作 Bind 配置檔案。使用此方法需要使用文字編輯器修改位於 /etc/named 目錄中的 named.conf 檔案。此檔案可以定義選項、區域、區域檔案和 ACL 以修改 DNS 伺服器。透過手動調整這些選項,管理員可以對伺服器的行為進行精確控制,並使其能夠滿足其獨特的需求。雖然此方法提供了靈活性,但可能需要更深入地理解 Bind 設定和語法。

演算法

  • 安裝 Bind 包  使用包管理器在 RHEL 伺服器上安裝 Bind 軟體。

sudo yum install bind
  • 設定 named.conf  修改 /etc/named 目錄中的 named.conf 配置。設定引數,例如 listen-on 來定義 IP 地址和監聽埠,forwarders 來使用外部 DNS 伺服器,以及 ACL 來控制訪問。

sudo vi /etc/named.conf
  • 建立區域檔案  對於您希望管理的每個域,建立區域檔案。這些檔案包含各個域的 DNS 記錄。在區域檔案中包含相關的記錄型別,例如 A、CNAME、NS 等。

sudo vi /var/named/example.com.zone
  • 配置區域宣告  在 named.conf 檔案中包含您希望管理的域的區域宣告。指定區域的名稱、型別(例如“master”)和相關區域檔案的位置。

sudo vi /etc/named.conf

在 named.conf 檔案中新增以下行:

zone "example.com" IN {
    type master;
    file "/var/named/example.com.zone";
};
  • 設定防火牆  修改防火牆配置以允許 DNS 流量(埠 53)到達 DNS 伺服器。

sudo firewall-cmd --zone=public --add-service=dns --permanent
sudo firewall-cmd --reload
  • 使用正確的命令(例如 systemctl start named)啟動 Bind 服務以完成步驟六。

sudo systemctl start named
  • 啟用 Bind 服務  使用 systemctl enable named 命令指示 Bind 服務在系統啟動時自動啟動。

sudo systemctl enable named
  • 使用 DNS 查詢工具(如 dig 或 nslookup)檢查 DNS 伺服器的功能。透過請求已定義域的 DNS 記錄來驗證伺服器是否成功響應。

dig example.com

基於 Web 的管理工具

可以使用基於 Web 的管理工具的使用者友好的圖形介面在 RHEL 上將 Bind 設定為私有 DNS 伺服器。像 Webmin 和 ISPConfig 這樣的工具透過允許管理員從 Web 瀏覽器控制 DNS 區域、記錄和伺服器設定來簡化設定過程。它們消除了手動配置檔案編輯的需要,從而簡化了新增、修改或刪除 DNS 條目的過程。藉助這些工具,管理員可以輕鬆管理 DNS 管理活動,包括區域轉移、訪問控制等等。使用基於 Web 的管理工具簡化了在 RHEL 上將 Bind 作為私有 DNS 伺服器的配置和維護,這些工具提供了一種視覺化方法。

演算法

  • 開始

sudo yum install bind
  • 使用包管理器安裝 Bind 包。

sudo nano /etc/named.conf
  • 根據您的偏好設定 /etc/named 目錄中的 named.conf 檔案。

listen-on port 53 { any; };
allow-query { localhost; };
forwarders { 8.8.8.8; };
  • 在 named.conf 中指定所需的引數,例如 listen-on、forwarders 和 zones。

sudo nano /etc/named/example.com.zone
  • 對於您希望管理的每個域,建立區域檔案。在這些檔案中包含相關的 DNS 記錄,例如 A、CNAME 和 NS。

$TTL 86400
@   IN   SOA   ns1.example.com.   admin.example.com. (
                       2021071401   ; Serial
                       3600         ; Refresh
                       1800         ; Retry
                       604800       ; Expire
                       86400        ; Minimum TTL
)
@   IN   NS    ns1.example.com.
@   IN   A     192.168.1.1
  • 設定防火牆以允許 DNS 流量透過。

sudo firewall-cmd --zone=public --add-service=dns --permanent
sudo firewall-cmd --reload
  • 啟動 Bind 服務。

sudo systemctl start named
  • 使 Bind 服務隨系統啟動。

sudo systemctl enable named
  • 透過請求域名記錄來檢查 DNS 伺服器的功能。

nslookup example.com

結論

總之,Bind 可以手動配置或藉助基於 Web 的管理工具在 RHEL 8 上作為私有 DNS 伺服器執行。手動配置過程包括安裝 Bind、修改 named.conf、建立區域檔案、配置區域宣告、設定防火牆、啟動和啟用 Bind 服務以及測試 DNS 伺服器。另一方面,基於 Web 的管理工具(如 Webmin 和 ISPConfig)提供用於管理 DNS 區域、記錄和伺服器設定的圖形使用者介面。這些解決方案消除了手動配置檔案編輯的需要,從而簡化了安裝過程。總的來說,這兩種方法都提供了在 RHEL 8 上設定私有 DNS 伺服器的實用方法。

更新於:2023 年 8 月 3 日

484 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.