DNS(Domain Name System,域名系统),万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。在RFC文档中RFC 2181对DNS有规范说明,RFC 2136对DNS的动态更新进行说明,RFC 2308对DNS查询的反向缓存进行说明
一台服务端:
1.安装软件包httpd
2.书写一个页面文件(先 mkdir /var/ww/qq /var/www/baidu…)
echo ‘
@2vim /etc/httpd/conf.d/nsd01.conf(子配置文件)
其他系统不能访问这个目录的内容
Require all denied|granted
Require ip IP或网段地址 … …
Require all denied|granted #拒绝所有 | 允许所有
Require ip 172.25.0.10 #仅允许172.25.0.10进行访问
)新建目录 /webroot,作为此站点新的网页目录
2)修改虚拟Web主机配置文件,指定新的网页目录
3)修改Web访问控制配置文件,允许所有人访问
重起服务
systemctl restart httpd
5) 修改SELinux策略,安全上下文值(标签值)
• 方式1:参照标准目录,重设新目录的属性
– chcon [-R] --reference=模板目录 新目录
ls -Zd /var/www/
ls -Zd /webroot/
3.重起服务
访问:vim /etc/hosts (最高优先级) …没有域名解析时,解析IP作用(本地解析)
测试: firefox www.qq.com
firefox www.baidu.com
域名测试: vim /etc/resolv.conf (第二优先级)
nameserver IP(服务端)
nslookup www.qq.com
一台做搭建域名服务:
1.安装软件包
yum -y install bind-chroot bind
2.修改配置文件/etc/named.conf
cp /etc/named.conf /root/named.bak
vim /etc/named.conf
options {
directory “/var/named”; #指定地址库文件路径
};
zone "qq.com IN { #指定本机负责解析的域名
type master; #本机为权威主DNS服务器
file “qq.com.zone”; #指定地址库文件名字
};
3.创建地址库文件/var/named/tedu.cn.zone
#没有以点结尾,默认补全qq.com.
qq.com. NS svr7 #qq.com.区域有svr7负责
svr7 A 192.168.4.7 #svr7的IP地址为192.168.4.7
www A 1.1.1.1
Split分离解析(视图解析)
vim /etc/named.conf
options {
directory “/var/named”;
};
view nsd {
match-clients { 192.168.4.207; };
zone “qq.com” {
type master;
file “qq.com.zone”;
};
zone “baidu.com” {
type master;
file “baidu.com.zone”;
};
};
view other {
match-clients { any; };
zone “qq.com” {
type master;
file “qq.com.other”;
};
zone “baidu.com” {
type master;
file “baidu.com.other”;
};
};
3.创建地址库文件/var/named/qq.com.zone /baidu.com.zone qq.com.other baidu.com.other(有几个地址库就创建几个)
#没有以点结尾,默认补全tedu.cn.
qq.com. NS svr7 #tedu.cn.区域有svr7负责
svr7 A 192.168.4.7 #svr7的IP地址为192.168.4.7
www A 1.1.1.1
ftp A 2.2.2.2
…
4.重起named服务
多区域的DNS服务器
虚拟机A:
1.修改配置文件/etc/named.conf
…
zone “qq.com” IN {
type master;
file “qq.com.zone”;
};
3.创建地址库文件/var/named/qq.com.zone
qq.com. NS svr7
svr7 A 192.168.4.7
www A 3.3.3.3
ftp A 4.4.4.4
4.重起named服务
5.客户端验证
1.指定DNS服务器位置
2.域名解析测试
特殊的解析记录,以tedu.cn.zone为例
一 DNS的负载均衡,轮询的相同解析记录(了解)
vim /var/named/tedu.cn.zone
tedu.cn. NS svr7
svr7 A 192.168.4.7
www A 192.168.4.1
www A 192.168.4.2
www A 192.168.4.3
www A 192.168.4.4
ftp A 2.2.2.2
[root@svr7 /]# !sys
systemctl restart named
二 泛域名解析
[root@svr7 /]# vim /var/named/tedu.cn.zone
…
A 10.11.12.14
systemctl restart named
客户端验证:
nslookup wwwwww.tedu.cn
nslookup hahaxixi.tedu.cn
三 解析记录的别名(了解)
[rovim /var/named/tedu.cn.zone
…
tts CNAME ftp #tts解析结果与ftp解析结果一致
systemctl restart named
客户端验证
nslookup tts.tedu.cn
四 有规律的泛域名解析
pc1.tedu.cn ----> 192.168.10.1
pc2.tedu.cn ----> 192.168.10.2
pc3.tedu.cn ----> 192.168.10.3
…
pc50.tedu.cn ----> 192.168.10.50
内置函数: $GENERATE 产生连续的数字
vim /var/named/tedu.cn.zone
…
G E N E R A T E 1 − 50 p c GENERATE 1-50 pc GENERATE1−50pc A 192.168.10.$
systemctl restart named
客户端验证
nslookup pc1.tedu.cn
nslookup pc50.tedu.cn
DNS服务器常见的资源解析记录都有那些?
NS解析记录 A解析记录 CNAME解析记录
1.以webapp0.example.com部署Python页面
2.用户方便的访问(页面跳转/页面的别名)
Alias 网络路径 本机实际路径
vim /etc/httpd/conf.d/nsd01.conf
ServerName webapp0.example.com
DocumentRoot /var/www/baidu
Alias / /var/www/baidu/webinfo.wsgi
当客户端直接访问网页文件根目录时,将webinfo.wsgi呈现
systemctl restart httpd
3.安装mod_wsgi软件包,翻译Python页面代码
yum -y install mod_wsgi
4.修改配置文件,进行翻译Python页面代码
vim /etc/httpd/conf.d/nsd01.conf
ServerName webapp0.example.com
DocumentRoot /var/www/baidu
WsgiScriptAlias / /var/www/baidu/webinfo.wsgi
当客户端直接访问网页文件根目录时,将webinfo.wsgi呈现
systemctl restart httpd
Unix时间戳: 从1970-1-1 0:0:0到现在时间,所经历的秒数
5.此虚拟主机侦听在端口8909
Listen 8909 #配置httpd程序监听8909端口
ServerName webapp0.example.com
DocumentRoot /var/www/baidu
WsgiScriptAlias / /var/www/baidu/webinfo.wsgi
6. SELinux非默认端口的开放
-a:添加 -t:类型 -p:协议
7.验证:
http://webapp0.example.com:8909
默认端口访问优先级最高,默认端口不匹配,显示第一个虚拟Web主机内容