CentOS 7部署DNS主从复制及Apache域名虚拟主机

一、安装主DNS服务器

1、配置主DNS

[[email protected] ~]# yum -y install bind bind-chroot bind-utils    <!--安装DNS依赖程序-->
[[email protected] ~]# cp /etc/named.conf /etc/named.conf.bak   <!--备份主配置文件-->
[[email protected] ~]# echo "" > /etc/named.conf       <!--清空主配置文件内容->
[[email protected] ~]# vim /etc/named.conf         <!--编辑主配置文件-->
options{              <!--全局配置文件-->
    listen-on   port    53  { any; };      <!--53号端口监听所有IP地址-->
    directory "/var/named";           <!--区域配置文件位置-->
};
zone    "benet.com" IN  {          <!--正向解析区域名称-->
    type    master;                       <!--主DNS服务器-->
    file    "benet.com.zone";          <!--正向解析区域配置文件名字-->
    allow-transfer { 192.168.100.20; };       <!--备用DNSIP地址-->
};
zone    "accp.com"  IN  {
    type    master;
    file    "accp.com.zone";
    allow-transfer  { 192.168.100.20; };
};
[[email protected] ~]# named-checkconf -z /etc/named.conf  <!--检查主配置文件是否错误-->

2、配置benet区域的正向解析区域

[[email protected] ~]# vim /var/named/benet.com.zone  <!--编制benet的正向解析配置文件-->
$TTL    86400         <!--解析资源记录有效时间24小时-->
@   SOA benet.com.  root.benet.com(       <!--域名为benet.com-->
    2020020910         <!--更新序列号-->
    1H             <!--刷新时间1小时-->
    15M              <!--重试时间15分钟-->
    1W           <!--失效时间1周-->
    1D             <!--无效解析记录保存时间1天-->
)
@   NS  centos01.benet.com. <!--主权威服务器是DNS完全合格域名-->
    NS  centos02.benet.com.              <!--备-->
centos01 A  192.168.100.10        <!--记录正向解析条目-->
centos02 A  192.168.100.20        <!--记录正向解析条目-->
ftp  A  192.168.100.10           <!--ftp服务器IP地址-->
www A  192.168.100.10          <!--网站服务器IP地址-->
[[email protected] ~]# named-checkzone benet.com /var/named/benet.com.zone  <!--检查正向解析区域配置文件是否正常-->
zone benet.com/IN: loaded serial 2020020910
OK
[[email protected] ~]# chmod 755 /var/named/benet.com.zone
     <!--benet正向解析区域配置文件添加权限-->
[[email protected] ~]# chown named:named /var/named/benet.com.zone
              <!--修改属主属组-->

3、配置accp区域的正向解析区域

[[email protected] ~]#cp /var/named/benet.com.zone  /var/named/accp.com.zone
<!--复制benet正向解析区域配置文件到accp正向解析区域配置文件-->

[[email protected] ~]# vim /var/named/accp.com.zone
          <!--编辑accp正向解析区域配置文件-->
$TTL    86400
@   SOA accp.com.   root.accp.com(
    2020020910
    1H
    15M
    1W
    1D
)
@   NS  centos01.accp.com.
    NS  centos02.accp.com.
centos01 A  192.168.100.10
ftp  A  192.168.100.10
www A  192.168.100.10
[[email protected] ~]# named-checkzone accp.com /var/named/accp.com.zone
       <!--检查accp正向解析区域配置文件是否正常-->
zone accp.com/IN: loaded serial 2020020910
OK

4、启动DNS服务

[[email protected] ~]# systemctl start named           <!--启动服务-->
[[email protected] ~]# systemctl enable named  <!--设置服务开机自动启动-->     

5、网卡添加DNS

