DNS(Domain Name Server,域名服務器)是進行域名(domain name)和與之相對應的IP地址 (IP address)轉換的服務器。在不少公司內部,都本身搭建dns服務器來知足業務須要。php
下面記錄在centos下搭建powerdns和poweradmin作web管理node
powerdns官網:https://repo.powerdns.com/mysql
首先安裝lnmp環境,或者lamp環境,均可以,這裏就很少介紹如何安裝了。linux
目前pdns更新到4.X版本,CentOS6安裝方法:nginx
yum install epel-release yum-plugin-priorities && curl -o /etc/yum.repos.d/powerdns-auth-40.repo https://repo.powerdns.com/repo-files/centos-auth-40.repo && yum install pdns pdns-backend-mysqlweb
CentO S7安裝方法:sql
yum install epel-release yum-plugin-priorities && curl -o /etc/yum.repos.d/powerdns-auth-40.repo https://repo.powerdns.com/repo-files/centos-auth-40.repo && yum install pdns pdns-backend-mysqlshell
安裝完成後,登錄mysql,建立PowerDNS所需的數據庫及表數據庫
create database dnsdb;apache
創建pdnsuser用戶,用於powerdns服務訪問pdnsdb數據庫
grant all on dnsdb.* to 'pdnsuser'@'localhost' identified by 'pdnsuser';
flush privileges;
打開dnsdb數據庫
use dnsdb;
創建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 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 TABLE supermasters (
-> ip VARCHAR(25) NOT NULL,
-> nameserver VARCHAR(255) NOT NULL,
-> account VARCHAR(40) DEFAULT NULL
-> );
建立好以後退出mysql
修改pdns配置,在/etc/pdns/pdns.conf
在文件最後添加以下配置:
launch=gmysql
gmysql-host=127.0.0.1
gmysql-user=pdnsuser
gmysql-password=pdnsuser
gmysql-dbname=dnsdb
添加完成後保存,重啓pdns服務
/etc/init.d/pdns restart
下面安裝poweradmin,poweradmin須要pear的支持,因此須要首先安裝pear,有的系統能夠經過直接
yum install php-pear-DB php-pear-MDB2-Driver-mysql安裝
有的系統須要先安裝php-pear,而後經過pear安裝
yum install php-pear
pear install DB
pear install pear/MDB2
安裝好以後下載poweradmin
wget https://nchc.dl.sourceforge.net/project/poweradmin/poweradmin-2.1.7.tgz
目前最新版本是2.1.7
tar -zxvf poweradmin-2.1.7.tgz解壓
mv poweradmin-2.1.7 poweradmin
在nginx或者apache中添加虛擬主機,而後經過http://192.168.30.128/poweradmin/install
訪問,便可開始安裝,
下面注意是添加mysqlroot帳戶
這裏是添加dnsdb的帳戶
而後最後兩頁是提示頁,完成以後會在/inc下面生產一個config.inc.php
而後刪除install目錄
就能夠訪問poweradmin了
登錄以後的頁面
提示:若是在第七部完成後,沒有在inc目錄下生產config.inc.php,能夠手動建立,以後把第七部的提示信息複製粘貼進去就能夠了。
數據庫建立參考:https://doc.powerdns.com/md/authoritative/backend-generic-mysql/
【nginx優化】使用socket方式連接Nginx優化php-fpm性能
【環境配置】Postfix2.10+ssl+dovecot搭建郵件服務器
【實踐分享】Linode VPS和Vultr VPS使用體檢對比
本文分享自微信公衆號 - 運維研習社()。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。