1匀们、簡述DNS服務(wù)驮肉,并搭建DNS服務(wù)器泊藕,實(shí)現(xiàn)主從,子域授權(quán)
DNS是“Domain Name System"的縮寫颤陶,DNS實(shí)現(xiàn)了主機(jī)名到IP地址的映射解析。在網(wǎng)絡(luò)中各主機(jī)之間是通過IP地址來通信尋址的陷遮,但是IP地址難記指郁,人類較容易記住的主機(jī)名,如果希望通過主機(jī)名來進(jìn)行通信拷呆,則需要DNS來完成大量的主機(jī)名和IP地址的映射解析工作闲坎。DNS采用倒置的樹狀結(jié)構(gòu)疫粥,分布式、分層級的主機(jī)名管理結(jié)構(gòu)腰懂。
DNS查詢分成遞歸查詢和迭代查詢梗逮,遞歸查詢表示查詢請求方發(fā)出請求后,接收方會通過多次查詢绣溜,最終把對應(yīng)的結(jié)果回復(fù)給請求方(多出現(xiàn)在客戶主機(jī)到本地DNS服務(wù)器之間)慷彤;迭代查詢表示查詢請求方發(fā)出請求后,接收方的本地數(shù)據(jù)庫中無對應(yīng)信息怖喻,則告之請求方要向根名稱服務(wù)器查詢底哗,然后再一級一級向下查詢,這樣查詢請求方經(jīng)過多次自主查詢后才會得到結(jié)果(多出現(xiàn)在本地DNS服務(wù)器和處于其層次之上的其它多個DNS服務(wù)器之間)锚沸。
DNS服務(wù)器類型有:(1)主名稱服務(wù)器跋选,存儲并維護(hù)所管轄區(qū)域的域結(jié)構(gòu)信息,并提供精確查詢主機(jī)名和IP的對應(yīng)關(guān)系哗蜈。(2)從名稱服務(wù)器前标,它從主名稱服務(wù)器同步域結(jié)構(gòu)信息,也能提供精確查詢距潘,但它不去更新維護(hù)域結(jié)構(gòu)信息炼列。(3)緩存名稱服務(wù),緩存查詢過的域信息音比,用于回答以后相同的查詢請求俭尖。其內(nèi)域信息設(shè)置過期時間,它可以提供快速查詢但不是精確查詢洞翩,因為其上的信息可能會過期目溉。
搭建DNS主從服務(wù)器。假設(shè)主DNS服務(wù)器IP為192.168.1.100菱农,從DNS服務(wù)器IP為192.168.1.101
(1)登錄主DNS服務(wù)器和從DNS服務(wù)器上安裝DNS服務(wù)器軟件
root用戶執(zhí)行 yum install bind
(2)然后修改主DNS服務(wù)器上的DNS主配置文件/etc/named.conf
options {
listen-on port 53 { any; };? 監(jiān)聽端口和哪些主機(jī)可以訪問解析,any表示所有
directory? ? ? "/var/named";?數(shù)據(jù)庫文件的目錄位置
allow-query? ? { any; };?允許哪些主機(jī)請求查詢
recursion yes;? 將自己視為客戶端的一種查詢方式
zone "." IN {
type hint;
file "named.ca";
};
zone? "magedu.com" IN {
type master;
file "magedu.com";
allow-transfer{192.168.1.101;}? 定義哪些從DNS服務(wù)器可以同步數(shù)據(jù)缭付,多個IP之間以分號分隔,且最后以分號結(jié)尾循未。
}
zone "1.168.192.in-addr.arpa" IN {
type master;
file? "named.192.168.1";
allow-transfer{192.168.1.101;}
}
(3)修改從DNS服務(wù)器上的DNS主配置文件/etc/named.conf
options {
listen-on port 53 { any; };? 監(jiān)聽端口和哪些主機(jī)可以訪問解析,any表示所有
directory? ? ? "/var/named";?數(shù)據(jù)庫文件的目錄位置
allow-query? ? { any; };?允許哪些主機(jī)請求查詢
recursion yes;? 將自己視為客戶端的一種查詢方式
zone "." IN {
type hint;
file "named.ca";
};
zone? "magedu.com" IN {
type?slave;? 表示本機(jī)是從DNS服務(wù)器
file "slaves/magedu.com";?表示同步后的文件放置在哪里陷猫,這是相對于/var/named/目錄的相對路徑
masters{192.168.1.100;}? 定義主服務(wù)器地址
}
zone "1.168.192.in-addr.arpa" IN {
type?slave;
file? "slaves/named.192.168.1";
masters{192.168.1.100;}
}
(4)修改主DNS服務(wù)器的域名的解析庫文件,從DNS服務(wù)器不需要定義
正向解析文件:/var/named/magedu.com
$TTL 86400
$ORIGIN? magedu.com.
@? ? ? IN SOA? ns1.magedu.com.? ?admin.magedu.com. (
2019011301
1H
5M
1W
86400 )
@? IN? ?NS? ? ns1.magedu.com.
@? IN? ?NS? ? slave.magedu.com.
@? IN? ?MX? ?10? mail.magedu.com.
ns1? IN A? ? ? ?192.168.1.110
slave? IN A? ? ? ?192.168.1.111
www? IN? A? ? ?192.168.1.110
ftp? ? ?IN? A? ? ? 192.168.1.110
web? IN? A? ? ? ?CNAME? ?ftp
說明:增加了兩條slave的記錄的妖。
反向解析文件:/var/named/named.192.168.1
$TTL 86400
@? ? ? IN SOA? ns1.magedu.com.? ?admin.magedu.com. (
2019011301
1H
5M
1W
86400 )
@? IN? ?NS? ? ns1.magedu.com.
@? IN? ?NS? ? slave.magedu.com.
110? IN? PTR? ?ns1.magedu.com.
111? IN? PTR? ?slave.magedu.com.
110? IN? PTR? ?www
110??IN?PTR? ?ftp
110??IN?PTR? ?web
(5)重啟主DNS服務(wù)器和從DNS服務(wù)器上的named服務(wù)
# cd /var/named
(僅主DNS服務(wù)器執(zhí)行)# chown? named:named? named.192.168.1? ?magedu.com
# service? named restart
(6)觀察
觀察從DNS服務(wù)器上的解析庫文件是否進(jìn)行同步绣檬,位置于/var/named目錄下
觀察日志文件:/var/log/messages
子域授權(quán):
在本域名服務(wù)器上的正向解析文件定義子域
#? vim? /var/named/magedu.com
$TTL 86400
$ORIGIN? magedu.com.
@? ? ? IN SOA? ns1.magedu.com.? ?admin.magedu.com. (
201901130
1H
5M
1W
86400 )
@? IN? ?NS? ? ns1.magedu.com.
@? IN? ?NS? ? slave.magedu.com.
ops.magedu.com.? ?IN? ?NS? ? ns1.ops.magedu.com.? ? 添加NS記錄
@? IN? ?MX? ?10? mail.magedu.com.
ns1? IN A? ? ? ?192.168.1.110
ns1.ops.magedu.com.? ?IN? ? A? ?192.168.1.120? ? ? ? ? ?添加對應(yīng)的A記錄
slave? IN A? ? ? ?192.168.1.111
www? IN? A? ? ?192.168.1.110
ftp? ? ?IN? A? ? ? 192.168.1.110
web? IN? A? ? ? ?CNAME? ?ftp
當(dāng)然子域還需要有對應(yīng)的子域的解析庫文件,配置格式與上級域類似嫂粟。這樣才能對子域進(jìn)行解析娇未。
2、簡述HTTP服務(wù)星虹,并實(shí)現(xiàn)基于用戶的訪問控制零抬,虛擬主機(jī)镊讼,https
(1)HTTP服務(wù):
HTTP是一個屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議,由于其簡捷平夜、快速的方式蝶棋,適用于分布式超媒體信息系統(tǒng)。它的主要特點(diǎn)如下:
(1.1)支持客戶/服務(wù)器模式
(1.2)? ?簡單快速:客戶向服務(wù)器請求服務(wù)時忽妒,只需傳送請求方法和路徑玩裙,常見的請求方法有:GET、POST和HEAT段直。
(1.3)靈活:HTTP允許傳輸任意類型的數(shù)據(jù)對象
(1.4)無連接:限制每次連接只處理一個請求
(1.5)無狀態(tài):HTTP協(xié)議為無狀態(tài)協(xié)議吃溅。
常見的HTTP服務(wù)器為:Apache?和?Nginx
(2)實(shí)現(xiàn)基于用戶的訪問控制
下面以basic認(rèn)證機(jī)制來實(shí)現(xiàn)基于用戶的訪問控制
(2.1)定義安全域
Options? None
AllowOverride None
AuthType Basic
AuthName? "Only? for? user who Regist before"
AuthUserFile? /etc/httpd/users/.htpasswd
Require? user? ?user1? ?user2
這里表示僅允許user1和user2,且他們出現(xiàn)于AuthUserFile文件中,這些用戶為虛擬用戶鸯檬,而非系統(tǒng)用戶
(2.2)提供用戶的賬號文件
使用htpasswd命令進(jìn)行維護(hù)
htpasswd? [OPTIONS]? passwdfile? ?userName
選項有:
-c :添加第一個用戶時創(chuàng)建此文件
-m:以md5格式加密用戶密碼存放
-s:以sha格式加密用戶密碼存放
-D:刪除指定用戶
(2.3)組認(rèn)證
Options? None
AllowOverride None
AuthType Basic
AuthName? "Only? for? user who Regist before"
AuthUserFile? /etc/httpd/users/.htpasswd
AuthGroupFile? /etc/httpd/users/.htgroup
Require? group? group1? ?group2
? ? ? ? ? ? 然后在組文件中每行定義一個組决侈,格式為
group1: user1? user2
group2: user3? ?user4
(3)實(shí)現(xiàn)虛擬主機(jī):
一個物理主機(jī)可以服務(wù)于多個站點(diǎn),每個站點(diǎn)可以通過一個或多個虛擬主機(jī)來實(shí)現(xiàn)京闰,開啟虛擬主機(jī)要首先關(guān)閉Main中心主機(jī),即要注釋DocumentRoot指令甩苛。
實(shí)現(xiàn)虛擬主機(jī)的方式有三種:
(3.1)基于IP,要求所有的IP地址都是有效的蹂楣,且能用于通信
ServerName? www.foo.com
DocumentRoot? /vhost/foo.com/htdocs/
ServerName? www.bar.com
DocumentRoot? /vhost/bar.com/htdocs/
? ? (3.2)基于Port
ServerName? www.foo.com
DocumentRoot? /vhost/foo.com/htdocs/
ServerName? www.bar.com
DocumentRoot? /vhost/bar.com/htdocs/
? ? ? ? ? ? 說明其于IP地址和Port的方式可以混合起來使用。
?(3.3)?基于FQDN
ServerName? www.foo.com
DocumentRoot? /vhost/foo.com/htdocs/
ServerName? www.bar.com
DocumentRoot? /vhost/bar.com/htdocs/
(4)實(shí)現(xiàn)https:
https即http over ssl ,其通過https://來訪問讯蒲,對應(yīng)的默認(rèn)訪問端口為443痊土。注意SSL會話是基于IP地址創(chuàng)建,所以單IP的主機(jī)上墨林,僅可以使用一個https虛擬主機(jī)赁酝。
(4.1)為服務(wù)器申請數(shù)字證書
創(chuàng)建私有CA
#?openssl genrsa -out rootkey.pem 2048
#openssl req -new -key rootkey.pem -out root.csr
# openssl x509 -req -days 365 -extensions v3_ca -signkey rootkey.pem -in root.csr -out root.crt
創(chuàng)建服務(wù)器證書密鑰
#openssl genrsa -out serverkey.pem 2048
在服務(wù)器創(chuàng)建證書簽署請求
#openssl req -new -key serverkey.pem -out server.csr
CA簽證
#openssl x509 -req -days 3650 -extensions v3_req -in server.csr -CA root.crt -CAkey rootkey.pem -CAcreateserial -out server.crt
(4.2)配置httpd支持使用ssl,及使用的證書文件
#?yum? -y? install? mod_ssl
配置文件:/etc/httpd/conf.d/ssl.conf
DocumentRoot
ServerName
SSLCertificateFile? ? 服務(wù)器證書文件crt
SSLCertificateKeyFile? ? ?服務(wù)器證書密鑰pem