[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32       <!--编辑网卡配置文件-->
DNS1=192.168.100.20           <!--添加主DNS(主从互指)-->
DNS2=192.168.100.10             <!--备用DNS-->
[[email protected] ~]# systemctl restart network <!--重新启动网卡服务-->
[[email protected] ~]# systemctl restart named <!--重新启动DNS服务-->    

二、安装从DNS服务器

1、配置从DNS

[[email protected] ~]# yum -y install bind bind-chroot bind-utils
[[email protected] ~]# cp /etc/named.conf /etc/named.conf.bak
[[email protected] ~]# echo "" > /etc/named.conf
[[email protected] ~]# vim /etc/named.conf
options {
    listen-on   port    53  { any; };
    directory   "/var/named";
};
zone    "benet.com" IN  {
    type    slave;
    file    "slaves/benet.com.zone";
    masters { 192.168.100.10; };
};
zone    "accp.com"  IN  {
    type    slave;
    file    "slaves/accp.com.zone";
    masters { 192.168.100.10; };
};

2、启动DNS服务

[[email protected] ~]# systemctl start named
[[email protected] ~]# systemctl enable named

3、检测从是否自动复制主的配置文件

[[email protected] ~]# cd /var/named/
[[email protected] named]# ls
chroot  data  dynamic  named.ca  named.empty  named.localhost  named.loopback  slaves
[[email protected] named]# cd slaves/
[[email protected] slaves]# ls
accp.com.zone  benet.com.zone

4、网卡添加DNS

[[email protected] ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens32
DNS1=192.168.100.10
DNS2=192.168.100.20
[[email protected] ~]# systemctl restart network
[[email protected] ~]# systemctl restart named

5、测试DNS解析

1)主DNS测试解析

[[email protected] ~]# nslookup ftp.benet.com
Server:     192.168.100.20
Address:    192.168.100.20#53

Name:   ftp.benet.com
Address: 192.168.100.10

2)客户端测试解析

3)备用DNS测试解析

[[email protected] ~]# nslookup ftp.accp.com
Server:     192.168.100.10
Address:    192.168.100.10#53

Name:   ftp.accp.com
Address: 192.168.100.10

三、配置基于域名的Apache服务器

1、安装配置Apache

[[email protected] ~]# tar zxvf /mnt/httpd-2.2.17.tar.gz -C /usr/src/
<!--解压缩apache包-->
[[email protected] ~]# cd /usr/src/httpd-2.2.17/
[[email protected] httpd-2.2.17]# ./configure
--prefix=/usr/local/httpd
--enable-so --enable-rewrite
-enable-charset-lite
--enable-cgi
         <!--配置Apache-->
[[email protected] httpd-2.2.17]# make && make install <!--编译及安装Apache-->
[[email protected] ~]# ln -s /usr/local/httpd/bin/* /usr/local/bin/ <!--优化Apache执行命令-->
[[email protected] ~]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
           <!--生成Apache服务-->
[[email protected] ~]# chmod +x /etc/init.d/httpd  <!--添加执行权限-->
[[email protected] ~]# vim /etc/init.d/httpd  <!--修改Apache服务控制文件-->
#chkconfig:35 80 20
[[email protected] ~]# chkconfig --add httpd <!--添加系统服务-->
[[email protected] ~]# chkconfig --level 35 httpd on<!--设置开机自动启动-->
[[email protected] ~]# systemctl start httpd  <!--启动Apache服务-->

2、配置虚拟主机

[[email protected] ~]# mkdir /var/www      <!--创建网站根目录-->
[[email protected] ~]# mkdir /var/www/benetcom <!--创建虚拟站点根目录-->
[[email protected] ~]# mkdir /var/www/accpcom<!--创建虚拟站点根目录-->
[[email protected] ~]# echo "www.benet.com" >  /var/www/benetcom/index.html
<!--设置网站主页-->
[[email protected] ~]# echo "www.accp.com" >   /var/www/accpcom/index.html
<!--设置网站主页-->
[[email protected] ~]# vim /usr/local/httpd/conf/httpd.conf
         <!--编制apache主配置文件-->
98 ServerName 192.168.100.10:80 <!--apache服务器IP地址-->
389 Include conf/extra/httpd-vhosts.conf <!--支持虚拟主机-->
[[email protected] ~]# vim /usr/local/httpd/conf/extra/httpd-vhosts.conf        <!--编辑虚拟主机配置文件-->
NameVirtualHost 192.168.100.10:80       <!--虚拟主机IP地址-->

<Directory "/var/www/">
        Order   allow,deny
        allow   from    all
 </Directory>

<VirtualHost www.benet.com:80>      <!--虚拟主机域名-->
    DocumentRoot "/var/www/benetcom/"   <!--网站根目录-->
    ServerName www.benet.com             <!--网站域名-->
    CustomLog "logs/www.benet.com_access_log" common
                   <!--访问成功日志-->
</VirtualHost>
<VirtualHost www.accp.com:80>
    DocumentRoot "/var/www/accpcom/"
    ServerName www.accp.com
    CustomLog "logs/www.accp.com_access_log" common
</VirtualHost>
[[email protected] ~]# systemctl restart httpd <!--重新启动httpd服务-->
[[email protected] ~]# httpd -t <!--检查Apache服务配置文件是否正常-->
Syntax OK 

3、客户端访问测试

—————— 本文至此结束,感谢阅读 ——————

原文地址:https://blog.51cto.com/14156658/2472695

