CentOS-5系统安装PowerDNS服务器的详细过程
PowerDNS简介
PowerDNS是高性能的域名服务器,除了支持普通的BIND配置文件,PowerDNS还可以从 MySQL,Oracle,PostgreSQL等的数据库读取数据。PowerDNS安装了Poweradmin,能实现Web管理DNS记录,非常的 方便。本文我们以MySQL为后端数据库和Poweradmin网页管理DNS,在CentOS-5安装PowerDNS。
安装MySQL
yum -y install mysql mysql-server
设置mysql开机自启并启动mysql
chkconfig --levels 235 mysqld on
/etc/init.d/mysqld start
修改mysql root密码:
mysqladmin -u root password yourrootsqlpassword
安装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管理。
安装Poweradmin
Poweradmin运行在PHP环境中,我们现在配置Web环境。
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
设置apache自启动,并启动apache。
chkconfig --levels 235 httpd on
/etc/init.d/httpd start
Poweradmin还需要安装两个PEAR软件包。
yum install php-pear-DB php-pear-MDB2-Driver-mysql
现在Poweradmin所需的环境已经配置完成,我们将把Poweradmin安装在目录/var/www/html,这是apache默认的文档根目录。
到https://www.poweradmin.org/trac/wiki/GettingPoweradmin找到最新的版本下载:
cd /tmp
wget
https://www.poweradmin.org/download/poweradmin-2.1.5.tgz
然后安装在/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/
现在打开浏览器运行安装程序(如:http://www.centos.bz/poweradmin/install或http://192.168.0.100/poweradmin/install)。
1、选择语言为英文,并点击Go to step 2
"http://img10.3lian.com/d0214/file/2011/10/11/62fa53cb68d69279fbf11ec4fe835145.jpg"
>
2、点击“Go to step
3”到安装的第三步,填入数据库详细信息。输入root用户和密码,和输入Poweradmin的admin用户的密码。
"http://img10.3lian.com/d0214/file/2011/10/11/ee11de4c5f198170952b99dc1770bd98.jpg"
>
3、点击下一步,填入在安装powerdns那一步所创建的power_admin
mysql用户的信息,并且填入域名服务器地址:
"http://img10.3lian.com/d0214/file/2011/10/11/72ab763b5ca77942df7d81b845930e6d.jpg"
>
4、下一步是需要执行mysql语句,我们不需要执行了,因为前面我们已经执行过了,直接点击下一步即可。
"http://img10.3lian.com/d0214/file/2011/10/11/7fe85622f6acc479b21cfcbb0a21641a.jpg"
>
5、继续点击下一步。
"http://img10.3lian.com/d0214/file/2011/10/11/a2a6ad666829511451a53c04caeab774.jpg"
>
6、现在poweradmin安装完成。
"http://img10.3lian.com/d0214/file/2011/10/11/421b07a5041825d2cc21ed596e5de804.jpg"
>
7、为了安全,需要删除安装目录。
rm -fr /var/www/html/poweradmin/install/
现在你可以进入http://www.centos.bz/poweradmin或者http://192.168.0.100/poweradmin页面,输入用户admin和执行安装程序时设置的密码进入管理界面。
如果您的问题仍未解决,还可以加入服务器在线技术交流QQ群:8017413寻求帮助。