W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
BIND(Berkeley Internet Name Domain,伯克利因特網(wǎng)名稱域)服務(wù)是全球范圍內(nèi)使用最廣泛、最安全可靠且高效的域名解析服務(wù)程序。DNS域名解析服務(wù)作為互聯(lián)網(wǎng)基礎(chǔ)設(shè)施服務(wù),其責(zé)任之重可想而知,因此建議大家在生產(chǎn)環(huán)境中安裝部署bind服務(wù)程序時(shí)加上chroot(俗稱牢籠機(jī)制)擴(kuò)展包,以便有效地限制bind服務(wù)程序僅能對自身的配置文件進(jìn)行操作,以確保整個(gè)服務(wù)器的安全。
[root@linuxprobe ~]# yum install bind-chroot
Loaded plugins: langpacks, product-id, subscription-manager
………………省略部分輸出信息………………
Installing:
bind-chroot x86_64 32:9.9.4-14.el7 rhel 81 k
Installing for dependencies:
bind x86_64 32:9.9.4-14.el7 rhel 1.8 M
Transaction Summary
================================================================================
Install 1 Package (+1 Dependent package)
Total download size: 1.8 M
Installed size: 4.3 M
Is this ok [y/d/N]: y
Downloading packages:
--------------------------------------------------------------------------------
Total 28 MB/s | 1.8 MB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : 32:bind-9.9.4-14.el7.x86_64 1/2
Installing : 32:bind-chroot-9.9.4-14.el7.x86_64 2/2
Verifying : 32:bind-9.9.4-14.el7.x86_64 1/2
Verifying : 32:bind-chroot-9.9.4-14.el7.x86_64 2/2
Installed:
bind-chroot.x86_64 32:9.9.4-14.el7
Dependency Installed:
bind.x86_64 32:9.9.4-14.el7
Complete!
bind服務(wù)程序的配置并不簡單,因?yàn)橐霝橛脩籼峁┙∪腄NS查詢服務(wù),要在本地保存相關(guān)的域名數(shù)據(jù)庫,而如果把所有域名和IP地址的對應(yīng)關(guān)系都寫入到某個(gè)配置文件中,估計(jì)要有上千萬條的參數(shù),這樣既不利于程序的執(zhí)行效率,也不方便日后的修改和維護(hù)。因此在bind服務(wù)程序中有下面這三個(gè)比較關(guān)鍵的文件。
主配置文件(/etc/named.conf):只有58行,而且在去除注釋信息和空行之后,實(shí)際有效的參數(shù)僅有30行左右,這些參數(shù)用來定義bind服務(wù)程序的運(yùn)行。
區(qū)域配置文件(/etc/named.rfc1912.zones):用來保存域名和IP地址對應(yīng)關(guān)系的所在位置。類似于圖書的目錄,對應(yīng)著每個(gè)域和相應(yīng)IP地址所在的具體位置,當(dāng)需要查看或修改時(shí),可根據(jù)這個(gè)位置找到相關(guān)文件。
數(shù)據(jù)配置文件目錄(/var/named):該目錄用來保存域名和IP地址真實(shí)對應(yīng)關(guān)系的數(shù)據(jù)配置文件。
在Linux系統(tǒng)中,bind服務(wù)程序的名稱為named。首先需要在/etc目錄中找到該服務(wù)程序的主配置文件,然后把第11行和第17行的地址均修改為any,分別表示服務(wù)器上的所有IP地址均可提供DNS域名解析服務(wù),以及允許所有人對本服務(wù)器發(fā)送DNS查詢請求。這兩個(gè)地方一定要修改準(zhǔn)確。
[root@linuxprobe ~]# vim /etc/named.conf
1 //
2 // named.conf
3 //
4 // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
5 // server as a caching only nameserver (as a localhost DNS resolver only).
6 //
7 // See /usr/share/doc/bind*/sample/ for example named configuration files.
8 //
9
10 options {
11 listen-on port 53 { any; };
12 listen-on-v6 port 53 { ::1; };
13 directory "/var/named";
14 dump-file "/var/named/data/cache_dump.db";
15 statistics-file "/var/named/data/named_stats.txt";
16 memstatistics-file "/var/named/data/named_mem_stats.txt";
17 allow-query { any; };
18
19 /*
20 - If you are building an AUTHORITATIVE DNS server, do NOT enable re cursion.
1,1 Top
21 - If you are building a RECURSIVE (caching) DNS server, you need to enable
22 recursion.
23 - If your recursive DNS server has a public IP address, you MUST en able access
24 control to limit queries to your legitimate users. Failing to do so will
25 cause your server to become part of large scale DNS amplification
26 attacks. Implementing BCP38 within your network would greatly
27 reduce such attack surface
28 */
29 recursion yes;
30
31 dnssec-enable yes;
32 dnssec-validation yes;
33 dnssec-lookaside auto;
34
35 /* Path to ISC DLV key */
36 bindkeys-file "/etc/named.iscdlv.key";
37
38 managed-keys-directory "/var/named/dynamic";
39
40 pid-file "/run/named/named.pid";
41 session-keyfile "/run/named/session.key";
42 };
43
44 logging {
45 channel default_debug {
46 file "data/named.run";
47 severity dynamic;
48 };
49 };
50
51 zone "." IN {
52 type hint;
53 file "named.ca";
54 };
55
56 include "/etc/named.rfc1912.zones";
57 include "/etc/named.root.key";
58
如前所述,bind服務(wù)程序的區(qū)域配置文件(/etc/named.rfc1912.zones)用來保存域名和IP地址對應(yīng)關(guān)系的所在位置。在這個(gè)文件中,定義了域名與IP地址解析規(guī)則保存的文件位置以及服務(wù)類型等內(nèi)容,而沒有包含具體的域名、IP地址對應(yīng)關(guān)系等信息。服務(wù)類型有三種,分別為hint(根區(qū)域)、master(主區(qū)域)、slave(輔助區(qū)域),其中常用的master和slave指的就是主服務(wù)器和從服務(wù)器。將域名解析為IP地址的正向解析參數(shù)和將IP地址解析為域名的反向解析參數(shù)分別如圖13-3和圖13-4所示。
圖13-3 正向解析參數(shù)
圖13-4 反向解析參數(shù)
下面的實(shí)驗(yàn)中會分別修改bind服務(wù)程序的主配置文件、區(qū)域配置文件與數(shù)據(jù)配置文件。如果在實(shí)驗(yàn)中遇到了bind服務(wù)程序啟動失敗的情況,而您認(rèn)為這是由于參數(shù)寫錯(cuò)而導(dǎo)致的,則可以執(zhí)行named-checkconf命令和named-checkzone命令,分別檢查主配置文件與數(shù)據(jù)配置文件中語法或參數(shù)的錯(cuò)誤。
出現(xiàn)問題?大膽提問!
因讀者們硬件不同或操作錯(cuò)誤都可能導(dǎo)致實(shí)驗(yàn)配置出錯(cuò),請耐心再仔細(xì)看看操作步驟吧,不要?dú)怵H~
Linux技術(shù)交流請加A群:560843(滿),B群:340829(推薦),C群:463590(推薦),點(diǎn)此查看全國群。
*本群特色:通過口令驗(yàn)證確保每一個(gè)群員都是《Linux就該這么學(xué)》的讀者,答疑更有針對性,不定期免費(fèi)領(lǐng)取定制禮品。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: