Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| deployment:network:powerdns:install-postgres [2026/02/27 01:28] – [Konfigurasi PowerDNS Database Conection] ilyasa | deployment:network:powerdns:install-postgres [2026/02/27 20:04] (current) – [Konfigurasi PowerDNS Database Conection] ilyasa | ||
|---|---|---|---|
| Line 23: | Line 23: | ||
| === Buat database dan user: === | === Buat database dan user: === | ||
| <code sql> | <code sql> | ||
| - | sudo -u postgres psql << | + | sudo -u postgres psql -c "CREATE USER pdns WITH PASSWORD 'PasswordYangKuat';" |
| - | CREATE DATABASE powerdns; | + | sudo -u postgres psql -c " |
| - | CREATE USER pdns WITH PASSWORD 'passwordku'; | + | |
| - | ALTER DATABASE powerdns OWNER TO pdns; | + | |
| - | GRANT ALL PRIVILEGES ON DATABASE powerdns TO pdns; | + | |
| - | EOF | + | |
| </ | </ | ||
| === Import schema bawaan PowerDNS: === | === Import schema bawaan PowerDNS: === | ||
| <code bash> | <code bash> | ||
| - | sudo -u postgres psql powerdns | + | sudo -u postgres psql -d powerdns |
| </ | </ | ||
| Line 39: | Line 35: | ||
| === Grant Permission to user pdns: === | === Grant Permission to user pdns: === | ||
| <code sql> | <code sql> | ||
| - | sudo -u postgres psql powerdns | + | sudo -u postgres psql -d powerdns |
| - | GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO pdns; | + | sudo -u postgres psql -d powerdns -c "GRANT CREATE |
| - | GRANT ALL PRIVILEGES | + | |
| - | GRANT ALL PRIVILEGES ON SCHEMA public TO pdns; | + | |
| - | ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON TABLES TO pdns; | + | |
| - | ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON SEQUENCES TO pdns; | + | |
| - | EOF | + | |
| </ | </ | ||
| Line 95: | Line 86: | ||
| gpgsql-dbname=powerdns | gpgsql-dbname=powerdns | ||
| gpgsql-user=pdns | gpgsql-user=pdns | ||
| - | gpgsql-password=passwordku | + | gpgsql-password=PasswordYangKuat |
| </ | </ | ||
| === Restart Service === | === Restart Service === | ||
| Line 105: | Line 96: | ||
| - | {{indexmenu_n> | ||
| - | ====== PowerDNS : Installasi dengan posgresSQL Backend (Debian 12/13) ====== | ||
| - | |||
| - | ==== Install Paket ==== | ||
| - | |||
| - | === Update repository: === | ||
| - | <code bash> | ||
| - | apt update | ||
| - | </ | ||
| - | |||
| - | === Install PowerDNS Authoritative + PostgreSQL: === | ||
| - | <code bash> | ||
| - | apt install pdns-server pdns-backend-pgsql postgresql | ||
| - | </ | ||
| - | |||
| - | === Pastikan service PostgreSQL berjalan: === | ||
| - | <code bash> | ||
| - | systemctl status postgresql | ||
| - | </ | ||
| - | |||
| - | ==== Buat Database & User PostgreSQL ==== | ||
| - | |||
| - | === Buat database dan user: === | ||
| - | <code sql> | ||
| - | sudo -u postgres psql <<EOF | ||
| - | CREATE DATABASE powerdns; | ||
| - | CREATE USER pdns WITH PASSWORD ' | ||
| - | ALTER DATABASE powerdns OWNER TO pdns; | ||
| - | GRANT ALL PRIVILEGES ON DATABASE powerdns TO pdns; | ||
| - | EOF | ||
| - | </ | ||
| - | |||
| - | === Import schema bawaan PowerDNS: === | ||
| - | <code bash> | ||
| - | sudo -u postgres psql powerdns < / | ||
| - | </ | ||
| - | |||
| - | |||
| - | === Grant Permission to user pdns: === | ||
| - | <code sql> | ||
| - | sudo -u postgres psql powerdns <<EOF | ||
| - | GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO pdns; | ||
| - | GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO pdns; | ||
| - | GRANT ALL PRIVILEGES ON SCHEMA public TO pdns; | ||
| - | ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON TABLES TO pdns; | ||
| - | ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT ALL PRIVILEGES ON SEQUENCES TO pdns; | ||
| - | EOF | ||
| - | </ | ||
| - | |||
| - | === Cek tabel sudah dibuat: === | ||
| - | <code bash> | ||
| - | sudo -u postgres psql powerdns -c " | ||
| - | </ | ||
| - | |||
| - | |||
| - | ==== Konfigurasi PowerDNS conflict port dengan '' | ||
| - | Sometimes server linux terutama cloud images, menggunakan '' | ||
| - | |||
| - | === Disable systemd-resolved === | ||
| - | < | ||
| - | sudo systemctl disable systemd-resolved --now | ||
| - | </ | ||
| - | |||
| - | hapus stub resolv.conf: | ||
| - | < | ||
| - | sudo rm / | ||
| - | </ | ||
| - | |||
| - | buat manual resolv.conf: | ||
| - | < | ||
| - | sudo nano / | ||
| - | </ | ||
| - | Sesuaikan dengan dns server kalian: | ||
| - | Contoh: | ||
| - | <code bash> | ||
| - | nameserver 8.8.8.8 | ||
| - | nameserver 1.1.1.1 | ||
| - | </ | ||
| - | ==== Konfigurasi PowerDNS Database Conection ==== | ||
| - | |||
| - | |||
| - | === Hapus bind.conf dikarenakan kita menggunakan psql sebagai our backend === | ||
| - | <code bash> | ||
| - | rm / | ||
| - | </ | ||
| - | |||
| - | === Buat konfigurasi powerdns database connetion sesuai dengan database kita === | ||
| - | <code bash> | ||
| - | nano / | ||
| - | </ | ||
| - | <code bash> | ||
| - | launch=gpgsql | ||
| - | gpgsql-host=127.0.0.1 | ||
| - | gpgsql-port=5432 | ||
| - | gpgsql-dbname=powerdns | ||
| - | gpgsql-user=pdns | ||
| - | gpgsql-password=passwordku | ||
| - | </ | ||
| - | === Restart Service === | ||
| - | <code bash> | ||
| - | systemctl restart pdns | ||
| - | systemctl enable pdns | ||
| - | systemctl status pdns | ||
| - | </ | ||
| ==== Testing dengan pembuatan domain ==== | ==== Testing dengan pembuatan domain ==== | ||