国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

DNS:自動化配置 主/從/緩存 DNS服務(wù)器

這篇具有很好參考價值的文章主要介紹了DNS:自動化配置 主/從/緩存 DNS服務(wù)器。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

寫在前面


  • 學(xué)習(xí)遇到 DNS 自動化部署的一個 Ansible 劇本,這里分享給小伙
  • 部署使用 Bind9 ,包括主從 DNS 構(gòu)建,緩存 DNS 構(gòu)建,緩存使用 unbound
  • 劇本相對簡單
  • 理解不足小伙伴幫忙指正

對每個人而言,真正的職責(zé)只有一個:找到自我。然后在心中堅守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是對大眾理想的懦弱回歸,是隨波逐流,是對內(nèi)心的恐懼 ——赫爾曼·黑塞《德米安》


部署B(yǎng)IND 流程

  1. 安裝bind軟件包
  2. 創(chuàng)建BIND配置文件
  3. 啟用并啟動unbound服務(wù)。
  4. 配置防火墻以允許入站DNS通信.

涉及到的文件:

[student@workstation dns-auto]$ tree .
.
├── ansible.cfg
├── ansible-starter-files
│   └── configure_primary.yml.starter
├── files
│   ├── primary-192.168.0.zone
│   ├── primary-backend.lab.example.com.zone
│   ├── primary-named.backend.conf
│   ├── primary-named.conf
│   ├── secondary-named.backend.conf
│   └── secondary-named.conf
├── inventory
└── templates
    └── unbound.conf.j2

ansible 配置文件

[student@workstation dns-auto]$ cat ansible.cfg
[defaults]
inventory=./inventory
remote_user=devops

[privilege_escalation]
become = False
become_method = sudo
become_user = root
become_ask_pass = False

主機清單文件,可以看到,當(dāng)前 DNS 部署,使用主從DNS結(jié)構(gòu),并且部署了 緩存 DNS 服務(wù)

[student@workstation dns-auto]$ cat inventory
[control_node]
workstation.lab.example.com

[caching_dns]
servera.lab.example.com

[primary_dns]
serverb.lab.example.com

[secondary_dns]
serverc.lab.example.com
[student@workstation dns-auto]$

主 DNS 相關(guān)配置

  • 提權(quán)為 root
  • 下載 bind9
  • 復(fù)制配置文件
  • 復(fù)制 zone 文件
  • 需要注意 配置文件和 zone 文件的 權(quán)限,root 用戶,namde 組,0640
  • 配置防火墻
  • 設(shè)置開機自啟
  • 添加通知,在配置文件變更時重啟服務(wù)
[student@workstation dns-auto]$ cat configure_primary.yml
---
- name: Configure primary nameserver
  hosts: primary_dns
  remote_user: devops
  become: yes

  tasks:
    - name: Install BIND9
      yum:
        name: bind
        state: present

    - name: Copy primary config file
      copy:
        src: files/primary-named.conf
        dest: /etc/named.conf
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Copy forward zone file to primary
      copy:
        src: files/primary-backend.lab.example.com.zone
        dest: /var/named/backend.lab.example.com.zone
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Copy reverse zone file to primary
      copy:
        src: files/primary-192.168.0.zone
        dest: /var/named/192.168.0.zone
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Copy backend config file (for zones)
      copy:
        src: files/primary-named.backend.conf
        dest: /etc/named.backend.conf
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Allow dns service on firewall
      firewalld:
        service: dns
        state: enabled
        immediate: yes
        permanent: yes

    - name: Ensure named is running and enabled
      service:
        name: named
        state: started
        enabled: yes

  handlers:
    - name: reload_named
      service:
        name: named
        state: reloaded
[student@workstation dns-auto]$

主DNS 對應(yīng)的 配置:

  • 監(jiān)聽任意 53 端口
  • 允許同步的從服務(wù)器 IP 聲明
  • 允許進行 DSN 解析的 IP 聲明
  • 不允許進行 遞歸
[student@workstation dns-auto]$ cat files/primary-named.conf
# /etc/named.conf (primary/secondary)
#
# For this exercise, primary and secondary name.conf files are identical but
# have separate names in the project directory to avoid confusion when
# configuring playblooks.
#
# Template file for BIND labs.

options {
        listen-on port 53 { any; };
        directory "/var/named";
        allow-transfer { 192.168.0.12; };
        allow-query { localhost; 172.25.250.254; 192.168.0.0/24; };
        recursion no;

#Added the following
        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";

        /* https://fedoraproject.org/wiki/Changes/CryptoPolicy */
        include "/etc/crypto-policies/back-ends/bind.config";

};

#Added the following
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
include "/etc/named.backend.conf";
[student@workstation dns-auto]$

正向解析 zone 文件

