在Debian Squeeze上安装MyDNS-NG和MyDNSConfig

在Debian Squeeze上安装MyDNS-NG&MyDNSConfig

本教程是从安装MyDNS-NG&MyDNSConfig 3 On Debian Lenny教程的更新副本。

本教程将介绍如何在Debian Squeeze上安装和配置MyDNS-NGMyDNSConfig 3 。 MyDNS-NG(基于最初由Don Moore 撰写的 MyDNS - http://mydns.bboy.net/ )是使用MySQL数据库作为后端而不是配置文件的DNS服务器。 优点是MyDNS只是从数据库中读取记录,当DNS记录更改或区域被创建/编辑/删除时,不必重新启动/重新加载。 可以通过安装访问同一数据库的MyDNS的第二个实例来轻松设置辅助Nameservers,或者更多冗余,使用MySQL主/从复制功能将数据复制到辅助Nameservers。

MyDNSConfig是一个易于使用的基于Web的界面,MyDNS-NG。 MyDNSConfig可以创建MyDNS中可用的所有类型的DNS记录,并添加用户管理和访问权限等功能。

我不会保证这将为您工作!

1初步说明

在本教程中,我使用IP地址为192.168.0.100的hostname server1.example.com 。 这些设置可能会有所不同,因此您必须在适当的情况下更换它们。

2安装MySQL

我们可以安装MySQL,如下所示:

aptitude install mysql-client mysql-server

您将被问到以下问题:

MySQL“root”用户的新密码: < - yourrootsqlpassword
重复MySQL“root”用户的密码: < - yourrootsqlpassword

3安装Apache2,PHP,phpMyAdmin

MyDNSConfig需要一个支持PHP的Web服务器; 所以我安装Apache2。 我也安装phpMyAdmin,以便稍后通过Web界面访问数据库(尽管这是可选的):

aptitude install apache2 apache2-mpm-prefork imagemagick mcrypt php5 php-auth php5-gd php5-imagick php5-imap php5-mcrypt php5-mysql php-pear phpmyadmin vlogger

您将看到以下问题:

Web服务器自动重新配置: < - apache2

然后运行以下命令启用Apache模块suexec重写sslactionsinclude

a2enmod suexec rewrite ssl actions include

之后重新启动Apache:

/etc/init.d/apache2 restart

您现在可以访问http://server1.example.com/phpmyadmin/http://192.168.0.100/phpmyadmin/下的phpMyAdmin

4安装MyDNS

在安装MyDNS之前,我们需要安装几个先决条件:

aptitude install build-essential libmysqlclient-dev

MyDNS在Debian Squeeze存储库中不可用,因此我们必须自己构建如下:

cd /tmp
wget http://sourceforge.net/projects/mydns-ng/files/mydns/1.2.8.31/mydns-1.2.8.31.tar.gz
tar xfz mydns-1.2.8.31.tar.gz
cd mydns-1.2.8.31/
./configure
make
make install

接下来我们为MyDNS创建启动/停止脚本:

vi /etc/init.d/mydns
#! /bin/sh
#
# mydns Start the MyDNS server
#
# Author: Philipp Kern <phil@philkern.de>.
# Based upon skeleton 1.9.4 by Miquel van Smoorenburg
# <miquels@cistron.nl> and Ian Murdock <imurdock@gnu.ai.mit.edu>.
#

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/sbin/mydns
NAME=mydns
DESC="DNS server"

SCRIPTNAME=/etc/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

case "$1" in
start)
echo -n "Starting $DESC: $NAME"
start-stop-daemon --start --quiet \
--exec $DAEMON -- -b
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
start-stop-daemon --stop --oknodo --quiet \
--exec $DAEMON
echo "."
;;
reload|force-reload)
echo -n "Reloading $DESC configuration..."
start-stop-daemon --stop --signal HUP --quiet \
--exec $DAEMON
echo "done."
;;
restart)
echo -n "Restarting $DESC: $NAME"
start-stop-daemon --stop --quiet --oknodo \
--exec $DAEMON
sleep 1
start-stop-daemon --start --quiet \
--exec $DAEMON -- -b
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
exit 1
;;
esac

exit 0

然后我们使脚本可执行并为其创建系统启动链接:

chmod +x /etc/init.d/mydns
update-rc.d mydns defaults
赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