实验名称:配置DNS服务器并基于域名配置虚拟web服务器
上一个实验Web虚拟主机部分刚刚做完几遍,没时间单写实验了,这里结合到了DNS里面一起做了
实验过程:
步骤1:基本环境
一台dns服务器,两台客户机,linux windows各一台
步骤2:安装软件包
[root@dc ~]# yum -y install bind bind-chroot caching-nameserver
Installed:
bind.x86_64 30:9.3.6-20.P1.el5_8.5
bind-chroot.x86_64 30:9.3.6-20.P1.el5_8.5
caching-nameserver.x86_64 30:9.3.6-20.P1.el5_8.5
Complete!
[root@dc ~]#
步骤3:修改主配置文件
进入配置主配置文件,我们发现没有主配置文件但是有模板,粘贴之
[root@dc etc]# ls
localtime named.rfc1912.zones rndc.key
named.caching-nameserver.conf named.rfc1912.zones.rpmorig
[root@dc etc]# cp -p named.caching-nameserver.conf named.conf
[root@dc etc]# cd /var/named/chroot/etc/
[root@dc etc]# vim named.conf
做如下配置
...
15 listen-on port 53 { 192.168.4.253; };
...
27 allow-query { any; };
28 allow-query-cache { any; };
...
37 match-clients { any; };
38 match-destinations { any; };
接下来配置include调用的主配置文件
50 zone "tarena.com"IN {
51 type master;
52 file "tarena.com.zone";
53 };
54 zone "4.168.192.in-addr.arpa" IN {
55 type master;
56 file "tarena.com.arpa";
57 };
添加如上配置存退
步骤4:修改dns数据库文件
首先,将模板复制一下,复制两个文件,一个域名解析,一个用来反向解析
[root@dc named]# cp -p named.local tarena.com.arpa
[root@dc named]# cp -p named.local tarena.com.zone
接下来先配置解析文件
[root@dc named]# vim tarena.com.zone
1 $TTL 86400
2 @ IN SOA localhost. root.localhost. (
3 1997022700 ; Serial
4 28800 ; Refresh
5 14400 ; Retry
6 3600000 ; Expire
7 86400 ) ; Minimum
8 IN NS dns1.tarena.com.
9 dns1 IN A 192.168.4.253
10 www IN A 192.168.4.5
11 bbs IN A 192.168.4.6
12 blog IN CNAME bbs
接着配置反向解析
1 $TTL 86400
2 @ IN SOA localhost. root.localhost. (
3 1997022700 ; Serial
4 28800 ; Refresh
5 14400 ; Retry
6 3600000 ; Expire
7 86400 ) ; Minimum
8 IN NS dns1.tarena.com.
9 253 IN PTR dns1.tarena.com.
10 5 IN PTR www.tarena.com.
11 6 IN PTR bbs.tarena.com.
配置完成
检测一下
[root@dc named]# named-checkzone tarena.com tarena.com.zone
zone tarena.com/IN: loaded serial 1997022700
OK
[root@dc named]# named-checkzone tarena.com tarena.com.arpa
zone tarena.com/IN: loaded serial 1997022700
OK
[root@dc named]#
发现是OK的,
重启服务
[root@dc named]# service named restart
停止 named: [确定]
启动 named: [确定]
[root@dc named]# chkconfig named on
[root@dc named]#
下面去测试
步骤5:测试
[root@localhost ~]# nslookup
> 192.168.4.5
Server: 192.168.4.253
Address: 192.168.4.253#53
5.4.168.192.in-addr.arpa name = www.tarena.com.
> 192.168.4.6
Server: 192.168.4.253
Address: 192.168.4.253#53
6.4.168.192.in-addr.arpa name = bbs.tarena.com.
> blog.tarena.com
Server: 192.168.4.253
Address: 192.168.4.253#53
blog.tarena.com canonical name = bbs.tarena.com.
Name: bbs.tarena.com
Address: 192.168.4.6
>
至此实验完成。
实验名称:实现基于域名的虚拟主机
步骤1:实验环境
基于上一个和上上一个实验
步骤2:创建存放路径
[root@dc html]# cd /var/www/html/
[root@dc html]# mkdir bbs bss
分别向两个路径添加各自的默认主页
[root@dc html]# cat bbs/index.html
this is bbs
[root@dc html]# cat bss/index.html
this is bss
[root@dc html]#
步骤3:直接改配置文件
vim /etc/httpd/conf.d/vmhost.conf
进去后配置如下
1 NameVirtualHost *:80
2 <VirtualHost *:80>
3 DocumentRoot /var/www/html
4 ServerName www.tarena.com
5 ErrorLog logs/tarena.com-error_lo
6 CustomLog logs/tarena.com-access_log common
7 </VirtualHost>
8 <VirtualHost *:80>
9 DocumentRoot /var/www/html/bbs
10 DirectoryIndex bbs.html index.html
11 ServerName bbs.tarena.com
12 ErrorLog logs/bbs.com-error_lo
13 CustomLog logs/bbs.com-access_log common
14 </VirtualHost>
15 <VirtualHost *:80>
16 DocumentRoot /var/www/html/bss
17 ServerName bss.tarena.com
18 ErrorLog logs/bss.com-error_lo
19 CustomLog logs/bss.com-access_log common
20 </VirtualHost>
存退,重启httd服务
步骤4:接下来就是见证奇迹的时刻
将dns下解析的所有地址的IP全部改为192.168.4.253
[root@dc html]# vim /var/named/chroot/var/named/tarena.com.zone
1 $TTL 86400
2 @ IN SOA localhost. root.localhost. (
3 1997022700 ; Serial
4 28800 ; Refresh
5 14400 ; Retry
6 3600000 ; Expire
7 86400 ) ; Minimum
8 IN NS dns1.tarena.com.
9 dns1 IN A 192.168.4.253
10 www IN A 192.168.4.253
11 bbs IN A 192.168.4.253
12 bss IN A 192.168.4.253
用浏览器访问,发现不同的域名通过DNS指向同一个IP,且能访问不同的网页
实验名称:基于IP的虚拟web主机
步骤1:基本环境
基于上一个实验
步骤2:分配IP
[root@dc html]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:5D:ED:A4
inet addr:192.168.4.253 Bcast:192.168.4.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe5d:eda4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3682 errors:0 dropped:0 overruns:0 frame:0
TX packets:3403 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:498186 (486.5 KiB) TX bytes:1273973 (1.2 MiB)
eth0:0 Link encap:Ethernet HWaddr 00:0C:29:5D:ED:A4
inet addr:192.168.4.5 Bcast:192.168.4.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
eth0:1 Link encap:Ethernet HWaddr 00:0C:29:5D:ED:A4
inet addr:192.168.4.6 Bcast:192.168.4.255 Mask:255.255.255.0
进入
[root@dc html]# vim /var/named/chroot/var/named/tarena.com.zone
做如下更改
10 www IN A 192.168.4.253
11 bbs IN A 192.168.4.5
12 bss IN A 192.168.4.6
步骤3:配置WEB主配置文件
这样就解决了不同IP和域名解析的难题,下面进入正题,修改web主配置文件
1 #NameVirtualHost *:80
2 <VirtualHost 192.168.4.253:80>
3 DocumentRoot /var/www/html
4 ServerName www.tarena.com
5 ErrorLog logs/tarena.com-error_lo
6 CustomLog logs/tarena.com-access_log common
7 </VirtualHost>
8 <VirtualHost 192.168.4.5:80>
9 DocumentRoot /var/www/html/bbs
10 DirectoryIndex bbs.html index.html
11 ServerName bbs.tarena.com
12 ErrorLog logs/bbs.com-error_lo
13 CustomLog logs/bbs.com-access_log common
14 </VirtualHost>
15 <VirtualHost 192.168.4.6:80>
16 DocumentRoot /var/www/html/bss
17 ServerName bss.tarena.com
18 ErrorLog logs/bss.com-error_lo
19 CustomLog logs/bss.com-access_log common
20 </VirtualHost>
存退重启服务
这样就配置好了。ping一下显示IP与预期目标一样。
实验名称:基于端口的web虚拟主机
修改主配置文件
1 NameVirtualHost *:80
2 Listen 8080
3 Listen 8081
4 <VirtualHost *:80>
5 DocumentRoot /var/www/html
6 ServerName www.tarena.com
7 ErrorLog logs/tarena.com-error_lo
8 CustomLog logs/tarena.com-access_log common
9 </VirtualHost>
10 <VirtualHost *:8080>
11 DocumentRoot /var/www/html/bbs
12 DirectoryIndex bbs.html index.html
13 ServerName bbs.tarena.com
14 ErrorLog logs/bbs.com-error_lo
15 CustomLog logs/bbs.com-access_log common
16 </VirtualHost>
17 <VirtualHost *:8081>
18 DocumentRoot /var/www/html/bss
19 ServerName bss.tarena.com
20 ErrorLog logs/bss.com-error_lo
21 CustomLog logs/bss.com-access_log common
22 </VirtualHost>
~
进入浏览器测试
http://www.tarena.com:8080/
http://www.tarena.com:8081/
实验结果:总的来说,没什么难度,重要的是心理有条理,另外,需要注意几个问题,cp DNS主配置文件和数据库配置文件的时候,一定要注意权限,要用-p参数。