LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 613|回复: 1

[原创] 加强域名服务器安全:chroot运行BIND

[复制链接]
发表于 2005-5-17 20:34:54 | 显示全部楼层 |阅读模式
出处 菜鸟油 ( http://www.noobu.com ) 作者:沧蓝  欢迎转载,转载请注明出处与作者,谢谢
<推荐> 本文的完美排版/最后更新修正版本:http://www.noobu.com/forums/article18.html  <推荐>



将BIND运行于chroot的方式将加强安全性。本文在Debian Sarge上测试过,其他版本请自行依照实际情况做修改。

如果你还没安装过BIND,请执行以下命令安装Bind 9。

Code:

apt-get install bind9


在修改配置前,先停止Bind服务:

Code:

/etc/init.d/bind9 stop


打开配置文件:

Code:

nano -w /etc/default/bind9


将内容更改为:

Code:

OPTIONS="-u bind -t /var/lib/named"


建立相关目录:

Code:

mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run


移动配置目录:

Code:

mv /etc/bind /var/lib/named/etc


建立链接,以便以后升级Bind:

Code:

ln -s /var/lib/named/etc/bind /etc/bind


创建null和random设备,以及设置目录的所有权:

Code:

mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind


紧接着我们需要修改对 syslog 的配置,以便能准确的得到日志文件。

Code:

nano -w /etc/init.d/sysklogd


找到 SYSLOGD=,将之修改为 SYSLOGD="-a /var/lib/named/dev/log" 。

重起syslog daemon:

Code:

/etc/init.d/sysklogd restart


启动Bind:

Code:

/etc/init.d/bind9 start


之后可通过 tail /var/log/syslog 来查看出错日志。



出处 菜鸟油 ( http://www.noobu.com ) 作者:沧蓝  欢迎转载,转载请注明出处与作者,谢谢
<推荐> 本文的完美排版/最后更新修正版本:http://www.noobu.com/forums/article18.html  <推荐>
发表于 2005-5-17 21:25:49 | 显示全部楼层
好文章。前些日子就是按此方法将自己的dns改造了一番。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表