占位图像 用户ID: 密码: 验证码: 登录 注册     占位图像
 
教育168搜索

a
频道信息
学前教育 基础教育
小学 初中
高中 高等教育
心理学 机械工程
园林 IT教育
办公软件 Director
Authorware 图形图象
FIREWORKS CORELDRAW
Maya PhotoShop
AutoCAD 3D
操作系统 Windows xp
Windows Vista Linux
Windows 2003 Windows 2000
FreeBSD 注册表
网站制作 FLASH
Dreamweaver CSS教程
装修设计 LightScape
装修风水 方案设计
英语 商务外语
素质教育 法制教育
企业培训
最新更新
·教你制作可以随身携带的Fre
·FreeBSD5.3与Apa
·FreeBSD5.3 Apa
·初学者入门:FreeBSD系
·FREEBSD下搭建支持JS
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSDhandboo
·FreeBSD下Apache
·FreeBSDhandboo
·FreeBSD4.7 Qma
·FREEBSD升级及优化全攻

点击排行
·FreeBSD网站平台建设全
·初学者入门:FreeBSD系
·教你制作可以随身携带的Fre
·FreeBSD5.3 Apa
·FreeBSD5.3与Apa
·FreeBSDhandboo
·porttree更新
·FreeBSD命令lastc
·FreeBSDkernel编
·在FreeBSD5.0上配置
·FreeBSDhandboo
·FreeBSD命令lastc
·FreeBSD中文化全攻略
·FreeBSD上的软件安装方
·利用FreeBSD组建安全的
·FreeBSDhandboo
·在FreeBSD上运行Win
·FreeBSD与Linux的

FREEBSD5.2上安装配置DNSSERVER(BIND9)
发布日期:2005-3-28  浏览:425次
关键字:
----文/重庆.樊礼(梦飞)

欢迎转载﹐本文遵循GNU协议规则﹗

FreeBSD5.2出来几个月了,一直想系统全面的学习一下它的新功能,但最近工作实在太忙,没有办法全面的学习。今天下午快下班时忙里偷闲,花了一个小时从新安装了一遍DNSSERVER(BIND9),怕自己以后忘记了,俗话说好记性不如烂笔头嘛,就记在自己的BLOG里面了…

准备工作:当然要安装FREEBSD,最好更新ports,如果不知道怎么更新,请参考我以前写和FREEBSD升级优化大全,^_^

安装BIND9:

cd/usr/ports/dns/bind9进入bind9的目录

makeinstall

运行安装程序,等硬盘响一阵时间后,系统就安装好了,方便吧,*^_^*。在安装完成后,BIND9会提醒你:"如果你使用FREEBSD4.X。请浏览http://people.freebsd.org/~dougb/randomness.html得到更多的信息,如果是FREEBSD5.X则不需要执行这一步,如果你想要BIND9运行在chroot环境,必须把/dev/random设备chroot",它还提醒我们要运行"rndc-confgen-a"来生成一个正确的配置文件--随机密钥。系统是以/usr/local为根目录的,所以BIND9的命令文件都放到/usr/local/sbin目录里面和/usr/local/bin目录里面。系统在安装完成BIND9后,会自动建立uid为53的"bind"用户和gid为53的"bind"群组,以供BIND服务用…

我喜欢FREEBSD的PORTS的强大功能,什么东西,只要makeinstall就行啦,呵呵…Linux还要满世界找RPM包或者源程序,我不喜欢…

PS:我个人认为,只要不是对效率要求十分高的环境下,我尽量不采用源代码编译,节约时间。如果我需要看它详细的编译命令,我可以通过读Makefile来获取信息!

安装好的BIND9,是不能直接运行的,还要让系统根据我们的需要配置一下…

配置BIND9:

BIND比较重要的配置文件有:named.conf,named.root,rndc.conf,还有/etc/named目录。因为默认的安装把named.conf,localhost.rev等内容安装在此目录下了(如果我记错了,麻烦大家更正一下),而rndc.conf则被放在了/usr/local/etc目录里面,名字叫rndc.conf.sample