时间: 2024-08-28 19:17:18

CentOS 7部署DNS主从复制及Apache域名虚拟主机的相关文章

Apache服务器在80端口配置多域名虚拟主机的方法

我们在配置一台服务器的时候,如果只运行一个站点,往往过于浪费资源.Nginx和Apache都可以通过配置虚拟主机实现多站点.配置虚拟主机的方式主要有两种,一种是多个不同端口对应的多个虚拟主机站点,一种是同一端口对应多个不同域名的虚拟主机站点.这里我用80端口为例,在apache配置多个不同域名虚拟主机. 试验环境:windows+apache (linux+apache同理) 1.  虚拟机需要用到Rewrite,所以先编辑Apache的conf目录下的httpd.conf文件 掉Rewrite

Apache 动态虚拟主机配置

经常在开发中为Apache web server添加虚拟主机  方便多个项目的 同时运营,但是每次增加新的项目时 都得增加VirtualHost    部分,时间久了VirtualHost 部分也多了,看着头疼. NameVirtualHost 111.22.33.44 <VirtualHost 111.22.33.44> ServerName www.customer-1.com DocumentRoot /www/hosts/www.customer-1.com/docs ScriptAl

apache添加虚拟主机配置+本地hosts绑定域名

1.本地hosts 什么是本地hosts?我们知道访问一个域名,通过dns服务器得到该域名所指向的服务器ip地址,然后通过ip地址和服务器建立连接,完成剩下的事情.那么当开发过程中我们没有域名的时候如何才能模拟一个域名呢?答案就是hosts文件,一般开发环境都是在win下,所以这里就以win为例,玩linux的相信自己都能摸索到. 我们找到c:\windows\system32\drivers\etc\hosts文件,用记事本打开它,在末尾添加一行: 127.0.0.1 www.xxx.com

windows下Apache的虚拟主机配置

1.Apache虚拟主机: 在Apache上有关于虚拟主机的具体说明,具体可以参考Apache手册,这里简单的说一下虚拟主机主要分为两种: 1.基于主机名的虚拟主机(一个IP地址,多个网站) 2.基于IP地址的虚拟主机(每个站点拥有一个的独立IP地址) 虽然是两种,但其实仔细比对,就能发现:基于主机名的其实非常像一个特殊的基于IP地址的方式,如何实现虚拟主机,思路是这样的: 2.windows下:  基于主机名  设置DNS(windows上的 / hosts文件),好让我们的域名被解析到特定的

Apache 创建虚拟主机目录和设置默认访问页面

虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同的域名. Apache 是世界上使用最广的 Web 服务器, 从 1.1 版开始支持虚拟主机. 下面说明在Windows上使用 Apache 搭建虚拟主机来搭建多个网站. 1.打开apache的httpd.conf文件,找到# Virtual hosts#Include conf/extra/htt

2018-3-1 10周2次课 Apache和PHP结合、Apache默认虚拟主机

11.14/11.15 Apache和PHP结合 1,修改ServerName 在启动apache时,会有类似错误提示 [[email protected] ~]# /usr/local/apache2.4/bin/apachectl restart AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. Set the 

Apache和PHP结合 Apache默认虚拟主机

11.14-11.15 Apache和PHP结合 Apache(httpd)的配置文件:/usr/local/apache2.4/conf/httpd.conf. 配置Apache 选择要调用的PHP 因为本机安装了两个版本的PHP,所以需要进行该配置,如果只装一个PHP服务则会默认调用存在的PHP服务(在此选用PHP5). [[email protected] ~]# vim /usr/local/apache2.4/conf/httpd.conf--LoadModule php5_modul

Apache与PHP的结合配置、Apache默认虚拟主机

Apache和PHP结合 配置httpd支持php 1. 修改配置文件: [[email protected] php-7.1.6]# vim /usr/local/apache2.4/conf/httpd.conf 修改一: 修改httpd的主配置文件/usr/local/apache2.4/conf/httpd.conf,搜索ServerName,把#ServerName www.example.com:80前面的#号删除. 找到如下内容更改: <Directory /> AllowOve

LAMP(4)Apach和php结合、Apache默认虚拟主机

                        Apach和php结合 1.修改apache配置文件   vim /usr/local/apache2.4/conf/httpd.conf (1)修改ServerName  把前面注释的#取消 (这里在启动httpd的时候,会提示要定义一个ServerName,若定义了则在启动时就不会再提示) 在window浏览器中访问我们的linux机器的ip: 出现这种问题的时候:我们首先排查网络的原因(在window测试) 第一步:ping 192.168.