配置一个安全的chroot DNS(4)_Windows教程
激动人心的时候到了,即将开始我们的处女bind 9运行了。
运行以下命令
/usr/local/sbin/named -t /chroot/named -u named -c /etc/named.conf 然后再ps –fCnamed 看看??如果出来类似 UID PID PPID C STIME TTY TIME CMD named 14023 1 0 May27 ? 00:00:00 /usr/local/sbin/named -t /chroot/named -u named -c /etc/named.conf |
这样的结果,说明成功了,恭喜你!!!
每次都这样输入累不累??所以还是一起来写个shell吧(其实shell真的粉好用,但是一般真要系统地讲解起来又没有意思,所以我尽量在每篇文章中都把shell用上,慢慢就领会到它的好处咯)
vi /chroot/named.start cd /chroot/named |
然后以sh /chroot/named.start 执行此命令就行了,之后在/etc/resolv.conf为自己的DNS地址就可以测试了,当然,也可以用dig命令来查(个人觉得dig命令比nslookup好用,但是Solaris 2.6上默认没有)。
6. 控制工具rndc的安装和使用
rndc=remote dnc,以前装过bind 8的朋友都知道有个ndc工具,而在bind 9中,更是连远程控制的功能都加上了。说“加上”其实不够恰当,因为rdnc并不是用ndc改的,而是重新写的一个通过tcp协议进行DNS控制的软件。(有什么用?问问做虚拟主机/系统管理的朋友就知道,DNS一般都是用独立主机,如果可以远程reload配置文件,可以方便很多的)。
rndc 原本是应该读取/usr/local/etc/rndc.conf 作为配置文件的,但我们既然是安装chroot的DNS,所以有必要把rndc.conf转到/chroot/named/etc/rndc.conf。好,下面来看看我们的rndc.conf的写法。
options { server localhost { |
接下来,就是要生成/chroot/named/etc/rndc.key 文件了,它是一个采用bASe-64编码加密的长字符串key,我们用DNSsec-keygen命令来生成它:
cd /chroot/named/etc
/usr/local/sbin/DNSsec-keygen -a HMAC-MD5 -b 256 -n HOST rndc
得到一个类似Krndc.+157+30481这样的返回值,这说明已经在当前目录下成功建立了Krndc.+157+30481.key和Krndc.+157+30481.private两个文件。
cat Krndc.+157+30481.private 显示 Private-key-format: v1.2 Algorithm: 157 (HMAC_MD5) Key: aoqaT1r9Oz29DIj3VPn6+teHcvBudGAc17qLM4nPOqA= |
在这里,Key后面的那串字符就是我们想要的key了,把它复制下来,然后删除临时文件
rm Krndc.+157+30481.* vi /chroot/named/etc/rndc.key key "rndckey" { algorithm "hmac-md5"; secret " aoqaT1r9Oz29DIj3VPn6+teHcvBudGAc17qLM4nPOqA="; }; |
现在已经配置完成了,建立2个软连接
ln -s /chroot/named/etc/rndc.conf /usr/local/etc/rndc.conf kill -1 14023 #14023 是named的进程号,至于-1的作用,自己man kill吧 |
如果出现的是rndc: send remote authenticator: permission denied 则肯定上面的步骤中存在问题,请一步步检查吧。
- 相关链接:
- 教程说明:
Windows教程-配置一个安全的chroot DNS(4)。