mv/etc/named/named.conf/usr/local/etc/  如果我记错了,麻烦大家更正

cd/usr/local/etc进入BIND9的配置目录

vinamed.conf打开并编译named.conf,BIND9的配置文件


options{
directory"/etc/namedb";//工作目录
pid-file"/var/run/named/pid";//放pid文件到工作目录
};

......

请大家注意,这文件里面很多垃圾,自己要小心判断,不要编辑错误了,要不然你是无法正常运行BIND9的。最后面那一段有/*和*/注释的部份和前面内容意思相同,你可以根据需要使用:

zone"onlinecq.com"{//这是域名
typeslave;
file"s/onlinecq.com.bak";
masters{
192.168.0.19;
};
};

zone"0.168.192.in-addr.arpa"{
typeslave;
file"s/0.168.192.in-addr.arpa.bak";
masters{
192.168.0.19;//这是本机的IP
};
};


再使用:wq存盘退出,请注意刚才的配置"s/onlinecq.com.bak",我们并没有s目录,于是现在就建立并给权限吧…

mkdir/etc/namedb/s

chownbind:bind/etc/namedb/s

chmod750/etc/namedb/s

好了,然后我们再配置localhost.rev文件,一开始,该目录下面是不存在此文件的,但我们可以运行make-localhost,让系统自动生成该文件…

chmod755make-localhost改变make-localhost脚本权限

./make-localhost

运行后/etc/named目录里面会自动产生localhost.rev文件和localhost-v6.rev文件,localhost.rev文件是给IPv4使用的,而localhost-v6.rev文件是给IPv6使用的,暂时用不到…

这是我的localhost.rev文件的内容:


$TTL3600

@INSOAfreebsd.onlinecq.com.root.freebsd.onlinecq.com.(
20040217;Serial
3600;Refresh
900;Retry
3600000;Expire
3600);Minimum
INNSfreebsd.onlinecq.com.
1INPTRlocalhost.onlinecq.com.


OK,到此为止,/etc/named目录里面的操作完成…

再进入/usr/local/etc目录

cd/usr/local/etc

你会发现一个rndc.conf.sample的文件,这是一个rndc的样本文件,不用管它,我们自己生成一个即可:

/usr/local/sbin/rndc-confgen>rndc.conf

然后你会发现,当前目录有一个rndc.conf的密钥文件了,呵呵,如果你想看一下内容,也可以使用:

virndc.conf

查看一下,我的文件内容是这样子的:

#Startofrndc.conf
key"rndc-key"{
algorithmhmac-md5;
secret"9lLye919/f2DTE cObb1kg==";
};

options{
default-key"rndc-key";
default-server127.0.0.1;
default-port953;
};
#Endofrndc.conf

#Usewiththefollowinginnamed.conf,adjustingtheallowlistasneeded:
#key"rndc-key"{
#algorithmhmac-md5;
#secret"9lLye919/f2DTE cObb1kg==";
#};
#
#controls{
#inet127.0.0.1port953
#allow{127.0.0.1;}keys{"rndc-key";};
#};
#Endofnamed.conf


注意,请把后面以:

#Usewiththefollowinginnamed.conf,adjustingtheallowlistasneeded:


开始的这一部份,加到/usr/local/etc/named.conf后面并去掉#才可以,否则后面的rndcstatus将显示超时退出...

嗯,到此为止,好象BIND9就可以顺利运行了,请按下面的步骤测试吧!

/usr/local/sbin/named-gbind-c/usr/local/etc/named.conf&

&的作用是在后台运行

-c的作用是以指定的配置文件运行

-g的作用是以一个用户组名初使化,屏幕上面也会显示很多调试信息出来,我的如下:

