1、dns的安裝
dns的基本安裝包有四個bind、bind-lib、bind-utils、caching-nameserver。還有一個安裝包bind-chroot、這個安裝包可以保護你的dns,增加了安全性。如果有人想通過你的dns來***你的服務器,即使進入了dns的配置目錄也跳不到其他的目錄,只能在dns的配置目錄下。其實它的所有配置文件是在/var/named/chroot下,etc和var目錄下的所有配置文件都是做的軟連接,chroot能夠很好的保護你的系統。
接下來就是軟件的安裝:
yum install bind
yum install bind-lib
yum install bind-utils
yum install caching-nameserver
2、dns的主要配置文件
/etc/ named.caching-nameserver.conf 主配置文件,用於設置dns服務器的全局參數,並指定文件名及其保存路徑。
/etc/named.rfc1912.zones 在主配置文件默認設置區域文件的定義都在這個文件裏指定
/var/named/named.ca 指向跟服務器的信息文件,不需要手工修改,默認已有,但是可以在官網上下載最新的根服務器信息到這個目錄
/var/named/localhost.zone 用於對本級的主機名或域名進行正向解析(默認已有)
/var/named/named.local 用於對本級的主機名或域名進行反向解析 (默認已有)
正向區域文件 在/var/named下,由named.rfc1912.zones來執行
反向區域文件 在/var/named下,由named.rfc1912.zones來執行
3、dns主要配置文件的設置
vim /etc/ named.caching-nameserver.conf
options {
listen-on port 53 { any; }
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { any; };
allow-query-cache { any; };
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost_resolver {
match-clients { any; };
match-destinations { any; };
recursion yes;
include "/etc/named.rfc1912.zones ";
};
options 定義全局配置
listen-on 定義監聽的端口,後邊{}要改爲any,監聽所有53端口的請求,默認只監聽自己的53端口
directory 定義dns區域文件的路徑
dump-file 定義服務器的存放數據庫的路徑,當執行rndc dumpdb命令時會用到此選項,也就是將內存的緩存記錄寫入到文件cache_dump.db中。
statistics-file、memstatistics-file這兩個選項定義dns的當前狀態和緩存狀態文件
allow-query 定義允許客戶端能夠訪問本機的dns服務
logging 定義日誌文件的一些性質
file 定義日誌文件的存放位置,可以寫相對路徑
severity 定義日誌的級別
include 把定義區域文件信息的/etc/named.rfc1912.zones這個文件加載到主配置文件。
vim /etc/named.rfc1912.zones
省略了文件中默認定義的區域,包括根域、本地域定信息。
#gongchang
zone "gongchang.com" IN {
type master;
file "gongchang.com.zone";
};
zone "217.190.60.in-addr.arpa" IN {
type master;
file "60.190.217.zero";
};
vim /var/named/gongchang.com.zone
$TTL 86400
@ IN SOA localhosts. root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS @
IN A 127.0.0.1
IN AAAA ::1
ar IN A 60.190.217.33
www.ar IN A 60.190.217.33
*.ar IN A 60.190.217.33
SOA(Start Of Authority,授權起碼)記錄是主域名服務器的區域文件中必不可少的記錄,並總是處於區域文件中所有記錄的最前面。定義了本域名數據的基本信息和屬性。
域名 IN SOA 主機名 管理員電子郵件 (
序列號
刷新時間
重試時間
過期時間
最小時間 )
(1)域名,通常使用“@”符號來表示,其值是named.conf文件中zone語句定義的域名。
(2)主機名,如“dns.richedu.com.”或“richedu.com.”。注意此時以“.”來結尾。這是因爲區域文件中規定凡是以“.”結束的名稱是完整的主機名,而沒有“.”結束的名稱是本區域的相對域名。
(3)管理員的電子郵件地址。由於“@”符號在區域文件中另有他用,所以管理員的電子郵件地址中不能使用“@”符號,而是使用“.”符號代替。如:root.richedu.com. 或簡寫 root。
NS(Name Server)記錄指明區域中DNS服務器的主機名,是區域文件中不可缺少的資源記錄。
A(Address,地址)記錄指明域名與IP地址的相互關係,僅用於正向區域文件。通常僅寫出完整域名中最左端的主機名
vim /var/named/60.190.217.zero
$TTL 86400
@ IN SOA localhost. root.localhost. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS localhost.
33 IN PTR ar.gongchang.com
33 IN PTR www.ar.gongchang.com
33 IN PTR ar-style.gcimg.net
33 IN PTR ar-map.gcimg.net
PTR記錄用於實現從IP地址到域名的解析,僅用於反向區域文件。通常僅寫出完整IP地址的最後一部分。