mydns+mysql+myconfig实现可视化管理dns服务器
首先:系统环境以及软件需求
red hat enterprise linux 5.4
mydns-1.1.0.tar.bz2
mysql-5.6.10.tar.gz
cmake-2.8.10.2.tar.gz(用于编译mysql源码)
apache服务器以及相关组件
MyDNSConfig-1.1.0.tar.gz(用于
web管理)
因为mydns的域以及记录信息都是依托于mysql数据库的,所以先安装mysql数据库,因为原有linux 5.4 下附带的mysql版本太低,这里我们可以下载一个最新版本的mysql-5.6.10,安装过程:
将
mysql和cmake的源码文件解压到/usr/local/src文件夹下
#tar -zxvf mysql-5.6.10.tar.gz -C /usr/local/src/
#tar –zxvf cmake-2.8.10.2.tar.gz –C /usr/local/src
切换到cmake目录下
#cd /usr/local/src/cmake-2.8.10.2/
按照安装说明分别执行:
#./ bootstrap
#make
#make install
之后使用
which cmake查询cmake是否安装成功
之后就进行mysql的安装了,先切换到mysql的源码解压目录
#cd /usr/local/src/mysql-5.6.10/
然后执行#cmake .
在执行#make && make install
执行过程相当的长。。。需耐心等待。
先添加
mysql用户吧
#groupadd mysql
#useradd -r -g mysql mysql
mysql会自动安装到/usr/local/mysql目录下,然后我们将用户和用户组修改一下
#chown -R mysql.mysql /usr/local/mysql
切换到脚本目录下
#cd /usr/local/mysql/scripts
执行后续脚本
#./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
之后要将相应的配置文件(放在/usr/local/mysql/support-files)
cp到/etc目录下
#cd /usr/local/mysql/support-files
#cp mysql.server /etc/rc.d/init.d/mysql 为了能使用service命令控制
#cp my-default.cnf /etc/my.cnf
之后修改
mysql的开机启动级别
#chkconfig --add mysql
#chkconfig --level 35 mysql on
启动mysql
#service mysql start
使用
mysql
/usr/local/mysql/bin/mysql
查看状态,安装成功啦。
接下来就需要安装配置
mydns:
解压缩
mydns-1.1.0.tar.gz,并且切换到解压后的目录下
#tar -zxvf mydns-1.1.0.tar.gz -C /usr/local/src
#cd /usr/local/src/ mydns-1.1.0
安装(老三步,每一步执行完之后都会有下一步的提示)
#./configure --prefix=/usr/local/mydns (指名安装路径)
#make
#make install
#make conf 这一步很关键,生成配置文件
添加
mydns用户
#useradd mydns
#passwd mydns 这里密码改为123456
编辑mydns.conf
因为当下还没有为mydns创建数据库,虽然配置文件指名了,下面就登录mysql创建mydns的后台数据库,我们数据库名这里用的是mydns
如果使用
/usr/local/mysql/bin/mysql -u -root -p 无法登录的话就直接使用
/usr/local/mysql/bin/mysql
mysql> create database mydns;
mysql> grant all on mydns.* to mydns@localhost identified by mysql> '123456';
mysql> flush privileges;
mysql> quit ;
创建完数据库,读者会想,接下来就是创建相应的表结构啦,但是需要注意的是,因为咱要使用mydnsConfig这个web管理工具,当配置这个管理工具的时候也涉及到建表的工作,它们都是针对于mydns这个数据库的啦,所以我们这里配置mydns的时候可以不用建表,等到配置mydnsConfig的时候再建立
接下来安装配置
MyDNSConfig-1.1.0.tar.gz
MyDNSConfig 是基于
PHP 的基础上开发的。所以你的服务器一定要能支持
PHP 和
MySQL 才行。Mysql编者已经配置过了,那就是配置apache和
php的工作了,这里可以使用linux 5.4 自带的软件包就行了
#yum install httpd php php-mysql php-mbstring mysql-connector-odbc
#chkconfig --levels 235 httpd on
#service httpd start
之后打开浏览器测试
安装
MyDNSConfig
#
tar xvfz MyDNSConfig-1.1.0.tar.gz -C /usr/loacl/src
#
cd /usr/local/src/MyDNSConfig-1.1.0
#
mkdir /usr/share/mydnsconfig
#
cp -rf interface/* /usr/share/mydnsconfig/
#
ln -s /usr/share/mydnsconfig/web/ /var/www/html/mydnsconfig
创建域表以及记录表等,这里直接可以使用MyDNSConfig自带的脚本来快速创建
#
mysql -u mydns -p mydns < install/mydnsconfig.sql
这样一来建表的工作就完成了
编辑MyDNSConfig 的配置文件
#vim /usr/share/mydnsconfig/lib/config.inc.php(修改认证密码即可)
$conf["db_type"] = 'mysql';
$conf["db_host"] = 'localhost';
$conf["db_database"] = 'mydns';
$conf["db_user"] = 'mydns';
$conf["db_password"] = '123456';
然后便开始测试部分了
首先把所有的服务都起来
#service mysql restart
# /usr/local/mydns/sbin/mydns &
#service httpd restart
启动结果
接下来就是重点啦,那就是在网页上测试啦,但是我们还有一项任务要做:
源码安装的mysql把mysql.sock文件放到/tmp目录下了,我们需要把这个文件链接到/var/lib/mysq/目录下(
软连接,防止在登陆的时候,因为找不到mysql.sock文件而造成无法登陆的情况。)
# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
接下来再测试,打开浏览器输入http://127.0.0.1/mydnsconfig/ 再次输入用户名和密码后点击“
Login”就会有以下界面
点击“
Add New Zone”,现在我们来添加一个域zzutest.com
填写相关信息后点击“
Save”
然后点击鼠标所指的位置
继续点击“
Records”
点击“
Add New Record”
这里有很多种类型的记录可以添加,编者在这里添加了一条ns记录,和三条A记录,记录可以根据类型来查看就是中间的那个下拉框。
选择“
A”的时候能看到我们刚才添加的三条A记录
选择“
NS”的时候能看到添加的一条NS记录
最后一步,我们来测试解析结果:
都很正确,大功告成,接下来的练习教给读者你了,有啥问题可以及时留言或者和文章原作者联系,文章参考:
http://wnqcmq.blog.51cto.com/5200614/1170326