安装说明
系统环境:Centos6.4X64
安装方式:yum安装和源码安装
使用软件:MaraiaDB(10.0.4)、PowerDNS(3.5.3)、Poweradmin(2.1.6)、Tengine(1.5.1)、PHP(5.3.3)
DNS 是域名系统(Domain Name System) 的缩写,是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。
公司达到一定规模的时候,DNS也是一个必不可少的服务器,该如何选择DNS服务器软件也是一个问题。
选windows server自带的DNS,那么就得掏钱买版权。
选Bind,虽然不涉及到版权问题,但是需要很强硬的linux知识。
powerdns+poweradmin组合搭建不仅解决版权问题,而且有web图形界面方便管理,可以说是经济方便。
由于安装powerdsn需要安装Mysql(可以用MaraiaDB替代mysql),poweradmin需要安装PHP与apache(或nginx)
1.安装MaraiaDB+ Tengine+ PHP,并整合Tengine+和PHP
MaraiaDB+Tengine+ PHP安装和整合参考CentOS 6.4 x64 安装Tengine+MaraiaDB+php-fpm+Discuz
2.安装php-mcrypt,并设置php
[root@tengine~]# rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@tengine ~]# yum -y install php-mcrypt
[root@tengine ~]# vi /etc/php.ini
增加一行
session.save_path = /var/lib/php/session
[root@tengine ~]# chown -R nginx.nginx /var/lib/php/session/
[root@tengine ~]# chkconfig php-fpm on
3.安装powerdns
1.创建powerdns数据库
[root@tengine ~]# mysql -uroot -p
Enterpassword: (输入数据库密码)
MariaDB [(none)]> create database powerdns;
Query OK, 1 row affected(0.02 sec)
MariaDB[(none)]> GRANT ALL ON powerdns.* TO 'arthur'@'localhost' IDENTIFIED BY'arthur';
QueryOK, 0 rows affected (0.00 sec)
2.安装powerdns
[root@tengine~]# wget -P /etc/yum.repos.d/ http://www.monshouwer.eu/download/3rd_party/pdns-recursor/el6/pdns-recursor.el6.repo
[root@tengine~]# yum -y install pdns pdns-backend-mysql
3.修改/etc/powerdns/pdns.conf文件如下内容,使PowerDNS使用MaraiaDB数据库。
[root@tengine~]# vi /etc/pdns/pdns.conf
launch=gmysql
gmysql-host=127.0.0.1
gmysql-user=arthur
gmysql-password=arthur
gmysql-dbname=powerdns
4.安装pwoeradmin
1.下载poweradmin
[root@tengine~]# wget http://cloud.github.com/downloads/poweradmin/poweradmin/poweradmin-2.1.6.tgz
注:这个是官网下载的地址,官网下载的安装后是英文版本,我的个人百度网盘分享有我修改的版本,安装完成之后是中文版,下载链接为:http://pan.baidu.com/s/1mo6vk需要的话就在本文回复后短信告知分享密码
2.解压poweradmin并移动到tengineweb目录下
[root@tengine ~]# tar -zxvf poweradmin-2.1.6.tgz
[root@tengine ~]# mv poweradmin-2.1.6/usr/local/nginx/html/poweradmin
[root@tengine~]# chown nginx.nginx -R/usr/local/nginx/html
3.导入数据库
[root@tengine ~]# mysql -uroot -p
Enter password:
MariaDB [(none)]> use powerdns;
Database changed
MariaDB[powerdns]> source /usr/local/nginx/html/poweradmin/sql/powerdns-mysql-db-structure.sql;
5.启动相应的服务
[root@tengine ~]# service nginx restart
停止 nginx: [确定]
正在启动 nginx: [确定]
[root@tengine ~]# service php-fpm restart
停止 php-fpm: [确定]
正在启动 php-fpm:
6.配置poweradmin
1.用浏览器打开http://ip/poweradmin/install/index.php,默认点击Go to step 2
2.默认点击Go to step 3
3.依次输入数据库root帐号,root密码,选择数据库类型,数据库地址,数据库端口,dns的数据库以及登录powerdns的密码(注意看图的注释),点击Go to step 4
4.依次输入访问powerdns数据库的用户名和密码(刚刚创建的时候我创建的用户名和密码arthur),根据自己的实际情况填写,点击Go to step 5
5.由于之前已经创建,所以直接点击Go to step 6
6.创建config.inc.php文件
[root@tengine~]# vi /usr/local/nginx/html/poweradmin/inc/config.inc.php
把网页的内容复制下来
7.移除install文件
[root@tengine ~]# mv /usr/local/nginx/html/poweradmin/install/ .
7.登录进行测试
1.登录
在浏览器输入http://IP/powerdns/index.php
输入帐号密码后点击执行,可以看到一个主页
2.添加A记录测试
1.添加主域
点击添加主域,在域名中输入51cto.com,点击添加域,就可以看到添加成功的提示
2.添加A记录
点击域列表,点击查看域。
在名称填入bbs,内容填入ip地址,点击添加记录,会有英文的成功提示
3.重启powerdns服务
[root@tengine ~]# service pdns restart
Restarting PowerDNS authoritativenameserver: stopping and waiting..done
Starting PowerDNS authoritative nameserver:started
4.在客户端查询
在客户端设置好dns服务器IP地址,通过nslookup命令进行查询
至此整个dns服务器和管理界面搭建完成
本文出自 “谢海棠” 博客,转载请与作者联系!