安裝PowerDNS

測試環境 : ubuntu 14.04

#apt-get update && apt-get upgrade -y

安裝MariaDB

先輸入KEY
#apt-key adv –recv-keys –keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db

加入MariaDB APT repository:
#add-apt-repository ‘deb http://ftp.kaist.ac.kr/mariadb/repo/5.5/ubuntu trusty main’

安裝DB及其他相關
#apt-get -y install libaio1 libdbd-mysql-perl libdbi-perl libmariadbclient18 libmysqlclient18 libnet-daemon-perl libplrpc-perl mariadb-client-5.5 mariadb-client-core-5.5 mariadb-common mysql-common mariadb-server mariadb-server-5.5 mariadb-server-core-5.5

過程中會輸入資料庫的root密碼跟其他詢問(省略)

設定資料庫
#mysql_secure_installation

Change the root password? [Y/n] n
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

先停掉資料庫
#service mysql stop

如果不是乾淨安裝要記得
#rm -f /var/lib/mysql/ib_logfile*

編輯設定檔案
#vi /etc/mysql/my.cnf
找InnoDB部分
編輯成這樣子
# * InnoDB
#
# InnoDB is enabled by default with a 10MB datafile in /var/lib/mysql/.
# Read the manual for more InnoDB related options. There are many!

innodb_log_file_size = 64M

#
# * Security Features

然後啟動資料庫
#service mysql start

新增初始資料庫及帳號等,先進入資料庫
#mysql -u root -p

下面一大段用剪貼的吧,記得改掉中文字的部分
======================================================================================
CREATE DATABASE powerdns;
GRANT ALL ON powerdns.* TO ‘powerdns_user’@’localhost’ IDENTIFIED BY ‘密碼’;
FLUSH PRIVILEGES;
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
);
quit;
======================================================================================




安裝PowerDNS
#apt-get install -y pdns-server pdns-backend-mysql
這邊如果出問題的話可以試試apt-get -f purge -y mysql-client

出現MYSQL詢問視窗,Configure database for pdns-backedn-mysql with dbconfig-commom?
這邊選擇

把以前的老資料清除
#rm /etc/powerdns/pdns.d/*

新增設定
#vi /etc/powerdns/pdns.d/pdns.local.gmysql.conf
編輯成以下內容
============================================================
# MySQL Configuration file

launch=gmysql

gmysql-host=localhost
gmysql-dbname=powerdns
gmysql-user=powerdns_user
gmysql-password=powerdns_user_password
============================================================




啟動服務
#service pdns restart

檢查服務狀態
#netstat -tap | grep pdns

安裝Poweradmin
# apt-get install -y apache2 gettext libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-gd php-pear php5-imap php5-ming php5-mysql php5-xmlrpc php5-mhash php5-mcrypt

安裝PEAR
#pear install DB

(若版本不支援,可以像這樣指定安裝版本 #pear install PEAR-1.10.0 )

#pear install pear/MDB2#mysql

啟動Mcrypt:
#php5enmod mcrypt

重啟WEB
#service apache2 restart

回到家目錄
#cd ~

取回安裝程式碼
#wget https://github.com/downloads/poweradmin/poweradmin/poweradmin-2.1.6.tgz
#tar xvzf poweradmin-2.1.6.tgz
把安裝碼搬到網站跟目錄下面
#mv poweradmin-2.1.6 /var/www/html/poweradmin

產生一個專用設定檔案
#touch /var/www/html/poweradmin/inc/config.inc.php
#chown -R www-data:www-data /var/www/html/poweradmin/

開瀏覽器來進行安裝
http://IP或網域/poweradmin/install/

依指示裝到STEP3的時候
注意Poweradmin administrator password:這個是後面網頁介面上使用的密碼,他的帳號會是admin
執行到STEP7的時候就是完成了

回到安裝主機這邊
記得移除安裝目錄(資安考量)
#rm -rf /var/www/html/poweradmin/install/

看看有沒有要針對這個做啥設定,他的設定是在 /var/www/html/poweradmin/inc/config.inc.php

再來就可以用 http://IP或域名/poweradmin/ 來登入使用了