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
2、开机启动
chkconfig --levels 235 mysqld on /etc/init.d/mysqld start
3、修改mysql root密码:
mysqladmin -u root password
4、安装pdns
yum -y install pdns pdns-backend-mysql
5、创建powerdns数据库:
CREATE DATABASE powerdns;
6、 为PowerDNS创建powerdns数据库用户:
GRANT ALL ON powerdns.* TO 'power_admin'@'localhost' IDENTIFIED BY '************'; FLUSH PRIVILEGES;
7、现在创建数据表:
USE powerdns; CREATE TABLE domains ( id INT auto_increment, name VARCHAR(255) NOT NULL, master VARCHAR(128) DEFAULT NULL, last_check INT DEFAULT NULL, type VARCHAR(6) NOT NULL, notified_serial INT DEFAULT NULL, 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/ 第二步默认继续 不过如果不执行的话会报错误,嘿嘿,可以尝试下。。。 安装完成。 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、添加用户
3、尝试登录
4、添加A记录
5、查看是否已经解析了
使用体验
前提条件,将DNS调整为192.168.1.100
Windows条件下:
Linux条件下:
修改/etc/resolv.conf 文件,改DNS为192.168.1.100
添加zone记录
说明添加成功
添加A记录
http://192.168.1.100/poweradmin/index.php?logout 登录powerdns 说明已经添加上了