Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. {{indexmenu_n>020}} ====== Poweradmin : Web UI untuk PowerDNS server ====== ==== Prerequisite ==== * **[[install-postgres| PowerDNS Server]]** * Saparate Machine untuk poweradmin (Optional) ==== Install Dependencies ==== === Update repository: === <code bash> apt update </code> === Install PHP + Webserver-Nginx === <code bash> apt install -y nginx php php-fpm php-pgsql php-mbstring php-xml php-curl php-intl gettext wget </code> ==== Download Latest Release Poweradmin ==== === Download Poweradmin === Cek versi latest di: https://github.com/poweradmin/poweradmin/releases <code bash> cd /tmp wget https://github.com/poweradmin/poweradmin/archive/refs/tags/v4.1.1.tar.gz </code> === Extract dan pindahkan Files === <code bash> tar -xzvf v4.1.1.tar.gz sudo mv poweradmin-4.1.1 /var/www/poweradmin sudo chown -R www-data:www-data /var/www/poweradmin sudo chmod -R 755 /var/www/poweradmin </code> ==== Konfigurasi Postgres Database Allow Remote Connection (Optional) ==== Hanya jika poweradmin berada di machine yang berbeda === Edit postgresql.conf — Untuk allow listening pada all interfaces: === <code bash> sudo nano /etc/postgresql/*/main/postgresql.conf </code> Ubah: <code bash> listen_addresses = 'localhost' </code> Ke: <code bash> listen_addresses = '*' </code> === Edit pg_hba.conf — Untuk allow poweradmin host: === <code bash> nano /etc/postgresql/*/main/pg_hba.con </code> Pada bagian kongigurasi host tambahkan line: <code bash> host powerdns pdns <poweradmin-ip>/32 md5 # Dapat dihapus nanti setelah init powerdns host powerdns poweradmin <poweradmin-ip>/32 md5 </code> Ganti <poweradmin-ip> Dengan IP PowerDNS Server ==== Konfigurasi Webserver (Nginx) ==== === Create Simple HTTP === <code bash> sudo nano /etc/nginx/sites-available/poweradmin </code> <code nginx> server { listen 8081; server_name _; # your-domain.com or server IP root /var/www/poweradmin; index index.php index.html; access_log /var/log/nginx/poweradmin_access.log; error_log /var/log/nginx/poweradmin_error.log; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.2-fpm.sock; # adjust PHP version fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.ht { deny all; } } </code> === Enable Nginx Sites === <code bash> sudo ln -s /etc/nginx/sites-available/poweradmin /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx </code> ==== Run the Web Installer ==== === Buka Installer pada browser http://your-server-ip:8081/install/ === {{ :deployment:network:powerdns:padmin1.png?nolink |}} === Setting Database connection === Powerdns perlu akses ke powerdns database dengan untuk mengenerate tables yang diperlukan, Berikan creds user/roles yang pdns yang kita buat sebelumnya. (Ini hanya diperlukan pada awal init poweradmin) {{ :deployment:network:powerdns:padmin-database.png?nolink |}} === Setting Database user untuk poweradmin === Sekarang kita akan mengenerate user database untuk poweradmin. sesuaikan dengan user yang kita allow pada konfigurasi di atas. {{ :deployment:network:powerdns:padmin-database2.png?nolink&600 |}} {{ :deployment:network:powerdns:padmin-database3.png?nolink&600 |}} Kita akan diberikan sql file untuk di jalankan pada powerdns server. Cukup jalankan ini saja pada powerdns server. <code sql> sudo -u postgres psql -d powerdns -c "CREATE USER poweradmin WITH PASSWORD 'poweradmin.fopens.net';;" sudo -u postgres psql -d powerdns -c "GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO poweradmin;" sudo -u postgres psql -d powerdns -c "GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO poweradmin;" </code> === Setting /config/setting.php === Setelah nya poweradmin akan memberikan ''setting.php'' yang dapat disalin di file webserver poweradmin {{ :deployment:network:powerdns:padmin-settingphp.png?nolink |}} <code bash> nano /var/www/poweradmin/config/settings.php </code> dan salin sesuai yang digenerate oleh installer poweradmin. === Delete file installer pada webserver === {{ :deployment:network:powerdns:padmin-laststep.png?nolink |}} Selanjutnya adallah tinggal delete file installer pada webserver <code bash> rm /var/www/poweradmin/install/ -rf </code> === Poweradmin === {{ :deployment:network:powerdns:padmin-result.png?nolink |}} deployment/network/powerdns/poweradmin.txt Last modified: 2026/03/01 17:37by ilyasa