新聞中心
centos7下安裝配置DNS服務器過程,寫下來以備不時之需好了。先介紹一下相關的名詞解釋。

創(chuàng)新互聯建站于2013年成立,是專業(yè)互聯網技術服務公司,擁有項目成都網站設計、成都網站建設、外貿網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元浦江做網站,已為上家服務,為浦江各地企業(yè)和個人服務,聯系電話:18982081108
名詞解析:
-
FQDN:Fully Qualified Domain Name,完全合格域名,是指主機名加上全路徑,例如ns1.baidu.com.
-
SOA:Start of Authority,起始授權記錄,用于設置該域的序列號、刷新時間、過期時間等信息,在定義每個域時SOA只能定義一條,而且必須在起始位置定義。
-
NS:Name Server,域名服務器記錄,作用是定義創(chuàng)建的新域是由哪個DNS服務器來負責解析。
-
MX:Mail eXchanger,郵件交換記錄,指向的是一個郵件服務器,用來當發(fā)郵件的時候,根據收件人的地址后綴來定位郵件服務器,說白了就是讓郵件服務器知道應該把這封郵件發(fā)到哪里去。
需要注意一點的是定義MX記錄時因為@符號在DNS服務器配置中有特殊的含義,表示當前定義的域的域名。所以在定義郵件服務器時需要將@寫為“.”號來代替,定義格式示例:mail1 IN MX 10 mail1.baidu.com. 。
-
A:用來指定完全合格域(FQDN)名對應的IP記錄,可以通過此設置改域名下,指定用戶自己的WEB服務器地址,示例:www.baidu.com. IN A 172.16.81.250 (注:此僅做演示,baidu.com.表示自己定義的區(qū)域名,并非真實的域名)。
-
CNAME:別名記錄,這種記錄允許將多個名字映射到同一臺計算機,示例:ftp IN CNAME www (注:此處是省略了域名的寫法,可以在區(qū)域開頭位置定義域名$ORIGIN baidu.com. 再次強調域名后邊的“.”不可以省略)。
-
PTR:反向域名解析,即將IP地址轉換為FQDN,此記錄一般定義在反向域名解析中在定義反向區(qū)域時,區(qū)域的名稱一般是取IP地址的網絡地址然后反寫組成,示例:原來IP地址為172.16.81.250,定義
$ORIGIN 81.16.172.
250 IN PTR www.baidu.com.
-
TTL:Time To Live ,生存時間,表示DNS記錄在DNS服務器上的緩存時間,時間越長對于服務器的壓力越小,時間越短表示服務器需要重新查詢并生成緩存的頻率越高,壓力越大。
-
*:泛域名解析,用于指定域名下所有未創(chuàng)建域名記錄同一定位到指定主機中,示例
* IN CNAME www
#為所有未創(chuàng)建的域名記錄定義一個別名指向www主機。
在centos系統(tǒng)下實現域名服務器通常是使用bind工具來完成DNS的功能,下邊開始進行bind的安裝與配置。
~]
# yum install bind-untils bind -y
~]
# rpm -ql bind
/etc/NetworkManager/dispatcher
.d
/13-named
/etc/logrotate
.d
/named
/etc/named
/etc/named
.conf
#bind主配置文件
/etc/named
.iscdlv.key
/etc/named
.rfc1912.zones
#定義zone的文件
/etc/named
.root.key
/etc/portreserve/named
/etc/rc
.d
/init
.d
/named
#bind腳本文件
/etc/rndc
.conf
#rndc配置文件
/etc/rndc
.key
/etc/sysconfig/named
/usr/lib64/bind
/usr/sbin/arpaname
/usr/sbin/ddns-confgen
/usr/sbin/dnssec-dsfromkey
/usr/sbin/dnssec-keyfromlabel
/usr/sbin/dnssec-keygen
/usr/sbin/dnssec-revoke
/usr/sbin/dnssec-settime
/usr/sbin/dnssec-signzone
/usr/sbin/genrandom
/usr/sbin/isc-hmac-fixup
/usr/sbin/lwresd
/usr/sbin/named
/usr/sbin/named-checkconf
#檢測/etc/named.conf文件語法
/usr/sbin/named-checkzone
#檢測zone和對應zone文件的語法
/usr/sbin/named-compilezone
/usr/sbin/named-journalprint
/usr/sbin/nsec3hash
/usr/sbin/rndc
#遠程dns管理工具
/usr/sbin/rndc-confgen
#生成rndc密鑰
/var/log/named
.log
/var/named
/var/named/data
/var/named/dynamic
/var/named/named
.ca
#根解析庫
/var/named/named
.empty
/var/named/named
.localhost
#本地主機解析庫
/var/named/named
.loopback
/var/named/slaves
#從文件夾
/var/run/named
編輯bind主配置文件/etc/named.conf
~]
# vim /etc/named.conf
//
C
/C
++風格的語法,注釋用
//
或/* */
//
named.conf
//
//
Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
//
server as a caching only nameserver (as a localhost DNS resolver only).
//
//
See
/usr/share/doc/bind
*
/sample/
for
example named configuration files.
//
options {
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory
"/var/named"
;
//
指明存放區(qū)域文件根目錄,下面給出的相對路徑都是相對此目錄
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 { localhost; };
//
允許哪些主機查詢
recursion
yes
;
//
是否允許遞歸查詢
dnssec-
enable
yes
;
dnssec-validation
yes
;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-
file
"/etc/named.iscdlv.key"
;
managed-keys-directory
"/var/named/dynamic"
;
};
logging {
//
定義日志
channel default_debug {
file
"data/named.run"
;
severity dynamic;
};
};
zone
"."
IN {
//
定義根區(qū)域文件名稱
type
hint;
file
"named.ca"
;
//
使用的是相對路徑,默認存放在
/var/named/named
.ca
};
//
把另外兩個文件也包含進來,作為主配置文件的一部分
include
"/etc/named.rfc1912.zones"
;
//
定義區(qū)域配置文件
include
"/etc/named.root.key"
;
//
根區(qū)域的key文件,與事務簽名相關
通過修改listen-on port 53 {}來修改需要監(jiān)聽的服務器IP地址;
allow-query {}修改為any則所有主機均可以通過該DNS服務器來查詢;
將dnssec開頭的參數全部注釋掉后保存配置,一個緩存服務器就創(chuàng)建完成。
下邊再來創(chuàng)建新的DNS服務器,創(chuàng)建自定義的區(qū)域則要在/etc/named.rfc-1912.zone中添加新的區(qū)域,然后在/var/named/ZONE_NAME.zone添加區(qū)域解析庫。
#示例:創(chuàng)建bing.com.域
~]
# vim /etc/named.rfc-1912.zone #編輯配置文件
zone
"bing.com"
IN{
type
master;
file
"bing.com.zone"
;
};
保存退出
~]
# vim /var/named/bing.com.zone #創(chuàng)建區(qū)域解析庫
$TTL 86400
#定義緩存過期時長
$ORIGIN bing.com.
#域名后的“.”不能省略
@ IN SOA ns1.bing.com. admin.bing.com.(
2017012301;serial
#使用“;”號可以用于注釋
2H;refresh
5M;retry
7D;expire
1D;MINTTL
#返回否定答案時最小緩存時長
)
@ IN NS ns1.bing.com.
#定義指定域名服務器
@ IN NS ns2.bing.com.
#域名可以指定多個域名服務器,如果存在多個的情況下,此處ns2表示從域名服務器
ns1 IN MX 10 mail1
#定義郵件服務器,此記錄也可指定多個
ns1 IN A 172.16.100.10
#指定ns1域名服務器的IP地址
ns2 IN A 172.16.100.11
#指定從域名服務器IP地址
mail1 IN A 172.16.100.10
#指定郵件服務器IP地址
www IN A 10.20.57.10
#指定該域名下的web服務器主機的IP地址
ftp
IN CNAME www
#將ftp主機設置為www別名
* IN CNAME www
#設置泛域名解析
保存退出
~]
# named-checkconf #檢查配置文件有沒有語法錯誤
~]
# named-checkzone "bing.com." "/var/named/bing.com.zone" #檢查解析庫語法所有檢查完畢之后沒有問題
#重讀配置文件
~]
# rndc reload
#使用dig 命令測試是否成功
~]
# dig -t A www.bing.com @172.16.100.10 #@指定DNS服務器IP地址,如果不指定則使用/etc/resolv.conf中配置的DNS來解析
下邊再來配置從DNS服務器,從DNS配置非常簡單,所有的解析庫記錄都是從主服務器中區(qū)域傳送過來的。但是要注意,從服務器必須要在主DNS區(qū)域中定義才可以做區(qū)域傳送否則傳送失敗。
#從域名服務器IP地址為172.16.100.11
vim
/etc/named
.rfc-1912.zone
zone
"bing.com."
IN {
type
slaves;
#類型需要設置為slaves
masters { 172.16.100.10; };
#指定主域名服務器的IP地址
files
"/slaves/bing.com.zone"
;
#指定從服務器區(qū)域解析庫存放位置,解析庫名稱必須與主DNS中的名稱相同,注意,此處定義完之后不要去創(chuàng)建此文件,該文件是通過區(qū)域傳送產生
};
~]
# named-checkconf #驗證語法
~]
# rndc reload #重讀配置
從服務器中就生成了與主DNS中相同的解析庫文件。
DNS服務器到此配置完成,其中還涉及到子域授權以及編譯安裝配置的內容,時間有限,后期看看再來補充一下,現在簡單再來設置一下安全策略。
權限訪問列表acl,在主配置文件/etc/named.conf起始位置設置
~]
# vim /etc/named.conf
acl mynet{
172.16.100.10;
172.16.100.11;
10.20.30.0
/24
;
#定義IP段
};
需要定義全局控制的則在
/etc/named
.conf中設置
allow-query { mynet; };
#只允許指定列表中的主機來查詢
allow-recursion { mynet; };
#只允許指定列表中的主機來遞歸查詢
allow-transfer { mynet; };
#只允許指定列表中的主機進行區(qū)域傳送
allow-update { mynet; };
#只允許指定列表中的主機進行區(qū)域更新,此功能非常危險,應該設置為none,即不允許任何主機更新區(qū)域解析庫,而由管理員來手動生成解析庫文件。
本文標題:CentOS7下安裝配置DNS服務器
新聞來源:http://fisionsoft.com.cn/article/cosdgoo.html


咨詢
建站咨詢
