PowerDNS: Instalasi di Ubuntu 18.04 dengan Percona
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Instalasi PowerDNS di Ubuntu 18.04
Persiapan
Edit
vi /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-security main universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-updates main universe multiverse deb [arch=amd64] http://repo.powerdns.com/ubuntu bionic-auth-41 main
Jalankan
sudo curl https://repo.powerdns.com/FD380FBB-pub.asc | sudo apt-key add - sudo apt update
Instalasi Percona
cd /usr/local/src wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb apt update apt -y install percona-server-server-5.7
Set password root percona, kalau masih dalam proses belajar bisa menggunakan 123456
Siapkan Database
sudo mysql -u root -h ::1 -p123456
Siapkan tabel
CREATE DATABASE powerdns; GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' \ IDENTIFIED BY 'ubuntu'; 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 UNSIGNED DEFAULT NULL, account VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; 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 CHARACTER SET 'latin1'; CREATE INDEX nametype_index ON records(name,type); CREATE INDEX domain_id ON records(domain_id); CREATE INDEX ordername ON records (ordername); CREATE TABLE supermasters ( ip VARCHAR(64) NOT NULL, nameserver VARCHAR(255) NOT NULL, account VARCHAR(40) CHARACTER SET 'utf8' NOT NULL, PRIMARY KEY (ip, nameserver) ) Engine=InnoDB CHARACTER SET 'latin1'; 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) CHARACTER SET 'utf8' DEFAULT NULL, comment TEXT CHARACTER SET 'utf8' NOT NULL, PRIMARY KEY (id) ) Engine=InnoDB CHARACTER SET 'latin1'; 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 CHARACTER SET 'latin1'; 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 CHARACTER SET 'latin1'; 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 CHARACTER SET 'latin1'; CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm); QUIT
Install PowerDNS
Disable systemd resolver, karena akan block port 53
sudo systemctl disable systemd-resolved sudo systemctl stop systemd-resolved sudo ls -lh /etc/resolv.conf sudo rm /etc/resolv.conf sudo echo "nameserver 8.8.8.8" > /etc/resolv.conf
Siapkan repo official PowerDNS
sudo su vi /etc/apt/sources.list
isi dengan
deb [arch=amd64] http://repo.powerdns.com/ubuntu bionic-auth-41 main
Lakukan
sudo su curl https://repo.powerdns.com/FD380FBB-pub.asc | sudo apt-key add - apt update apt install pdns-server pdns-backend-mysql
Jika ada pertanyaan configure the PowerDNS database with dbconfig-common, jawab No
Setup PowerDNS untuk pakai MySQL
Edit
vi /etc/powerdns/pdns.d/pdns.local.gmysql.conf
Isi dengan
# MySQL Configuration # Launch gmysql backend launch+=gmysql # gmysql parameters gmysql-host=localhost gmysql-port=3306 gmysql-dbname=powerdns gmysql-user=powerdns gmysql-password=ubuntu gmysql-dnssec=yes # gmysql-socket=
Restart
Restart
sudo systemctl restart pdns
Cek
Cek Status
sudo systemctl status pdns.service
Isinya kira-kira
● pdns.service - PowerDNS Authoritative Server Loaded: loaded (/lib/systemd/system/pdns.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2019-02-20 02:11:35 UTC; 10s ago Docs: man:pdns_server(1) man:pdns_control(1) https://doc.powerdns.com Main PID: 6676 (pdns_server) Tasks: 8 (limit: 4664) CGroup: /system.slice/pdns.service └─6676 /usr/sbin/pdns_server --guardian=no --daemon=no --disable-syslog --log-timestamp=no --write-pid=no Feb 20 02:11:34 vm pdns_server[6676]: PowerDNS Authoritative Server 4.1.6 (C) 2001-2018 PowerDNS.COM BV .. ..
Cek
sudo netstat -tap | grep pdns
Pastikan siap untuk IPv6 ( [::]:domain ),
tcp 0 0 0.0.0.0:domain 0.0.0.0:* LISTEN 6676/pdns_server tcp6 0 0 [::]:domain [::]:* LISTEN 6676/pdns_server