[student@workstation dns-auto]$ cat files/primary-backend.lab.example.com.zone
$TTL 300
@ IN  SOA serverb.backend.lab.example.com. root.serverb.backend.lab.example.com. (
                        2020041806  ;serial number
                        1H          ;refresh secondary
                        5m          ;retry refresh
                        1w          ;expire zone
                        1m )        ;cache time-to-live for negative answers

; owner                   TTL     CL  type    RDATA
                          600     IN  NS      serverb
;                                  IN  MX 10   serverb.backend.lab.example.com.
;                                  IN  A       192.168.0.11

servera                           IN  A       192.168.0.10
serverb                           IN  A       192.168.0.11
serverc                           IN  A       192.168.0.12
serverd                           IN  A       192.168.0.13
[student@workstation dns-auto]$

反向解析 zone 文件

[student@workstation dns-auto]$ cat files/primary-192.168.0.zone
$TTL 300
@ IN SOA serverb.backend.lab.example.com. root.serverb.backend.lab.example.com. (
                    2020041805    ;serial number
                    1H            ;refresh secondary
                    5M            ;retry refresh
                    1W            ;expire zone
                    1M )          ;cache time-to-live for negative answers

; owner                   TTL   CL  type    RDATA
                          600   IN  NS      serverb.backend.lab.example.com.

10.0.168.192.IN-ADDR.ARPA.      IN  PTR     servera.backend.lab.example.com.
11                              IN  PTR     serverb.backend.lab.example.com.
12                              IN  PTR     serverc.backend.lab.example.com.
13                              IN  PTR     serverd.backend.lab.example.com.
[student@workstation dns-auto]$

添加的 zone 對應(yīng)的 配置文件

[student@workstation dns-auto]$ cat files/primary-named.backend.conf
zone "backend.lab.example.com" IN {
        type master;
        file "backend.lab.example.com.zone";
        forwarders {};
};

zone "0.168.192.in-addr.arpa" IN {
        type master;
        file "192.168.0.zone";
        forwarders {};
};
[student@workstation dns-auto]$

從 DNS 相關(guān)配置

劇本步驟和主的基本一致

[student@workstation dns-auto]$ cat configure_secondary.yml
---
- name: Configure secondary nameserver
  hosts: secondary_dns
  remote_user: devops
  become: yes

  tasks:
    - name: Install BIND9
      yum:
        name: bind
        state: present

    - name: Copy secondary config file
      copy:
        src: files/secondary-named.conf
        dest: /etc/named.conf
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Copy backend config file (for zones)
      copy:
        src: files/secondary-named.backend.conf
        dest: /etc/named.backend.conf
        owner: root
        group: named
        mode: 0640
      notify:
        - reload_named

    - name: Allow dns service on firewall
      firewalld:
        service: dns
        state: enabled
        immediate: yes
        permanent: yes

    - name: Ensure named is running and enabled
      service:
        name: named
        state: started
        enabled: yes

  handlers:
    - name: reload_named
      service:
        name: named
        state: reloaded
[student@workstation dns-auto]$

對應(yīng)的 zone 文件和 配置文件

[student@workstation dns-auto]$ cat files/secondary-named.backend.conf
zone "backend.lab.example.com" IN {
        type slave;
        file "slaves/backend.lab.example.com.zone";
        masters { 192.168.0.11; };
};

zone "0.168.192.in-addr.arpa" IN {
        type slave;
        file "slaves/192.168.0.zone";
        masters { 192.168.0.11; };
};
[student@workstation dns-auto]$
[student@workstation dns-auto]$ cat files/secondary-named.conf
# /etc/named.conf (primary/secondary)
#
# For this exercise, primary and secondary name.conf files are identical but
# have separate names in the project directory to avoid confusion when
# configuring playblooks.
#
# Template file for BIND labs.

options {
        listen-on port 53 { any; };
        directory "/var/named";
        allow-transfer { 192.168.0.12; };
        allow-query { localhost; 172.25.250.254; 192.168.0.0/24; };
        recursion no;

#Added the following
        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";

        /* https://fedoraproject.org/wiki/Changes/CryptoPolicy */
        include "/etc/crypto-policies/back-ends/bind.config";

};

#Added the following
logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
include "/etc/named.backend.conf";
[student@workstation dns-auto]$

緩存 DNS 相關(guān)配置

  • 涉及變量較多,所以這里我們使用了 模板文件的方法
  • 裝包
  • 生成配置文件
  • 配置防火墻
  • 啟動服務(wù)設(shè)置開機自啟
