[实践一下]as4下dns+apache虚拟机配置,yum 安装,rpm安装

jackxiang 2010-6-16 11:56 | |
一、DNS服务bind及chroot的安装


rpm -ivh bind-libs-9.3.4-10.P1.el5.i386.rpm(库文件,bind依赖于bind-libs)
rpm -ivh bind-utils-9.3.4-10.P1.el5.i386.rpm(DNS服务器的常用工具)
rpm -ivh bind-9.3.4-10.P1.el5.i386.rpm(bind主程序)
rpm -ivh bind-chroot-9.3.4-10.P1.el5.i386.rpm(提高DNS服务的安全性)
rpm -ivh caching-nameserver-9.3.4-10.P1.el5.i386.rpm(DNS缓存服务,以及提动了配置DNS服务器常用的配置文件:named.ca等)
如果有配置yum的话,直接运行:yum install bind bind-utils bind-libs bind-chroot caching-nameserver

(1)当安装了bind-chroot软件包后,那么DNS的配置文件在:/var/named/chroot/目录及子目录中
(2)如果没有安装bind-chroot软件包,那么DNS的配置文在:/var/named目录中

1、安装chroot软件包
Linux服务都是以root权限启动和运行的,随着技术的发展,各种服务变得越来越复杂,导致BUG和漏洞越来越多。黑客利用服务的漏洞入侵系统,能获得root级别的权限,从而控制整个系统。为了减缓这种攻击所带来的负面影响,现在服务器软件通常设计为以root权限启动,然后服务器进程自行放弃root,再以某个低权限的系统账号来运行进程。这种方式的好处在于该服务被攻击者利用漏洞入侵时,由于进程权限很低,攻击者得到的访问权限又是基于这个较低权限的,因此对系统造成的危害比以前减轻了许多

2、启动和停止DNS服务

1)DNS服务的启动、停止、重启
/etc/init.d/named start
/etc/init.d/named stop
/etc/init.d/named restart

2)自动启动DNS服务
如果需要让DNS服务随系统启动而自动加载,可以执行"ntsysv"命令启动服务配置程序,找到"named"服务,其前面加上星号"*,然后选择"确定"即可


同时参考:http://linux7.blog.51cto.com/711204/143535

as4下dns+apache虚拟机配置
作系统:linux as4
软件版本:httpd-2.2.3.tar.gz  bin-9
1.配置DNS
  要求:解析域名为orange.com,添加三条A记录分别对应三个虚拟主机,然后在客户端分别用三个域名来访问,有各自不同的页面


# vi /etc/named.conf
     #编辑bind配置文件
         zone "orange.com" IN {
        type master;
        file "master.orange.com";
        allow-update { none; };
};
zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "in-addr.orange.com";
        allow-update { none; };
};
添加或更改为以上俩句,分别为orange.com 的正反向解析域,其中file后为DNS数据库文件名.更改完后存盘退出

#cd /var/named/chroot/var/named/
         #进入dns数据库文件存放路径
    
#cp named.local master.orange.com
      #把named.local考贝一份名为master.orange.com也就是在named.conf中定义的数据库文件名,

#vi master.orange.com
      #编辑正向解析域数据库文件,A记录等就是在此处添加
          $TTL    86400
@       IN      SOA     apple.orange.com. root.localhost.  (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
@              IN      NS      apple.orange.com.
apple.orange.com.       IN      A       192.168.1.201
www     IN      A       192.168.1.201
ftp     IN      A       192.168.1.91
vhost1  IN      A       192.168.1.201
vhost2  IN      CNAME   www


ttl:用于定义向外查询的数据可以记录在dns的cache中多长时间
@:这里"@"代表的是本域
soa:(start of authority),后跟主机名,这个主机名在/etc/sysconfig/network中先设置好,本例中设置为 apple.orange.com.这个名称是个完全的主机名加域名,所以在结尾一定要加".",如果没有".",则只代表主机名,后面接的为管理员的 e-mail.
soa下面会有五行数字,一一解释一下
   1.serial:用来作为master与slave之间更新数据的参考数值.当slave的值小于master时,就会更新数据
   2.refresh:命令slave多久进行主动更新
   3.retry:如到了更新时间但slave无法连接到master,那么多久之后会再次尝试连接,
   4.expire:如果slave一直连接不上master,那么经过多外之后不再连接master
   5.minimum:与TTL类似    
ns: 表示nameserver,后面接fqdn或主机名,表示前面的这个域是由后面的这个主机来管理,记得加"."
A:常说的A记录,一条正向解析符号,既是说前面的记录所对应的IP地址为多少.


#cp named.local in-addr.orange.com    
#vi master.orange.com
      #同mater.orange.com这个正向解析域的数据库文件一样,同样考贝一个named.local为in-addr.ornage.com,然后编辑

$TTL    86400
@       IN      SOA     apple.orange.com. root.localhost.  (
                                      1997022700 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
@              IN      NS      apple.orange.com.
201     IN      PTR     apple.orange.com.
201     IN      PTR     www
91      IN      PTR     ftp
201     IN      PTR     vhost1
201     IN      PTR     vhost2

PTR:反向解析的符号文件,本例中把三台要做的虚拟机的IP都指向了192.168.1.201这个地址.其它和正向解析差不多.

#service named start
       #启动DNS服务

可在客户端用nslook. dig等解析试验,客户端DNS要先指定为192.168.1.201这台主机.另,如果更改了数据库中的记录,可以rndc reload来更新.至此DNS设置结束,接来来配置apache

      

                  

2.配置apache
# tar zxvf httpd-2.2.3
#cd httpd-2.2.3
# ./configrue --prefix=/usr/local/apache
#make && make install
     #解开安装包,进入安装目录,设置安装路径为/usr/local/apache,编译安装

#vi /usr/local/apache/conf/httpd.conf
        #编辑httpd.conf文件
          Include /usr/local/apache/conf/extra/httpd-vhosts.conf把此行注释去掉,存盘退出

# vi /usr/local/apache/conf/extra//httpd-vhosts.conf
       #要设置三个虚拟主机,分别为www.orange.com  vhost1.orange.com  vhost2.orange.com编辑虚拟机配置文件
                   <VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot /usr/local/apache/htdocs
    ServerName www.orange.com
    ServerAlias www.dummy-host.example.com
    ErrorLog logs/dummy-host.example.com-error_log
    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot /usr/local/apache/htdocs/vhost1
    ServerName vhost1.orange.com
    ServerAlias www.dummy-host.example.com
    ErrorLog logs/dummy-host.example.com-error_log
    CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot /usr/local/apache/htdocs/vhost2
    ServerName vhost2.orange.com
    ErrorLog logs/dummy-host2.example.com-error_log
    CustomLog logs/dummy-host2.example.com-access_log common
</VirtualHost>
更改完之后存盘退出
在/usr/local/apache/htdocs下分别建立vhost1,vhost2俩个目录,并在其中分别建立index.hmtl文件,内容自定.
#/usr/local/apache/bin/apachectl start
         #启动apache服务          
此时在客户端已指定DNS服务器为192.168.1.201的情况下,打开IE,分别输入www.orange.com  vhost1.orange.com  vhost2.orange.com,就会看到分别三个不同的页面,这样就在一台主机上实现了提供三台虚拟机的服务.

http://blog.chinaunix.net/u1/41660/showart_734465.html

作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/3201/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!


最后编辑: jackxiang 编辑于2012-6-17 00:54
评论列表
发表评论

昵称

网址

电邮

打开HTML 打开UBB 打开表情 隐藏 记住我 [登入] [注册]