[root@localhost ~]# yum install -y wget
[root@localhost ~]# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
[root@localhost ~]# rpm -ivh mysql-community-release-el7-5.noarch.rpm
[root@localhost ~]# wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
[root@localhost ~]# rpm -ivh epel-release-latest-7.noarch.rpm
[root@localhost ~]# yum install mysql mysql-devel mysql-server -y
[root@test-new ~]# systemctl enable mysql
[root@test-new ~]# service mysqld start
[root@test-new ~]# yum -y install pdns pdns-backend-mysql
[root@test-new ~]# mysql
mysql> CREATE DATABASE powerdns;
Query OK, 1 row affected (0.04 sec)
mysql> GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' IDENTIFIED BY 'wscl1996.';
Query OK, 0 rows affected (0.30 sec)
mysql> GRANT ALL ON powerdns.* TO 'powerdns'@'centos7.localdomain' IDENTIFIED BY 'wscl1996.';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.03 sec)
创建用于PowerDNS的表domains
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 BIGINT AUTO_INCREMENT,
domain_id INT DEFAULT NULL,
name VARCHAR(255) DEFAULT NULL,
type VARCHAR(10) DEFAULT NULL,
content VARCHAR(64000) DEFAULT NULL,
ttl INT DEFAULT NULL,
prio INT DEFAULT NULL,
change_date INT DEFAULT NULL,
disabled TINYINT(1) DEFAULT 0,
ordername VARCHAR(255) BINARY DEFAULT NULL,
auth TINYINT(1) DEFAULT 1,
PRIMARY KEY (id)
) Engine=InnoDB;
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
);
Query OK, 0 rows affected (0.02 sec)
CREATE TABLE comments (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
name VARCHAR(255) NOT NULL,
type VARCHAR(10) NOT NULL,
modified_at INT NOT NULL,
account VARCHAR(40) NOT NULL,
comment VARCHAR(64000) NOT NULL,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE INDEX comments_domain_id_idx ON comments (domain_id);
CREATE INDEX comments_name_type_idx ON comments (name, type);
CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);
CREATE TABLE domainmetadata (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
kind VARCHAR(32),
content TEXT,
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);
CREATE TABLE cryptokeys (
id INT AUTO_INCREMENT,
domain_id INT NOT NULL,
flags INT NOT NULL,
active BOOL,
content TEXT,
PRIMARY KEY(id)
) Engine=InnoDB;
CREATE INDEX domainidindex ON cryptokeys(domain_id);
CREATE TABLE tsigkeys (
id INT AUTO_INCREMENT,
name VARCHAR(255),
algorithm VARCHAR(50),
secret VARCHAR(255),
PRIMARY KEY (id)
) Engine=InnoDB;
CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);
flush privileges;
mysql> exit
[root@test-new ~]# vim /etc/pdns/pdns.conf
# launch Which backends to launch and order to query them in
#
# launch=bind
launch=gmysql
gmysql-host=localhost
gmysql-user=powerdns
gmysql-password=user-pass
gmysql-dbname=powerdns
[root@test-new ~]# systemctl enable pdns.service
[root@test-new ~]# systemctl start pdns.service
[root@test-new ~]# yum 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
[root@test-new yum.repos.d]# yum -y install php-pear-DB php-pear-MDB2-Driver-mysql
[root@test-new yum.repos.d]# systemctl enable httpd.service
[root@test-new yum.repos.d]# systemctl start httpd.service
[root@test-new yum.repos.d]# cd /var/www/html/
[root@test-new html]# wget http://downloads.sourceforge.net/project/poweradmin/poweradmin-2.1.7.tgz
[root@test-new html]# tar xf poweradmin-2.1.7.tgz
http://ip/poweradmin-2.1.7/install/
用户名(Username) - PowerAdmin用户名。
密码(Password) – 上述用户的密码。
主机管理员(Hostmaster) -
当创建SOA记录而你没有指定主机管理员时,该值会被用作默认值。
主域名服务器 - 该值在创建新的DNS区域时会被用于作为主域名服务器。
辅域名服务器 – 该值在创建新的DNS区域时会被用于作为辅域名服务器。
[root@test-new html]# mysql
mysql> GRANT SELECT, INSERT, UPDATE, DELETE
-> ON powerdns.*
-> TO 'kongbai'@'localhost'
-> IDENTIFIED BY 'kb1996';
Query OK, 0 rows affected (0.00 sec)
[root@test-new html]# vim /var/www/html/poweradmin-2.1.7/inc/config.inc.php
从PowerAdmin的根目录中移除“install”文件夹
[root@test-new html]# rm -rf /var/www/html/poweradmin-2.1.7/install/
http://ip/poweradmin-2.1.7/
ns1.example.net”:域名服务器,该值在创建新的DNS区域时会被用于作为主域名服务器
kongbai.example.net :主机管理员(Hostmaster),当创建SOA记录而你没有指定主机管理员时,该值会被用作默认值
2019021402 :创建时间
28800 :刷新时间
7200 :重新尝试启动时间
604800: 过期时间
86400:生存时间
soa:SOA记录设置一些数据版本和更新以及过期时间的信息