powerdns的安装与配置

dudu_ting 运维工具powerdns的安装与配置已关闭评论25,570字数 3248阅读10分49秒阅读模式

PowerDNS 是一个跨平台的开源DNS服务组件,PowerDNS同时有Win32和Linux/Unix的版本。 PowerDNS在Win32下使用 Access的mdb文件记录DNS信息,而在Linux/Unix下则使用MySQL来记录DNS信息。无论是mdb亦或MySQL,备份是非常方便的 事情

安装步骤:

1、安装mysql

yum -y install mysql mysql-server文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

2、开机启动

chkconfig --levels 235 mysqld on文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

/etc/init.d/mysqld start文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

 文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

3、修改mysql root密码:

mysqladmin -u root password文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

 文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

4、安装pdns

yum -y install pdns pdns-backend-mysql文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

 文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

5、创建powerdns数据库:

CREATE DATABASE powerdns;文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

6、 为PowerDNS创建powerdns数据库用户:

GRANT ALL ON powerdns.* TO 'power_admin'@'localhost' IDENTIFIED BY '************';文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

FLUSH PRIVILEGES;文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

7、现在创建数据表:

USE powerdns;文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

 文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

CREATE TABLE domains (文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

id INT auto_increment,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

name VARCHAR(255) NOT NULL,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

master VARCHAR(128) DEFAULT NULL,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

last_check INT DEFAULT NULL,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

type VARCHAR(6) NOT NULL,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

notified_serial INT DEFAULT NULL,文章源自运维生存时间-https://www.ttlsa.com/tools/install-powerdns-on-linux/

account VARCHAR(40) DEFAULT NULL,

primary key (id)

);

CREATE UNIQUE INDEX name_index ON domains(name);

 

CREATE TABLE records (

id INT auto_increment,

domain_id INT DEFAULT NULL,

name VARCHAR(255) DEFAULT NULL,

type VARCHAR(6) DEFAULT NULL,

content VARCHAR(255) DEFAULT NULL,

ttl INT DEFAULT NULL,

prio INT DEFAULT NULL,

change_date INT DEFAULT NULL,

primary key(id)

);

CREATE INDEX rec_name_index ON records(name);

CREATE INDEX nametype_index ON records(name,type);

CREATE INDEX domain_id ON records(domain_id);

 

CREATE TABLE supermasters (

ip VARCHAR(25) NOT NULL,

nameserver VARCHAR(255) NOT NULL,

account VARCHAR(40) DEFAULT NULL

);

8、  现在配置PowerDNS以使用mysql后端

vi /etc/pdns/pdns.conf

######添加#######

 

launch=gmysql

gmysql-host=127.0.0.1

gmysql-user=power_admin

gmysql-password=************

gmysql-dbname=powerdns

 

9、安装Poweradmin的所需要的包

yum -y install httpd php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mhash gettext

 

10、设置apache自启动,并启动apache。

 

chkconfig --levels 235 httpd on

/etc/init.d/httpd start

11、Poweradmin还需要安装两个PEAR软件包。

 

yum install php-pear-DB php-pear-MDB2-Driver-mysql

 

12、下载powerdnsadmin   poweradmin-2.1.6.tgz

https://www.poweradmin.org/trac/wiki/News/Poweradmin2.1.6Released

 

13、安装在/var/www/html/poweradmin目录。

 

tar xvfz poweradmin-2.1.5.tgz

mv poweradmin-2.1.5 /var/www/html/poweradmin

touch /var/www/html/poweradmin/inc/config.inc.php

chown -R apache:apache /var/www/html/poweradmin/

 

14、开始配置

http://192.168.1.100/poweradmin/install/

web DNS mysql

第二步默认继续

web DNS mysql

 

web DNS mysql

不过如果不执行的话会报错误,嘿嘿,可以尝试下。。。

 

安装完成。

web DNS mysql

After you have removed the directory, you can login to Poweradmin with username "admin" and password "*****l". You are highly encouraged to change these as soon as you are logged in.

 

15、为了安全效果,不过也必须删除,否者产生错误Error: The install/ directory exists, you must remove it first before proceeding.

rm -fr /var/www/html/poweradmin/install/

 

删除之后,刷新页面

 

登录http://192.168.1.100/poweradmin/index.php

 

使用文档后期会逐步推出。。

参考http://www.centos.bz/2011/10/centos-5-install-powerdns-server/

 

 

  • 编辑powerdns 配置文件 /etc/powerdns/pdns.conf ,使其使用mysql 数据库,找到如下字段,修改如下, recursor 表示如果查询的域名不在本机上,则向上级域名服务器查询,查询的地址为8.8.8.8

[...]

# 注释如下行
#################################
# allow-recursion       List of netmasks that are allowed to recurse
allow-recursion
#allow-recursion

#################################
# launch        Which backends to launch and order to query them in
#
# launch=
launch=gmysql
[...]

#################################
# recursor      If recursion is desired, IP address of a recursing nameserver
#
recursor=8.8.8.8

创建普通用户,创建A记录是否可用

1、http://192.168.1.100/poweradmin/ 登录

2、添加用户

web DNS mysql

web DNS mysql

 

3、尝试登录

4、添加A记录

web DNS mysql

5、查看是否已经解析了

web DNS mysql

使用体验

前提条件,将DNS调整为192.168.1.100

Windows条件下:

web DNS mysql

 

Linux条件下:

修改/etc/resolv.conf  文件,改DNS为192.168.1.100

 

添加zone记录

web DNS mysql

web DNS mysql

说明添加成功

 

添加A记录

http://192.168.1.100/poweradmin/index.php?logout

登录powerdns

web DNS mysql