freebsd#/usr/local/sbin/named-gc/usr/local/etc/named.conf&
[1]730
Feb1720:20:36.892startingBIND9.2.3-gc/usr/local/etc/named.conf
Feb1720:20:36.892using1CPU
Feb1720:20:36.894loadingconfigurationfrom'/usr/local/etc/named.conf'
Feb1720:20:36.894listeningonIPv4interfacefxp0,192.168.0.19#53
Feb1720:20:36.895listeningonIPv4interfacelo0,127.0.0.1#53
freebsd#Feb1720:20:36.896commandchannellisteningon127.0.0.1#953
Feb1720:20:36.896ignoringconfigfileloggingstatementdueto-goption
Feb1720:20:36.898zone0.0.127.IN-ADDR.ARPA/IN:loadedserial20040217
Feb1720:20:36.899zone1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA/IN:loadedserial20040217
Feb1720:20:36.899zone1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.INT/IN:loadedserial20040217
Feb1720:20:36.899running


当你有看到running字样时,说明已经配置正确了,如果要控制BIND9的运行,更方便的使用rndc命令来进行,比如检测它的状态可以使用下面的命令:

/usr/local/sbin/rndcstatus

当显示如下信息时,可能会显示如下信息…

numberofzones:5
debuglevel:0
xfersrunning:0
xfersdeferred:0
soaqueriesinprogress:0
queryloggingisOFF
serverisupandrunning

如果没有显示上面的信息,请检查你的/usr/local/etc/named.conf文件里面是否配置了/usr/local/etc/rndc.conf里面的key。

还有另外一种测试方法是:

nslook,dig,netstat等命令,都可以观察是否安装BIND成功,具体方法,建议大家找找其他资料吧,THX!

下面我们再把BIND9加入系统服务里面,让它每次开机时运行…

vi/etc/rc.conf

请在它后面加上下面几行

named_enable="YES"

named_program="/usr/local/sbin/named"#pathtonamed,ifyouwantadifferentone.
named_flags="-c/usr/local/etc/named.conf"#Flagsfornamed


存盘退出!

因为FREEBSD5.2系统里面自带了BIND8的,为了不引起冲突,我们必须加参数,用BIND9的配置文件引导才可以的。

好了,请重新启动一下你的FREEBSD即可测试是否完全安装成功了。



结束语
至此为止,一般可以实际运作的BIND9就建立起来了,您可以reboot一下,让最新的设置及软件生效。
如果在安装过程中出现错误,您可以先检查完错误,再接着安装下去。或者你可以选择你感兴趣的某些部份安装!
当然因为时间仓促,涉及到的知识太广,加上本人能力有限,其中错误在所难免,恳请各位读者提出来,大家共同提高,共同进步!
我的联络方式是:
cqfanli@163.com

http://cqfanli.blogbus.com


──文 重庆.樊礼(梦飞)
2004/02/17
关键字:

相关信息 用户评论
·教你制作可以随身携带的FreeBSD系统
·FreeBSD5.3与Apache2.0建立列目录
·FreeBSD5.3 Apache ssl认证
·初学者入门:FreeBSD系统的安装与优化
·FreeBSD下Apache2.0运行模型分析及性能调整
·FreeBSDhandbook中文版12存储
·FreeBSDhandbook中文版10安全
·FreeBSDhandbook中文版15串口通讯
·FreeBSDhandbook中文版14声卡
·FreeBSDhandbook中文版11打印(1)基本设置
·FreeBSDhandbook中文版11打印(1)基本设置
·FreeBSDhandbook中文版11打印(2)高级打印机设置A.过滤器
·FreeBSDhandbook中文版11打印(2)高级打印机设置B.Header
·FreeBSDhandbook中文版8用户和基本的帐户管理
·在FREEBSD5中使用MRTG画出Packet图表
·FreeBSDhandbook中文版5XWindow系统
·FREEBSD下搭建支持JSP的WEBSERVER
·FreeBSD4.7 Qmail Mysql Vpopmail QmailAdmin Sq

 

更多评论

验证码:
验证码