Chinaunix首页 | 论坛 | 博客
  • 博客访问: 70266
  • 博文数量: 15
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 219
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-21 17:53
文章分类
文章存档

2014年(15)

我的朋友

分类: 网络与安全

2014-03-06 17:05:57

一)、DNS服务搭建

使用bind搭建dns服务:

yum install -y bind

yum install -y bind-utils

cp /etc/named.conf /etc/named.conf.bak

>/etc/named.conf

vim /etc/named.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    
options {
    directory "/var/named";
};
zone "." IN  {
    type hint;
    file "named.ca";
};
zone "localhost" IN {
    type master;
    file "localhost.zone";
};
zone "0.0.127.in-addr.arpa" IN {
    type master;
    file "named.local";
};

chown named /etc/named.conf

cd /var/named/

dig -t NS . > named.ca

vim localhost.zone

1
2
3
4
5
6
7
8
9
    
@                   IN      SOA     localhost.  admin.localhost.     (
                                                                        2013081601
                                                                        1H
                                                                        10M
                                                                        7D
                                                                        1D
                                                                           )
@                   IN          NS          localhost.
localhost.          IN          A           127.0.0.1

vim named.loca
1
2
3
4
5
6
7
8
9
10
    
$TTL 86400
@                    IN      SOA     localhost.  admin.localhost.      (
                                                                        2013081601
                                                                        1H
                                                                        10M
                                                                        7D
                                                                        1D
                                                                        )
@                    IN          NS          localhost.
1                    IN          PTR         localhost.

做到这里呢,我们的主配置文件及域配置文件基本就搭建好了。但是呢,这里我们就要注意了,假如你的selinux是开着的话呢,接下来的步骤呢就不好做下去了,你可以通过getenforce命令来查看是否关闭。所以呢,你不妨先关闭下你的selinux啦,你选择永久关闭呢,就进入到/etc/selinux/config将SELINUX修改成disabled就可以啦。OK,我们就继续走着。。。。

检测配置是否有问题: named-checkconf

检测正解析: named-checkzone "localhost" /var/named/localhost.zone

检测反解析: named-checkzone "0.0.127.in-addr.arpa" /var/named/named.local

如果都“OK”那就可以了

rndc-confgen -r /dev/urandom -a  // 这一步是生成 rndc.key, 如果没有这个key namd 是启动不了的

chown named:named /etc/rndc.key

/etc/init.d/named start

netstat -lnp  |grep named  // 查看一下named进程是否监听了53端口
首先测试正向解析:dig @127.0.0.1 localhost.
接着测试反解析:dig @127.0.0.1 -x 127.0.0.1

都正常了,那么我呢就加个域名来试试。。。

vim /etc/named.conf 后面增加

1
2
3
4
5
6
7
8
    
zone "abc.com" IN {
    type master;
    file "abc.com.zone";
};
zone "137.168.192.in-addr.arpa" IN {
    type master;
    file "192.168.zone";
};

编辑zone文件: vim /var/named/abc.com.zone

1
2
3
4
5
6
7
8
9
10
11
12
13
14
    
$TTL    600
@               IN      SOA     abc.com.      root.abc.com.    (
                                                        2013081611
                                                        1H
                                                        10M
                                                        7D
                                                        1D
)
                 IN      NS      ns.abc.com.
                 IN      MX  10  mail.abc.com.
ns               IN      A       192.168.0.120
www              IN      A       192.168.137.73
mail             IN      A       192.168.137.10
bbs              IN      CNAME  

这里呢,得提醒下你了,我的主机IP地址是192.168.0.120

编辑反解析文件: vim /var/named/192.168.zone

1
2
3
4
5
6
7
8
9
10
11
12
13
    
$TTL 600
@               IN      SOA     ns.abc.com.      root.abc.com. (
                                                        2013081601
                                                        1H
                                                        10M
                                                        7D
                                                        1D
)
@               IN      NS      ns.abc.com.
10              IN      PTR     ns.abc.com.
20              IN      PTR     mail.abc.com.
73              IN      PTR    
~

分别检测两个配置文件是否有问题:
named-checkzone "abc.com" abc.com.zone
named-checkzone "137.168.192.in-addr.arpa" 192.168.zone
重启named服务,测试:

dig @127.0.0.1
dig  @127.0.0.1 -x 192.168.137.11

好了,我们的DNS服务呢就搭好了。不过呢,我们不还没完么,继续走着。。。。

二)、配置DNS转发:

我们配置的DNS是只能解析我们定义的zone的,我们没有定义的是不能解析的。
配置DNS转发就可以解析其他互联网上的域名了,前提是这个域名在互联网中的确在使用,也就是说这个域名已经被某个DNS服务器解析了。
vim  /etc/named.conf //在options{} 里面增加
forward first;  
forwarders { 8.8.8.8; };
这两行就是用来配置转发的,该DNS服务器不能解析的域名会转发到8.8.8.8这个DNS服务器上去解析。

转发做好了,我们继续做主从了。。。。

三)、配置主从:

在从服务器上 yum install -y bind
拷贝主上的配置文件到从上,其中有/etc/named.conf, /var/named/localhost.zone, /var/named/named.local  
拷贝过来后,修改一下从的/etc/named.conf 内容参考:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
    
options {
    directory "/var/named";
};
zone "." IN  {
    type hint;
    file "named.ca";
};
zone "localhost" IN {
    type master;
    file "localhost.zone";
};
zone "0.0.127.in-addr.arpa" IN {
    type master;
    file "named.local";
};
zone "abc.com" IN {
    type slave;
    file "slaves/abc.com.zone";
    masters { 192.168.0.120; };
};
zone "137.168.192.in-addr.arpa" IN {
    type slave;
    file "slaves/192.168.zone";
    masters { 192.168.0.120; };
};

做到这里呢,又得注意一个问题了,那就是iptables啦,如果53端口被关闭的话呢,主从是没办法同步的,你可以在从上通过telnet 192.168.0.120 53来试登录主上,如果是登不上,你就需要/etc/init.d/iptables stop 或者chkconfig iptables off临时或者永久关闭他了,当然你也可以通过修改iptables规则来开放53端口啦,自己定夺,就不细说啦。。。。

从上生成rndc.key: rndc-confgen -r /dev/urandom -a
chown named:named /etc/rndc.key
从上启动named: /etc/init.d/named start
启动成功后会在 /var/named/下生成一个slaves目录,这个目录下会有192.168.zone, abc.com.zone这两个文件,内容是和主上的一样的
在从上测试: dig @127.0.0.1

测试主从同步:

在主dns上更改文件 /var/named/abc.com.zone // 在最后增加一行:
123              IN      A       1.1.1.1
另外需要修改一下第三行的那个数字串,这个是用来做标记的,只有这个数字变化了,才可以让从自动跟着变,数字只能是变大,不能减小,2013081601 -> 2013081602
重启主namd服务: /etc/init.d/named restart
经测试我们发现一个问题,就是从经常会同步特别慢,这是很要命的。所以需要我们做一个特殊操作,在主上的/etc/named.conf中,abc.com的zone中增加两行:
notify yes;
also-notify { 192.168.0.121; };

这个121呢,就是从上的ip了。好啦,就这样吧,祝你成功!!!
阅读(1780) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~