[student@workstation dns-auto]$ cat configure_caching.yml
---
- name: Install cache only nameserver
  hosts: caching_dns
  remote_user: devops
  become: yes

  vars:
    interface: 0.0.0.0
    interface_automatic: "yes"
    access_control:
      - "172.25.250.0/24 allow"
    domain_insecure: example.com
    forward_zone_name: .
    forward_zone_addr: "172.25.250.254"

  tasks:
    - name: Install cache only nameserver
      yum:
        name: unbound
        state: present

    - name: Create configuration file on caching server host
      template:
        src: unbound.conf.j2
        dest: /etc/unbound/conf.d/unbound.conf

    - name: Allow dns service on firewall
      firewalld:
        service: dns
        state: enabled
        immediate: yes
        permanent: yes

    - name: Ensure unbound is running and enabled
      service:
        name: unbound
        state: started
        enabled: yes

  handlers:
    - name: restart_unbound
      service:
        name: unbound
        state: restarted
[student@workstation dns-auto]$
[student@workstation dns-auto]$ cat templates/unbound.conf.j2
server:
        interface: {{ interface }}
        interface-automatic: {{ interface_automatic }}
{% for acl in access_control %}
        access-control: {{ acl }}
{% endfor %}
        domain-insecure: "{{ domain_insecure }}"

forward-zone:
        name: "{{ forward_zone_name }}"
        forward-addr: {{ forward_zone_addr }}
[student@workstation dns-auto]$

整個劇本涉及下面三個劇本

[student@workstation dns-auto]$ cat playbook.yml
---
- import_playbook: configure_primary.yml
- import_playbook: configure_secondary.yml
- import_playbook: configure_caching.yml
[student@workstation dns-auto]$

博文部分內(nèi)容參考

? 文中涉及參考鏈接內(nèi)容版權(quán)歸原作者所有,如有侵權(quán)請告知,這是一個開源項目,如果你認(rèn)可它,不要吝嗇星星哦 ??


https://www.isc.org/bind/

<RH358 授課課堂筆記>


? 2018-2023 liruilonger@gmail.com, All rights reserved. 保持署名-非商用-相同方式共享(CC BY-NC-SA 4.0)文章來源地址http://www.zghlxwxcb.cn/news/detail-648427.html

