deployment:network:powerdns:install-postgres

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
deployment:network:powerdns:install-postgres [2026/02/26 17:01] – [Konfigurasi PowerDNS confilic port degan ''systemd-resolved''] ilyasadeployment:network:powerdns:install-postgres [2026/02/27 20:04] (current) – [Konfigurasi PowerDNS Database Conection] ilyasa
Line 20: Line 20:
  
 ==== Buat Database & User PostgreSQL ==== ==== Buat Database & User PostgreSQL ====
- 
-=== Masuk sebagai user postgres: === 
-<code bash> 
-sudo -u postgres psql 
-</code> 
  
 === Buat database dan user: === === Buat database dan user: ===
 <code sql> <code sql>
-CREATE DATABASE powerdns; +sudo -u postgres psql -c "CREATE USER pdns WITH PASSWORD 'PasswordYangKuat';" 
-CREATE USER pdns WITH PASSWORD 'passwordku'; +sudo -u postgres psql -c "CREATE DATABASE powerdns OWNER pdns;"
-ALTER DATABASE powerdns OWNER TO pdns; +
-GRANT ALL PRIVILEGES ON DATABASE powerdns TO pdns; +
-\q+
 </code> </code>
  
 === Import schema bawaan PowerDNS: === === Import schema bawaan PowerDNS: ===
 <code bash> <code bash>
-sudo -u postgres psql powerdns /usr/share/pdns-backend-pgsql/schema/schema.pgsql.sql+sudo -u postgres psql -d powerdns -c "SET ROLE pdns;" -f /usr/share/pdns-backend-pgsql/schema/schema.pgsql.sql 
 +</code> 
 + 
 + 
 +=== Grant Permission to user pdns: === 
 +<code sql> 
 +sudo -u postgres psql -d powerdns -c "ALTER SCHEMA public OWNER TO pdns;" 
 +sudo -u postgres psql -d powerdns -c "GRANT CREATE ON SCHEMA public TO pdns;"
 </code> </code>
  
Line 50: Line 49:
  
 === Disable systemd-resolved === === Disable systemd-resolved ===
 +<code>
 +sudo systemctl disable systemd-resolved --now
 +</code>
  
 +hapus stub resolv.conf:
 +<code>
 +sudo rm /etc/resolv.conf
 +</code>
 +
 +buat manual resolv.conf:
 +<code>
 +sudo nano /etc/resolv.conf
 +</code>
 +Sesuaikan dengan dns server kalian:
 +Contoh:
 +<code bash>
 +nameserver 8.8.8.8
 +nameserver 1.1.1.1
 +</code>
 ==== Konfigurasi PowerDNS Database Conection ==== ==== Konfigurasi PowerDNS Database Conection ====
  
Line 69: Line 86:
 gpgsql-dbname=powerdns gpgsql-dbname=powerdns
 gpgsql-user=pdns gpgsql-user=pdns
-gpgsql-password=passwordku+gpgsql-password=PasswordYangKuat
 </code> </code>
 === Restart Service === === Restart Service ===
Line 77: Line 94:
 systemctl status pdns systemctl status pdns
 </code> </code>
 +
 +
 +
 +==== Testing dengan pembuatan domain ====
 +=== Install tools ===
 +
 +<code bash>
 +apt install pdns-tools dnsutils -y
 +</code>
 +
 +=== Buat Zones dengan pdnsutil ===
 +
 +<code bash>
 +sudo pdnsutil create-zone test.local
 +</code>
 +
 +=== Tambahkan Recods ===
 +
 +<code bash>
 +# Add SOA record
 +sudo pdnsutil add-record test.local @ SOA "ns1.test.local. admin.test.local. 1 3600 900 604800 300"
 +
 +# Add NS record
 +sudo pdnsutil add-record test.local @ NS ns1.test.local
 +
 +# Add A record for nameserver
 +sudo pdnsutil add-record test.local ns1 A 192.168.1.1
 +
 +# Add A record for test host
 +sudo pdnsutil add-record test.local www A 192.168.1.10
 +
 +</code>
 +=== Verify Zones ===
 +
 +<code bash>
 +sudo pdnsutil list-zone test.local
 +</code>
 +
 +=== Check Zones ===
 +
 +<code bash>
 +sudo pdnsutil check-zone test.local
 +</code>
 +
 +=== Test DNS Query ===
 +
 +<code bash>
 +# Query your PowerDNS server directly
 +dig @127.0.0.1 www.test.local A
 +dig @127.0.0.1 test.local NS
 +dig @127.0.0.1 test.local SOA
 +</code>
 +
 +
 +
  • deployment/network/powerdns/install-postgres.1772100063.txt.gz
  • Last modified: 2026/02/26 17:01
  • by ilyasa