본문 바로가기
SW/DNS

Centos7 - PowerAdmin 설치 ( pdns + poweradmin )

by bigju 2021. 10. 8.

구성 환경

OS : Centos 7.9

tool : gns3, VMware

APM :  Apache/2.4.6, mysql  Ver 15.1 Distrib 10.1.48-MariaDB, PHP 7.0.33 

 


도메인을 구매 후 홈페이지를 연결하기 위해서는 레코드 값 연결이 필요합니다.

여기서 레코드 값을 관리 하기 위해서는 네임서버를 만들어 관리해야 합니다.

 

네임서버 구축을 위해서는 BIND / PDNS 두 가지 설치 방법이 있습니다.

 

PDNS 설치 방법 정리입니다.


BIND 설치법: https://bigju.tistory.com/entry/Centos7-Bind-%EC%84%A4%EC%B9%98-DNS?category=890863 

 

Centos7 - Bind 설치 (DNS)

도메인을 구매 후 홈페이지를 연결 하기 위해서는 레코드 값 연결이 필요합니다. 여기서 레코드 값을 관리 하기 위해서는 네임서버를 만들어 관리 해야합니다. 네임서버 구축을 위해서는 BIND / P

tistory.bigju.co.kr


PowerAdmin을 설치하고 운용하시려고 하면 기본적으로 APM과 PDNS가 설치가 되어 있어야 합니다.

 

APM 설치 


YUM 설치 : https://bigju.tistory.com/entry/Centos-7-APM-YUM-%EC%84%A4%EC%B9%98?category=890550

 

Centos 7 APM YUM 설치

설치 환경 : CentOS Linux release 7.9.2009 (Core) ​ ​ # 기복적으로 필요한 라이브러리 확인 rpm -qa libjpeg* libpng* freetype* gd-* gcc gcc-c++ gdbm-devel libtermcap-devel rpm -qa libjpeg* libpng* fr..

tistory.bigju.co.kr

 

소스 설치 : https://bigju.tistory.com/entry/Centos7-APM-%EC%86%8C%EC%8A%A4-%EC%84%A4%EC%B9%98?category=890550 

 

Centos7 APM 소스 설치

설치 환경 : CentOS Linux release 7.9.2009 (Core), VMware ​ ​ 1. HTTPD 설치 ​ ​ # 필요 라이브러리 설치 ​ yum install -y wget yum install -y net-tools yum install -y gcc yum install -y gcc-c++ yu..

tistory.bigju.co.kr

 

PDNS 설치법 :  https://bigju.tistory.com/entry/Centos7-pdns-%EC%84%A4%EC%B9%98-%ED%95%98%EA%B8%B0

 

Centos7 - pdns 설치 하기

구성 환경 OS : Centos 7.9 tool : gns3, VMware APM : Apache/2.4.6, mysql  Ver 15.1 Distrib 10.1.48-MariaDB, PHP 7.0.33 도메인을 구매 후 홈페이지를 연결 하기 위해서는 레코드 값 연결이 필요합니다...

tistory.bigju.co.kr

 


* 구성도 

고객이 홈페이지를 열기위해 DNS서버를 통한 후 홈페이지가 있는 서버로 향한다.


1. POERADMIN 설치

cd /var/www/html

wget https://jaist.dl.sourceforge.net/project/poweradmin/poweradmin-2.1.7.tgz

tar xfz poweradmin-2.1.7.tgz

poweradmin-2.1.7.tgz
0.28MB

 

 

 

2. POWERADMIN 운영을 위한 DB 설정

 

mysql -u root -p 

use pdns;

MariaDB [pdns]> 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                    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 INDEX recordorder ON records (domain_id, ordername);


CREATE TABLE supermasters (
  ip                    VARCHAR(64) NOT NULL,
  nameserver            VARCHAR(255) NOT NULL,
  account               VARCHAR(40) NOT NULL,
  PRIMARY KEY (ip, nameserver)
) Engine=InnoDB;


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);

테이블 생성 확인

MariaDB [pdns]> show tables;
+----------------+
| Tables_in_pdns |
+----------------+
| comments       |
| cryptokeys     |
| domainmetadata |
| domains        |
| records        |
| supermasters   |
| tsigkeys       |
+----------------+
7 rows in set (0.001 sec)

exit

 

3. 웹 접속 설치 하기

http://IP/poweradmin-2.1.7/install

언어 선택

 

다음 
작성

 

GRANT ALL ON pdns.* TO 'pdns'@'localhost' IDENTIFIED BY '패스워드';

도메인설정
다음
권한부어

DB에서 GRANT ALL 계정 부여했으므로 넘어가도 됩니다.

먼저 작성 !

cd /var/www/html/poweradmin-2.1.7/inc

파일 이름 변경
mv config-me.inc.php config.inc.php


파일 정리

<이동>
cd /var/www/html/poweradmin-2.1.7

<동적 DNS공급 사용 적용>
cp install/htaccess.dist .htaccess

<스톨 파일 삭제>
rm -rf /var/www/html/poweradmin-2.1.7/install

 

4. WEB 접속! 

http://IP/poweradmin-2.1.7/

 

마스터존
마스터존
해당 부분으로 삭제 및 수정 가능 
레코드 추가 
MX레코드 추가 
최종 확인 !
dig 및 nslookup으로 설정 최종 확인 

5.  nslookup 없다?

yum install bind-utils -y

설치

 

bind에 비해 장점은 아무래도 GUI 환경에서 보이는 직관성에 있다. 

하지만 bind에 비해 많은 이슈를 자랑하고 있다.

 

 

 

BigJu

'SW > DNS' 카테고리의 다른 글

Centos7 - pdns 설치 하기  (0) 2021.10.08
Centos7 - Bind 설치 (DNS)  (0) 2021.10.07

댓글

메인으로가기


    

Big Ju

IT Engineer


항상 답을 위해 노력하는

엔지니어입니다.

 

 

    


 UP!