到了這里,關(guān)于DNS:自動化配置 主/從/緩存 DNS服務(wù)器的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【Linux】云服務(wù)器自動化部署VuePress博客(Jenkins)

    【Linux】云服務(wù)器自動化部署VuePress博客(Jenkins)

    博主此前是將博客部署在 Github Pages (基于 Github Action)和 Vercel 上的,但是這兩種部署方式對于國內(nèi)用戶很不友好,訪問速度堪憂。因此將博客遷移到自己的云服務(wù)器上,并且基于 Jenkins (一款開源持續(xù)集成工具)實現(xiàn)本地推送代碼后,自動化集成部署 環(huán)境 云服務(wù)器:Cent

    2024年02月13日
    瀏覽(57)
  • 華為openEuler在服務(wù)器自動化部署中的應(yīng)用案例

    華為openEuler在服務(wù)器自動化部署中的應(yīng)用案例

    案例背景: ????????隨著云計算和大數(shù)據(jù)技術(shù)的不斷發(fā)展,服務(wù)器部署的效率和穩(wěn)定性成為企業(yè)關(guān)注的焦點。華為 openEuler 作為一款開源的Linux發(fā)行版,提供了豐富的軟件包管理和系統(tǒng)優(yōu)化功能,非常適合用于構(gòu)建高效穩(wěn)定的服務(wù)器環(huán)境。 環(huán)境準(zhǔn)備: 選擇適配openEuler的服

    2024年02月19日
    瀏覽(27)
  • 云服務(wù)器使用jenkins+docker自動化部署SpringBoot項目

    云服務(wù)器使用jenkins+docker自動化部署SpringBoot項目

    docker?安裝jenkins,就這一步都惡心死了 //拉取鏡像,踩了很多坑,用其它版本的鏡像插件一直安裝失敗,最后用的是lts版本(基礎(chǔ)版) 用其它版本要么是連不上插件的下載地址,要么是插件下載不成功 ?docker pull jenkins/jenkins:lts ?部署 docker run --user root -d -p 10240:8080 -p 10241:50

    2024年02月01日
    瀏覽(31)
  • 內(nèi)網(wǎng)搭建Jenkins自動化遠程部署項目到Windows服務(wù)器

    內(nèi)網(wǎng)搭建Jenkins自動化遠程部署項目到Windows服務(wù)器

    War Jenkins Packages 不贅述 一個小訣竅;去有外網(wǎng)的PC上面,部署Jenkins正常搜索插件安裝,然后找到安裝目錄,有個.Jenkins的文件夾,里面有個plug的文件夾,這個就是我們所需所有插件,然后把它拷貝到內(nèi)網(wǎng)中。? 捷徑(Jenkins2.346.1版本所需插件):https://download.csdn.net/download/b

    2024年02月17日
    瀏覽(25)
  • Centos7.9寶塔搭建Hexo博客,實現(xiàn)本地一鍵自動化部署到服務(wù)器

    Centos7.9寶塔搭建Hexo博客,實現(xiàn)本地一鍵自動化部署到服務(wù)器

    有問題可以留言相互討論 ,我的hexo博客地址,請勿頻繁訪問或者攻擊,僅供學(xué)習(xí)和參考。 用于存放下載的git包 會顯示一堆.o類型的文件,表示正在從源碼編譯。 未顯示錯誤直接跳到“ 安裝 ”步驟 如果出現(xiàn)錯誤collect2: error: ld returned 1 exit status. 原因是gcc版本較低所致,與所

    2024年02月06日
    瀏覽(46)
  • 自動化測試實戰(zhàn)篇(8),jmeter并發(fā)測試登錄接口,模擬從100到1000個用戶同時登錄測試服務(wù)器壓力

    自動化測試實戰(zhàn)篇(8),jmeter并發(fā)測試登錄接口,模擬從100到1000個用戶同時登錄測試服務(wù)器壓力

    進程是資源分配最小單位,線程是程序執(zhí)行的最小單位; 每個進程內(nèi)部會有N個線程,但至少要有1個線 程。 比如公司就是一個進程,公司的員工就是線程。 線程占用的資源要?進程少很多。 線程之間通信比進程更方便 并發(fā)是指在一個時間段內(nèi)有多個進程在執(zhí)行 并行指的是

    2024年02月16日
    瀏覽(24)
  • 利用Figlet工具創(chuàng)建酷炫Linux Centos8服務(wù)器-登錄歡迎界面-SHELL自動化編譯安裝代碼

    利用Figlet工具創(chuàng)建酷炫Linux Centos8服務(wù)器-登錄歡迎界面-SHELL自動化編譯安裝代碼

    因為我們需要生成需要的特定字符,所以需要在當(dāng)前服務(wù)器中安裝Figlet,默認(rèn)沒有安裝包的,其實如果我們也只要在一臺環(huán)境中安裝,然后需要什么字符只要復(fù)制到需要的服務(wù)器中,并不需要所有都安裝。同樣的,我們也可以利用此生成的字符用到腳本運行的開始起頭部分,

    2024年02月12日
    瀏覽(30)
  • Linux服務(wù)器如何清除dns緩存

    Linux服務(wù)器如何清除dns緩存

    DNS緩存是一個臨時數(shù)據(jù)庫,用于存儲已解釋的DNS查詢信息。換句話說,每當(dāng)你訪問網(wǎng)站時,你的操作系統(tǒng)和網(wǎng)絡(luò)瀏覽器都會保留域名和相應(yīng)IP地址的記錄。 這消除對遠程DNS服務(wù)器重復(fù)查詢,并允許你的操作系統(tǒng)或瀏覽器快速解析網(wǎng)站的域名。 但是在某些情況下,例如對網(wǎng)絡(luò)問

    2023年04月15日
    瀏覽(25)
  • 華為云云耀云服務(wù)器L實例評測|Python Selenium加Chrome Driver構(gòu)建UI自動化測試實踐

    華為云云耀云服務(wù)器L實例評測|Python Selenium加Chrome Driver構(gòu)建UI自動化測試實踐

    ??作者簡介,黑夜開發(fā)者,CSDN領(lǐng)軍人物,全棧領(lǐng)域優(yōu)質(zhì)創(chuàng)作者?,CSDN博客專家,阿里云社區(qū)專家博主,2023年6月CSDN上海賽道top4。 ??數(shù)年電商行業(yè)從業(yè)經(jīng)驗, AWS/阿里云資深使用用戶 ,歷任核心研發(fā)工程師,項目技術(shù)負(fù)責(zé)人。 ??歡迎 ??點贊?評論?收藏 隨著云計算時代

    2024年02月08日
    瀏覽(22)
  • 銀河麒麟V10SP1高級服務(wù)器版本離線RPM方式升級openssl openssh 自動化升級系統(tǒng)補丁實戰(zhàn)實例全網(wǎng)唯一

    銀河麒麟V10SP1高級服務(wù)器版本離線RPM方式升級openssl openssh 自動化升級系統(tǒng)補丁實戰(zhàn)實例全網(wǎng)唯一

    銀河麒麟高級服務(wù)器操作系統(tǒng)簡介: 銀河麒麟高級服務(wù)器操作系統(tǒng)V10是針對企業(yè)級關(guān)鍵業(yè)務(wù),適應(yīng)虛擬化、云計算、大數(shù)據(jù)、工業(yè)互聯(lián)網(wǎng)時代對主機系統(tǒng)可靠性、安全性、性能、擴展性和實時性等需求,依據(jù)CMMI5級標(biāo)準(zhǔn)研制的提供內(nèi)生本質(zhì)安全、云原生支持、自主平臺深入優(yōu)

    2024年02月15日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包