1、安装前提
lamp环境已经安装成功;
2、安装powerdns
# yum -y install pdns pdns-backend-mysql
连接mysql:
# mysql -u root -p
创建powerdns数据库:
> CREATE DATABASE powerdns;
为PowerDNS创建powerdns数据库用户:
> GRANT ALL ON powerdns.* TO 'power_admin'@'localhost' IDENTIFIED BY 'power_admin_password';
> FLUSH PRIVILEGES;
请替换power_admin_password成自己的密码。
现在创建数据表:
> 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
);
最后退出mysql Shell:
> quit;
现在配置PowerDNS以使用mysql后端:
# vi /etc/pdns/pdns.conf
增加如下内容到pdns.conf
[...] ################################# # launch which backends to launch and order to query them in # # launch= launch=gmysql gmysql-host=127.0.0.1 gmysql-user=power_admin gmysql-password=power_admin_password gmysql-dbname=powerdns [...]
设置PowerDNS自启动并立即启动PowerDNS。
# chkconfig --levels 235 pdns on
# /etc/init.d/pdns start
现在PowerDNS已经正常运行,下面我们为PowerDNS安装Poweradmin实现Web管理。
3、安装poweradmin
(1)Poweradmin还需要安装两个PEAR软件包。
# yum install php-pear-DB php-pear-MDB2-Driver-mysql
现在Poweradmin所需的环境已经配置完成,我们将把Poweradmin安装在目录/usr/local/apache2/htdocs/下,这是apache的文档根目录。
下载:wget https://cloud.github.com/downloads/poweradmin/poweradmin/poweradmin-2.1.6.tgz
# tar xvfz poweradmin-2.1.5.tgz
(2)然后安装在/usr/local/apache2/htdocs/poweradmin目录。
# mv poweradmin-2.1.6 /usr/local/apache2/htdocs/poweradmin
# touch /usr/local/apache2/htdocs/poweradmin/inc/config.inc.php
# chown -R www:www /usr/local/apache2/htdocs/poweradmin
(3)
1.用浏览器打开http://ip/poweradmin/install/index.php,默认点击Go to step 2
2、点击“Go to step 3”到安装的第三步,填入数据库详细信息。输入root用户和密码,和输入Poweradmin的admin用户的密码。
3、点击下一步,填入在安装powerdns那一步所创建的power_admin mysql用户的信息,并且填入域名服务器地址:
4、下一步是需要执行mysql语句,我们不需要执行了,因为前面我们已经执行过了,直接点击下一步即可。
5、继续点击下一步。
6、现在poweradmin安装完成
7、为了安全,需要删除安装目录
rm -rf /usr/local/nginx/html/poweradmin/install
现在你可以进入http://192.168.0.100/poweradmin页面,输入用户admin和执行安装程序时设置的密码进入管理界面。
输入正确的用户名和密码后,进入:
(4)添加A记录测试
1.添加主域
点击添加主域,在域名中输入51cto.com,点击添加域,就可以看到添加成功的提示
2.添加A记录
点击域列表,点击查看域。
在名称填入想要的名称,内容填入ip地址,点击添加记录,会有英文的成功提示
(5)重启powerdns服务
[root@tengine ~]# service pdns restart
Restarting PowerDNS authoritativenameserver: stopping and waiting..done
Starting PowerDNS authoritative nameserver:started
(6)在客户端查询
在客户端设置好dns服务器IP地址,通过nslookup命令进行查询
至此,整个powerdns搭建完成