메뉴 닫기

power DNS 설치 및 설정

powerDNS는 zone파일의 형식을 DB화 관리 하여 간편하게 관리 할 수있게 해주는 프로그램 입니다.

1. 설치
# yum install pdns pdns-backend-mysql pdns-recursor
 
 
2. DB 생성
mysql 에 root 관리자로 로그인하여 DB를 생성 합니다.
 
# mysql -u root -p
Enter password: (패스워드 입력)
 
mysql> create database powerdns;
mysql> grant all privileges on powerdns.* to powerdns@localhost identified by ‘1234@pass’;
mysql> flush privileges;
mysql> exit
 
# vi pdns.sql
 
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)
) Engine=InnoDB;

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(10) DEFAULT NULL,
  content         VARCHAR(64000) DEFAULT NULL,
  ttl             INT DEFAULT NULL,
  prio            INT DEFAULT NULL,
  change_date     INT DEFAULT NULL,
  primary key(id)
) Engine=InnoDB;

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
) Engine=InnoDB;

 
# mysql -p powerdns < pdns.sql
Enter password: (password 입력 )
 
3. 파일설정
# vi /etc/pdns/pdns.conf
 

// 기본으로 주석 되어있는 부분입니다. 주석을 해제하여 해당 값으로 변경합니다.

allow-recursion=127.0.0.1,192.168.10.2    //localhost  서버 ip 입력
config-dir=/etc/pdns

daemon=yes

disable-axfr=yes

guardian=yes

launch=gmysql

local-port=53

module-dir=/usr/lib/pdns    // 64bit 는 /usr/lib64/pdns로 설정 합니다.

recursor=168.126.63.1
setgid=pdns

setuid=pdns
socket-dir=/var/run

version-string=powerdns

 

//아래 부분을 추가

gmysql-host=localhost
gmysql-user=powerdns
gmysql-password=1234@pass
gmysql-dbname=powerdns

gmysql-port=3306
gmysql-socket=/tmp/mysql.sock    

4 실행
# /etc/init.d/pdns start
 
* 아래는 기본 쿼리문 입니다.
mysql> use powerdns;
mysql> INSERT INTO `domains` VALUES (1,’youmust.co.kr’,”,NULL,’MASTER’,1,NULL);
mysql> INSERT INTO `records` VALUES (1,1,’youmust.co.kr’,’MX’,’mail.youmust.co.kr’,300,10,1267002606);
mysql> INSERT INTO `records` VALUES (2,1,’mail.youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (3,1,’youmust.co.kr’,’NS’,’ns.youmust.co.kr’,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (4,1,’youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (5,1,’youmust.co.kr’,’SOA’,’ns.youmust.co.kr dnsmaster@youmust.co.kr2011120800 10800 3600 432000 300′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (6,1,’www.youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (7,1,’www1.youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (8,1,’www2.youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
mysql> INSERT INTO `records` VALUES (9,1,’ns.youmust.co.kr’,’A’,’183.168.10.1′,300,0,1267002606);
 
5. PowerADMIN 설치 ( 웹에서 관리 할 수 있는 프로그램)
# tar xvzf poweradmin-2.1.6.tgz
# mv poweradmin-2.1.6 /home/youmust/xe/poweradmin
# cd /home/youmust/xe/poweradmin/inc
# cp -arp config-me.inc.php config.inc.php
 
웹브라우저에서 PowerADMIN 의 설치 디렉토리로 접속합니다.
 
끝.
 
 
[polldaddy rating=”7739789″]
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x