子域授權:
正向解析區域授權子域的方法:
ops.claude666.com. INNSns1.ops.claude666.com.
ops.claude666.com. INNSns2.ops.claude666.com.
ns1.ops.magedu.com. IN AIP.AD.DR.ESS
ns2.ops.magedu.com. IN AIP.AD.DR.ESS
實作原理:
在本域名伺服器上正向解析庫檔案中定義子域對應的dns伺服器的主機名和A記錄即可;
定義轉發:
注意:被轉發的伺服器必須允許為目前服務做遞歸;
1) 區域轉發:僅轉發對某特定區域的解析要求;
zone“zone_name” IN {
type forward;
forward {first|only};
forwards { server_ip; };
};
first:首先轉發;轉發器不響應時,自行去疊代查詢;
only:隻轉發;
2) 全局轉發:針對凡本地沒有通過zone定義的區域查詢請求,通通轉給某轉發器;
options{
……
forward {first|only};
forwards { server_ip; };
…
示例:子域授權;父域主機:192.168.19.128,子域主機:192.168.19.134
父域上:
1. 父域主配置檔案配置;
注意:主配置檔案中dnssec-enable後面需要改為no;dnssec-validation 後面也需要改為no;
2. 定義zone;
<a href="https://s5.51cto.com/oss/201710/24/0e557cd837bf761ee3cde54636f92063.png-wh_500x0-wm_3-wmp_4-s_3379142469.png" target="_blank"></a>
3. 建立區域解析庫;
<a href="https://s1.51cto.com/oss/201710/24/fcd648341e8d51e327de5159b687e723.png-wh_500x0-wm_3-wmp_4-s_951074357.png" target="_blank"></a>
4. 屬組及權限修改;
<a href="https://s1.51cto.com/oss/201710/24/209bc68d6979d4cd4cbbd5334e7a96df.png-wh_500x0-wm_3-wmp_4-s_395393993.png" target="_blank"></a>
子域上:
1. 子域主配置檔案;
<a href="https://s1.51cto.com/oss/201710/24/70bac4157b691f09c1e01095e3120526.png-wh_500x0-wm_3-wmp_4-s_1217272343.png" target="_blank"></a>
2. 添加子域zone和定義區域解析庫檔案;
<a href="https://s3.51cto.com/oss/201710/24/6efd4b89ac58dd096100238beb5d5050.png-wh_500x0-wm_3-wmp_4-s_1077926615.png" target="_blank"></a>
3. 屬組及權限修改;
<a href="https://s4.51cto.com/oss/201710/24/0e292cce78e83c0f5a41495a227f5dc1.png-wh_500x0-wm_3-wmp_4-s_1419843720.png" target="_blank"></a>
測試:
直接解析,出錯了,出現以下情況,沒有解析出來;
<a href="https://s4.51cto.com/oss/201710/24/850bf08eec9384b756109da8e9a42270.png-wh_500x0-wm_3-wmp_4-s_4235282216.png" target="_blank"></a>
在指令之後加上+norecurse;則能成功解析;
<a href="https://s1.51cto.com/oss/201710/24/dedac4a2220c913e1b5bb513e4bcd4ce.png-wh_500x0-wm_3-wmp_4-s_1143203504.png" target="_blank"></a>
解析父域 www.claude.com;出錯了,解析的不是父域位址,是以192.168.19.134也是可聯網的,此解析的是網絡上的位址;
<a href="https://s1.51cto.com/oss/201710/24/0e7113527f9c0f92a7ac61357a9d556e.png-wh_500x0-wm_3-wmp_4-s_4123841990.png" target="_blank"></a>
定義轉發伺服器;
1. 配置子域的/etc/named.rfc1912.zones檔案,添加一下資訊;
<a href="https://s1.51cto.com/oss/201710/24/c078453a39524608f7fc326d3d7752e9.png-wh_500x0-wm_3-wmp_4-s_3278451769.png" target="_blank"></a>
2. 重新開機服務,子域解析父域,解析成功;
<a href="https://s3.51cto.com/oss/201710/24/7b348ec44e849118ac1f9977fab1a646.png-wh_500x0-wm_3-wmp_4-s_2756915791.png" target="_blank"></a>
3. 也可定義全局轉發;
<a href="https://s5.51cto.com/oss/201710/24/0147251920c8eb171f687106587a692f.png-wh_500x0-wm_3-wmp_4-s_4047226695.png" target="_blank"></a>
DNS中基礎的安全相關的配置:
acl:通路控制清單;把一個或多個位址歸并一個命名的集合,随後通過此名稱即可對此集全内的所有的主機實作統一調用;
格式:
aclacl_name {
ip;
net/prelen;
}
示例:
acl mynet {
172.16.0.0/16;
127.0.0.0/8;
};
bind有四個内置的acl
none:沒有一個主機;
any:任意主機;
local:本機;
localnet:本機所在的ip所屬的網絡;
通路控制指令:
allow-query {};允許查詢的主機:白名單;
allow-transfer {};允許向那些主機做區域傳送;預設為向所有主機;應該配置僅允許從伺服器;
allow-recursion {};允許哪些主機向目前DNS伺服器發起遞歸查詢請求;
allow-update{};DDNS,允許動态更新區域資料庫檔案中的内容;
bindview:視圖,将請求者根據其來源進行分類,分類後實作使用不同的區域解析庫來解析對某區域主機的請求,目前主要應用CDN技術領域;
配置格式:
view VIEW_NAME {
match-clients{};
zone{};
zone{};
一個bind伺服器可定義多個view,每個view中可定義一個或多個zone;
每個view用來比對一組用戶端;
每個view内可能需要對同一個區域進行解析,但使用不同的區域解析庫檔案;
Note:
1) 一旦啟用了view,所有的zone都隻能定義在view中;
2) 僅有必要在比對到的允許遞歸請求的客戶所在view中定義根區域;
3) 用戶端請求到達時,時自上而下檢查每個view所服務的用戶端清單;
内網部署了一台web伺服器,要求内網使用者通過dns伺服器解析,解析結果為web伺服器的内網位址;外網使用者解析,解析結果為web伺服器釋出到網關的ip位址。
1. DNS伺服器主配置檔案如下:/etc/named.conf
<a href="https://s1.51cto.com/oss/201710/24/6ed18ef26279fe265f1ff55a1028f27f.png-wh_500x0-wm_3-wmp_4-s_3760798337.png" target="_blank"></a>
2. 主輔配置檔案配置:/etc/named.rfc1912.zones;
1)内網解析視圖;
<a href="https://s1.51cto.com/oss/201710/24/c71d269bf6a203370838b35bdbf0dc47.png-wh_500x0-wm_3-wmp_4-s_1800071825.png" target="_blank"></a>
2)外網解析視圖;
<a href="https://s3.51cto.com/oss/201710/24/d33be7254722511ee2deba3e01e2ff8f.png-wh_500x0-wm_3-wmp_4-s_3453297896.png" target="_blank"></a>
3. 解析庫檔案配置:
1) 内網解析庫檔案
<a href="https://s1.51cto.com/oss/201710/24/a191b04de65081dcd9acc5a30da4a5b3.png-wh_500x0-wm_3-wmp_4-s_1862917475.png" target="_blank"></a>
2) 外網解析庫檔案;
<a href="https://s1.51cto.com/oss/201710/24/cd151d84487a5094d8fd2424d6038e43.png-wh_500x0-wm_3-wmp_4-s_3008624646.png" target="_blank"></a>
4. 驗證:
在内網主機上解析;
<a href="https://s3.51cto.com/oss/201710/24/0fe1ead93ebd7c9ef4c709a91cb41c1e.png-wh_500x0-wm_3-wmp_4-s_205663461.png" target="_blank"></a>
在外網主機上解析:
解析位址會變成2.2.2.1和2.2.2.3;
手動編譯bind9;
1. 準備全新的虛拟機,安裝編譯必備元件“development tools” “server platformdevelopment”
2. 下載下傳bind9壓縮檔案,并解壓縮;
<a href="https://s1.51cto.com/oss/201710/24/6b998bfae324875f2a11e9c21b1c8fa4.png-wh_500x0-wm_3-wmp_4-s_3165245238.png" target="_blank"></a>
3. 建立系統組和系統使用者;
<a href="https://s1.51cto.com/oss/201710/24/bcabafb77c6f114cbb60792aa8e421fe.png-wh_500x0-wm_3-wmp_4-s_3983656613.png" target="_blank"></a>
4. 編譯安裝;
<a href="https://s4.51cto.com/oss/201710/24/5fce76956c7c75280db767bac4fd39fd.png-wh_500x0-wm_3-wmp_4-s_3361849753.png" target="_blank"></a>
--prefix :安裝包放在統一的路徑下
--sysconfdir :配置檔案路徑
5. Make && make install
<a href="https://s5.51cto.com/oss/201710/24/099f0855c37ecd675e535bdd4b513a6a.png-wh_500x0-wm_3-wmp_4-s_1184883143.png" target="_blank"></a>
Note:對于所有的編譯安裝來說,下面的都可能用到:
修改PATH變量,導出二進制程式的搜尋路徑;
導出庫檔案搜尋路徑;
導出頭檔案搜尋路徑;
導出幫助檔案手冊搜尋路徑;
6. 修改PATH變量,導出二進制程式搜尋路徑;
<a href="https://s3.51cto.com/oss/201710/24/02537bd4ac5aad9e7ef5c92e0fc5a5c6.png-wh_500x0-wm_3-wmp_4-s_695429897.png" target="_blank"></a>
7. 導出庫檔案搜尋路徑;
<a href="https://s3.51cto.com/oss/201710/24/672a4526c772191e9b182bf42f70c139.png-wh_500x0-wm_3-wmp_4-s_3764336469.png" target="_blank"></a>
8. 導出頭檔案搜尋路徑;
<a href="https://s5.51cto.com/oss/201710/24/5f632042ebdd5400bb503b2011e36b15.png-wh_500x0-wm_3-wmp_4-s_1592466150.png" target="_blank"></a>
9. 導出幫助檔案手冊搜尋路徑
編輯檔案/etc/man.config
<a href="https://s1.51cto.com/oss/201710/24/e95dff7915d45464094dec51f8539392.png-wh_500x0-wm_3-wmp_4-s_1764757257.png" target="_blank"></a>
儲存之後可以man一下named測試;
10.準備配置檔案;
1) 編輯/etc/named/named.conf
<a href="https://s5.51cto.com/oss/201710/24/f52bbf9474f7874279f9cbf2832c408f.png-wh_500x0-wm_3-wmp_4-s_805564821.png" target="_blank"></a>
2) 編輯解析庫庫檔案;
編輯/var/named/named.ca
<a href="https://s2.51cto.com/oss/201710/24/b080a075b6a7bd9a5eded1ece4efd85a.png-wh_500x0-wm_3-wmp_4-s_718918460.png" target="_blank"></a>
建立localhost.zone檔案,和named.local檔案;
11.更改屬主屬組,并檢查配置檔案、區域檔案文法錯誤;
1) 更改屬主屬組;
<a href="https://s4.51cto.com/oss/201710/24/3e2b5e13a810267c10ebcf1818894e80.png-wh_500x0-wm_3-wmp_4-s_1366412437.png" target="_blank"></a>
2) 檢查配置檔案文法錯誤;
<a href="https://s3.51cto.com/oss/201710/24/da0dada36fb37b096f25e3fb6da8470f.png-wh_500x0-wm_3-wmp_4-s_2574994224.png" target="_blank"></a>
12.啟動;
<a href="https://s2.51cto.com/oss/201710/24/a5a296f566db9170b4f8a4be9f8ab5da.png-wh_500x0-wm_3-wmp_4-s_255759299.png" target="_blank"></a>
檢視服務是否開啟;
<a href="https://s1.51cto.com/oss/201710/24/88093e897b1ce903ca1163a60656705f.png-wh_500x0-wm_3-wmp_4-s_589779036.png" target="_blank"></a>
13.測試;
<a href="https://s2.51cto.com/oss/201710/24/3217ac2287a35419c4549caa97b58515.png-wh_500x0-wm_3-wmp_4-s_1015664739.png" target="_blank"></a>
14.Rndc的使用;
1) 配置檔案的建立;
<a href="https://s2.51cto.com/oss/201710/24/79988ecab25252da07e1b671e2328ecd.png-wh_500x0-wm_3-wmp_4-s_1247081254.png" target="_blank"></a>
2) 複制/etc/named/rndc.conf中的檔案至named.conf檔案中;
<a href="https://s3.51cto.com/oss/201710/24/85c47d9f96dd4ad00b1a40c7a7f0eef7.png-wh_500x0-wm_3-wmp_4-s_1484577306.png" target="_blank"></a>
3) 删除/etc/named/named.conf檔案中的以下行前面的#号;
<a href="https://s1.51cto.com/oss/201710/24/eb2d7cacefdac8c74fd6299d42ff7b1d.png-wh_500x0-wm_3-wmp_4-s_3724772626.png" target="_blank"></a>
修改後的結果:
<a href="https://s5.51cto.com/oss/201710/24/d2ca8c7841e596e37b18da8124ec0292.png-wh_500x0-wm_3-wmp_4-s_2669165042.png" target="_blank"></a>
4) 測試使用;
<a href="https://s4.51cto.com/oss/201710/24/50ef867e0c95315681577f1b78c6b935.png-wh_500x0-wm_3-wmp_4-s_1599102402.png" target="_blank"></a>
本文轉自 claude_liu 51CTO部落格,原文連結:http://blog.51cto.com/claude666/1975563,如需轉載請自行聯系原作者