redhat5下DNS配置詳解
版權(quán)聲明:原創(chuàng)作品,謝絕轉(zhuǎn)載!否則將追究法律責(zé)任。在LINUX 下面架設(shè)DNS 服務(wù)器,不知道DNS 解析原理,根本會(huì)了和不會(huì)沒區(qū)別,網(wǎng)絡(luò)中為了區(qū)別各個(gè)主機(jī),必須為每臺(tái)主機(jī)分配一個(gè)惟一的地址,這個(gè)地址
版權(quán)聲明:原創(chuàng)作品,謝絕轉(zhuǎn)載!否則將追究法律責(zé)任。
在LINUX 下面架設(shè)DNS 服務(wù)器,不知道DNS 解析原理,根本會(huì)了和不會(huì)沒區(qū)別,
網(wǎng)絡(luò)中為了區(qū)別各個(gè)主機(jī),必須為每臺(tái)主機(jī)分配一個(gè)惟一的地址,這個(gè)地址即稱為“IP地址”。但這些數(shù)字難以記憶,所以就采用“域名”的方式來取代這些數(shù)字了。
當(dāng)某臺(tái)主機(jī)要與其他主機(jī)通信時(shí),就可以利用主機(jī)名稱向DNS 服務(wù)器查詢?cè)撝鳈C(jī)的IP 地址,所以我們的網(wǎng)卡要上網(wǎng)至少要3個(gè)信息,IP 地址,網(wǎng)關(guān),DNS 服務(wù)器地址。
DNS 的組織結(jié)構(gòu)
這個(gè)就是DNS 的組織結(jié)構(gòu),最上面是根域名 dot ,全球13臺(tái)根域服務(wù)器,沒有一臺(tái)在中國,因?yàn)橹袊W(wǎng)絡(luò)發(fā)展,起步遲。而且所有的dot DNS 服務(wù)器都是bind 軟件架設(shè)的,我們今天要學(xué)習(xí)的也是bind 軟件。全球70的大型DNS 服務(wù)器都是基于bind 軟件。
常見的頂級(jí)域服務(wù)器
1
我國的頂級(jí)域也就只有cn
DNS 解析過程
我給大家解釋下,比如解析host 文件和緩存有沒有這個(gè)記錄,有就直接解析,沒有就訪問DNS 服務(wù)器,如果DNS 服務(wù)器上沒[url]www.redhat.com[/url]或者redhat.com 不在你訪問的DNS 服務(wù)器管理區(qū)域內(nèi),那么DNS 服務(wù)器就會(huì)向dot 根域名服務(wù)器發(fā)遞歸查詢, 如果找到了記錄了,DNS 就會(huì)返回給client ,并且把記錄保存在自己緩存里,下次有client 請(qǐng)求,他就會(huì)調(diào)用自己的緩存,直到這條記錄的生存期結(jié)束, 就會(huì)丟棄這條記錄。
根域名服務(wù)器就13臺(tái)域名服務(wù)器,他負(fù)責(zé)管理頂級(jí)域。頂級(jí)域負(fù)責(zé)管理二級(jí)域,我們現(xiàn)在申請(qǐng)的一般是2級(jí)域名-3級(jí)域名。比如michael.com,michael.com.cn 哈~michael.com是2級(jí)域名,michael.com.cn 是3級(jí)域名,michae l.com.cn. 這個(gè)就是FQDN 。
本周我們要學(xué)習(xí)的內(nèi)容
主配置文件
設(shè)置根區(qū)域
設(shè)置主區(qū)域
設(shè)置反向解析區(qū)域
根服務(wù)器信息文件named.ca
區(qū)域文件
2
,反向解析區(qū)域文件
實(shí)現(xiàn)負(fù)載均衡功能
實(shí)現(xiàn)直接解析域名
實(shí)現(xiàn)泛域名的解析
主要名稱服務(wù)器的測(cè)試
配置輔助域名服務(wù)器
配置緩存域名服務(wù)器
我們申請(qǐng)的是域名,然后你去管理你的域名,自己添加主機(jī)記錄哈~
其實(shí)michael.cn 是域名, 前面的主機(jī)記錄隨便你怎么寫,abc.michael.cn 也行,jfajldjfklajdfkljaklf.michael.cn 也行, michael.com 是域名,www 是主機(jī)。
比如[url]www.redhat.com[/url],[url]www.redhat.com.[/url] 最后點(diǎn)是根域名,然后com 是頂級(jí)域名,redha t 是二級(jí)域名,www 是主機(jī)記錄,如果你要說是域名也可以,那么主機(jī)就改成是了,在選擇域名時(shí)必須符合RCF 1123中的規(guī)定:域名由所有大寫字母(A ~Z )、小寫字母(a ~z )、數(shù)字(0~9)和連字符(-)組成。由于很多域名商,所以現(xiàn)在想申請(qǐng)到好的2及域名是不可能了,域名大小寫不敏感。
每臺(tái)主機(jī)都有一個(gè)host 文件,負(fù)責(zé)IP 地址的域名快速解析的文件,文件以ASCII 格式保存在“/etc”目錄下,文件名為“hosts”,hosts 文件包含了IP 地址和主機(jī)名之間的映射,還包括主機(jī)名的別名。
hosts 文件的格式如下:
IP 地址 主機(jī)名/域名 主機(jī)別名
windows 下也有hosts 文件,C:WINDOWSsystem32driversetc
可以使用記事本打開
3
,如果host 里有記錄就會(huì)優(yōu)先使用,這個(gè)文件也是黑客,和病毒軟件攻擊你的一個(gè)入口,如果某個(gè)病毒軟件在這個(gè)文件添加一個(gè)記錄202.23.23.1 ,然而前面這個(gè)IP 地址是帶有病毒的而已網(wǎng)站,或者是釣魚攻擊,你可能就會(huì)出問題,所以這個(gè)文件一般修改成只讀,還有些第三方軟件,為了防止一些木馬之類的病毒,會(huì)把一些有問題的網(wǎng)站在自理定義,解析成127.0.0.1,這樣你就不會(huì)訪問到這些網(wǎng)站,360就會(huì)這么干哈~
linux 也有這個(gè)文件
/etc/hosts
4
,好了,下面介紹下bind 軟件,Linux 下架設(shè)DNS 服務(wù)器通常是使用Bind 程序來實(shí)現(xiàn)的。
Bind 是Berkeley Internet Name Domain Service 的簡(jiǎn)寫,它是一款實(shí)現(xiàn)DNS 服務(wù)器的開放源碼軟件。Bind 原本是美國DARPA 資助伯克里大學(xué)(Berkeley )開設(shè)的一個(gè)研究生課題,后來經(jīng)過多年的變化發(fā)展,已經(jīng)成為世界上使用最為廣泛的DNS 服務(wù)器軟件,目前Internet 上絕大多數(shù)的DNS 服務(wù)器有都是用Bind 來架設(shè)的。
DNS 服務(wù)介紹
后臺(tái)進(jìn)程: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/
1990年以后,bind-chroot 增加了bind 服務(wù)器的安全性, 早期Linux 服務(wù)都是以root 權(quán)限啟動(dòng)和運(yùn)行的,隨著技術(shù)的發(fā)展,各種服務(wù)變得越來越復(fù)雜,導(dǎo)致BUG 和漏洞越來越多。黑客利用服務(wù)的漏洞入侵系統(tǒng),能獲得root 級(jí)別的權(quán)限,從而控制整個(gè)系統(tǒng)。
為了減緩這種攻擊所帶來的負(fù)面影響,現(xiàn)在服務(wù)器軟件通常設(shè)計(jì)為以root 權(quán)限啟動(dòng),然后服務(wù)器進(jìn)程自行放棄root ,再以某個(gè)低權(quán)限的系統(tǒng)賬號(hào)來運(yùn)行進(jìn)程。這種方式的好處在于該服務(wù)被攻擊者利用漏洞入侵時(shí),由于進(jìn)程權(quán)限很低,攻擊者得到的訪問權(quán)限又是基于這個(gè)較低權(quán)限。
bind 的主配置文件/etc/named.conf ,我們先安裝bind 服務(wù)器
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/bind-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/bind-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100] 1:bind ########################################### [100]
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/bind-libbind-devel-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/bind-libbind-devel-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: N
5
,OKEY, key ID 37017186
Preparing... ########################################### [100] 1:bind-libbind-devel ########################################### [100]
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/bind-sdb-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/bind-sdb-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, ke y ID 37017186
Preparing... ########################################### [100] 1:bind-sdb ########################################### [100]
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/bind-devel-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/bind-devel-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, k ey ID 37017186
Preparing... ########################################### [100] 1:bind-devel ########################################### [100]
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/caching-nameserver-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/caching-nameserver-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100] 1:caching-nameserver ########################################### [100]
[root@rhel5 ~]# rpm -ivh /mnt/cdrom/Server/bind-chroot-9.3.3-10.el5.i386.rpm
warning: /mnt/cdrom/Server/bind-chroot-9.3.3-10.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100] 1:bind-chroot ########################################### [100]
[root@rhel5 ~]#
6
,注意:bind-chroot 軟件包最好最后一個(gè)安裝,否則會(huì)報(bào)錯(cuò)哈~~~
bind 的配置文件默認(rèn)是沒有的,需要自己手寫,但是很多,容易寫錯(cuò),所以我們安裝模板文件,然后來修改。由于安裝了chroot 環(huán)境,所以我們的/etc/named.conf 應(yīng)該在/var/named/chroot/etc/ 目錄。
7
沒有named.conf ,所以我們要把named.caching-name.conf 文件copy 一份成named.conf 哈~
cp /var/named/chroot/etc/named.caching-nameserver.conf /var/named/chroot/etc/named.conf
編輯named.conf 這個(gè)文件, 把文件里面多余的東西刪除了,只剩下如圖中的內(nèi)容,然后我們來寫
先檢查你主機(jī)的名字,使用hostname
記住,linux 的主機(jī)名要是FQDN 的樣式,把你們自己的主機(jī)名字改改,不要最后的那個(gè),這個(gè)很重要的。 剛才講了FQDN 最后有根域的,把那個(gè)跟域去掉,就是你的主機(jī)名,改成那個(gè)樣子。
linux 修改主機(jī)名字修改三個(gè)地方,不知道大家還記得不?
第一步:hostname 主機(jī)名
8
,第二步:vim
/etc/hosts
第三步:vim /etc/sysconfig/network
修改完了把終端關(guān)閉了,然后重新打開就可以了
9
,修改完了,我們繼續(xù)
下面我以michael.com 這個(gè)二級(jí)域名來建立一個(gè)域名服務(wù)器
全局配置(options )
options 語句在每個(gè)配置文件中只有一個(gè)。如果出現(xiàn)多個(gè)options, 則第一個(gè)options 的配置有效,并會(huì)產(chǎn)生一個(gè)警告信息。
listen-on port 53 { 127.0.0.1; };
監(jiān)聽端口,修改成自己的IP 地址,如果有多個(gè)IP ,就寫多個(gè),每行要以;結(jié)束。
directory "/var/named";
zone 文件的存放目錄,這里的/var/named 是相對(duì)目錄,在chroot 環(huán)境下/var/named目錄下。
allow-query { localhost; };
允許查詢的client ,我們修改成本地網(wǎng)段192.168.1.0/24
10