LINUX 搭建DNS服務(wù)器
DNS 服務(wù)介紹后臺進程:named腳本:/etc/rc.d/init.d/named使用端口:53(tcp ,udp )所需RPM 包:bind-9.3.3-10.el5相關(guān)RPM 包:bind-c
DNS 服務(wù)介紹
后臺進程:named
腳本:/etc/rc.d/init.d/named
使用端口:53(tcp ,udp )
所需RPM 包:bind-9.3.3-10.el5
相關(guān)RPM 包:bind-chroot
caching-nameserver
配置文件:/var/named/chroot/etc/named.conf
相關(guān)路徑:/var/named/
#現(xiàn)在服務(wù)器軟件通常設(shè)計為以root 權(quán)限啟動,然后服務(wù)器進程自行放棄root ,再以某個低權(quán)限的系統(tǒng)賬號來運行進程。這種方式的好處在于該服務(wù)被攻擊者利
用漏洞入侵時,由于進程權(quán)限很低,攻擊者得到的訪問權(quán)限又是基于這個較低權(quán)限。 事實上,需要正反解成對的大概僅有郵件服務(wù)器,如果想架設(shè)郵件服務(wù)器,最好具有固定IP, 這樣才能向您的ISP 要求設(shè)置反解,反解都要通過上層主機的設(shè)置才行。
1, 查詢系統(tǒng)是否有安裝DNS 服務(wù)器
2,安裝bind 服務(wù)器 (Bind 是Berkeley Internet Name Domain Service的簡寫)
如果用rpm 方式安裝的話,需要安裝以下安裝包
,#centos5.5環(huán)境下無法安裝
bind-sdb,
用yum
安裝時檢查提示需要安裝依賴關(guān)系
postgresql-libs-8.1.18-2.e15_4.1.i386.rpm
安裝好依賴關(guān)系后再來安裝
,至此,rpm 安裝完成,當(dāng)然也可以用yum 來安裝更快捷。
3,
bind 服務(wù)器全局配置(options )
#bind的配置文件默認(rèn)是沒有的,需要自己手寫,但是很多,容易寫錯,所以我們安裝模板文件,然后來修改。由于安裝了chroot 環(huán)境,所以我們的/etc/named.conf 應(yīng)該在/var/named/chroot/etc/ 目錄。
沒有named.conf ,所以我們要把named.caching-name.conf 文件copy 一份成named.conf
編輯named.conf 這個文件, 把文件里面多余的東西刪除了,只剩下如圖中的內(nèi)容,然后我們來寫
.
3.1, 配制named.conf 文件
options 語句在每個配置文件中只有一個。如果出現(xiàn)多個options, 則第一個options 的配置有效,并會產(chǎn)生一個警告信息。
listen-on port 53 { 127.0.0.1; };
監(jiān)聽端口,修改成自己的IP 地址,如果有多個IP ,就寫多個,每行要以;結(jié)束。
,directory "/var/named";
zone 文件的存放目錄,這里的/var/named 是相對目錄,在chroot 環(huán)境下/var/named目錄下。
dump-file "/var/named/data/cache_dump.db"; 設(shè)置DNS 緩存數(shù)據(jù)的指定文件。
statistics-file "/var/named/data/named_stats.txt"; DNS 統(tǒng)計數(shù)據(jù)寫入的文件。 allow-query { localhost; };
允許查詢的client ,我們修改成本地網(wǎng)段192.168.202.0/24,可以設(shè)置any,none,ip 網(wǎng)段。
3.2,區(qū)域配置
配置實例:下面我以centos.com 這個二級域名來建立一個域名服務(wù)器
#由主機名查找IP 的過程為正解,由IP 查詢得到主機名為反解,一個正解或反解的設(shè)置就是一個Zone.
第一步:設(shè)置根區(qū)域
zone “. ”IN{ :根區(qū)域
type hint ; :指定該域的類型,有hint,master,slave 等可選,hint 類型特指該區(qū)域為root 域
file “named.ca ”;}; :解析文件文件名
第二步:指定正向解析的配置文件
#記住,bind 對配置文件要求很嚴(yán)格,就算是有些地方多了個空格,服務(wù)器都可能啟動不了哈~
zone “centos.com" IN{ : 新建一個域,域名為centos.com
type master; :master 指該區(qū)域為主區(qū)域,slave 指該區(qū)域為輔導(dǎo)區(qū)域。 file “centos.com ”; :指定存放該區(qū)域數(shù)據(jù)的文件名,每個區(qū)域以分號結(jié)尾。
,第三步:指定反向解析的配置文件
一個簡單的named.conf 配置文件就做好了
保存,然后我們?nèi)バ薷膮^(qū)別文件,添加記錄
#centos.com.zone, 是你剛才在named.conf 里面定義的名字
第四步:添加解析記錄
#TTL是生存期, 單位是秒 ,$TTL是全局定義的,86400秒。
第二行 SOA記錄,@取代在/etc/named.conf中指定的域名,root.centos.com. 是管理員郵箱地址,后面加點表示絕對地址(全名)。
SOA 段中的數(shù)字,分別為:序列號、刷新、重試、過期、生存期
序列號: 序列號用于DNS 數(shù)據(jù)庫文件的版本控制。每當(dāng)數(shù)據(jù)被改變,這個序列號就應(yīng)該被增加。 刷新: 從服務(wù)器向主服務(wù)器查詢最新數(shù)據(jù)的間隔周期。每一次檢查時從服務(wù)器的數(shù)據(jù)是否需要更改,
,則根據(jù)序列號來判別。
重試: 一旦從服務(wù)器嘗試連接主服務(wù)器失敗,下一次查詢主服務(wù)器的延遲時間。
過期
:
如果從服務(wù)器無法連通主服務(wù)器,則在經(jīng)過此時間后,宣告其數(shù)據(jù)過期。
生存期:
服務(wù)器回答 ‘無此域名’ 的間隔時間。
數(shù)字的默認(rèn)單位為秒。否則:W= 周、D= 日、H= 小時、M= 分鐘。
下面我們來配置正向解析文件,這里的主機名為mail
簡單的正向配置文件就到這里, 下面接著講反向解析的zone 文件。
把正向解析zone 文件拷貝一份,名字是你在named.conf 中定義的反向解析的名字 編輯反向解析文件
只需要把A 記錄修改成PTR 記錄就可以了,PTR 是反向解析的意思,把IP 地址修改成域名 然后保存退出
配置文件就寫完了,下面我們來使用配置文件檢測工具來檢測我們的配置文件語法是否正確 檢測區(qū)域文件的語法
語法為named-checkzone 域名 配置文件
,檢查正向配制文件語法
檢查反向配制文件語法
最后需要修改name.conf
的所有者,因為bind
要以named
帳號才能啟動
最開始的時候就是因為沒有修改反向文件的的權(quán)限導(dǎo)致無法解析,一直找不到問題,今后要特別注意。
修改DNS 域名服務(wù)器
啟動DNS 服務(wù)器
還可以用下面的方式啟動DNS 服務(wù)器
最后檢測解析一下域名:
再來解析一下IP:
,大功告成。
dig
命令
域信息搜索器,查詢DNS
服務(wù)器的解析
host 解析域名
正向文件檢查
named-checkconf /etc/named.conf
反向文件檢查
named-checkzone 206.168.192.in-addr.arpa /var/named/192.168.2026.zone
補充:
此實驗的服務(wù)器IP 地址為192.168.202.62,在局域網(wǎng)內(nèi)沒有上網(wǎng)權(quán)限,通過以下解析測試
可以得出:
,之所以能夠解析到CCTV 外網(wǎng)的
IP ,是因為在主配制文件named.conf 中,當(dāng)DNS 在centos 域中無法查找到相關(guān)信息時會將請求提交到根域服務(wù)器中
,所以能夠通過根域文件解析得到。
全球一共十三臺服務(wù)器。
,