Skip to content

Releases: alsyundawy/PHP-PDNSManager

v1.0.1 — Enterprise PowerDNS Authoritative Control Plane

Choose a tag to compare

@alsyundawy alsyundawy released this 21 Sep 20:28

PHP-PDNSManager v1.0.1 — Enterprise PowerDNS Authoritative DNS Manager

PHP-PDNSManager v1.0.1 is a major enterprise feature delivery, production hardening, and quality assurance release. This release brings full Roadmap v1.1.0, v1.2.0, and v2.0.0 capabilities—including Multi-Server PowerDNS Cluster Management, Health Check & Latency Monitoring, DNS Zone Templating Engine, RFC 1035 BIND Zone File Import & Export, Cross-Zone Bulk Record Operations, Advanced Audit Trail Search & Export, Zero-Dependency GraphQL API, Signed HMAC-SHA256 Webhooks, Multi-Tenant RBAC Organizations, 100% Offline Asset Suite (Strict Zero CDN), VisualSubnetCalc Dark/Light theme engineering, and mobile anti-clipping viewport hardening for Xiaomi/Redmi/POCO/iOS devices.


🌟 Key Highlights & Architecture

  • Multi-PowerDNS Server Cluster Engine (pdns_servers): Manage multiple PowerDNS authoritative server nodes and clusters with dynamic routing, active status toggling, default cluster failover, real-time connection latency testing, and dedicated REST endpoints (/servers, /api/v1/servers).
  • System & PowerDNS Health Check Monitoring (/health): Comprehensive telemetry dashboard and JSON endpoint inspecting PowerDNS daemon latency, database connection health, storage directory permissions, and PHP runtime health status.
  • DNS Zone Templating Engine (/templates): Blueprint library for preconfigured DNS profiles (Web Hosting, Google Workspace, Custom) with instant 1-click zone generation and record deployment (/templates/create, /api/v1/templates).
  • RFC 1035 BIND Zone File Import & Export: Pure PHP parser and serializer in App\Services\DNS\BindZoneService supporting $ORIGIN, $TTL, comments, and multi-line records. Web UI at /zones/import and standard .zone export at /zones/{id}/export-bind.
  • Cross-Zone Bulk Record Operations (/zones/bulk-records): Powerful administrative tool to search records across all authoritative zones with unified batch content/IP updates and mass deletion capabilities.
  • Advanced Audit Trail Search & CSV/JSON Export (/audit-logs): Granular system audit logging with multi-parameter filtering (action, user ID, date ranges, HTTP status codes) and raw CSV/JSON export endpoints (/audit-logs/export).
  • Zero-Dependency GraphQL API Endpoint (/graphql): Lightweight built-in GraphQL execution engine supporting flexible queries (zones, zone, servers, health, templates, auditLogs) and mutations (createZone, deleteZone).
  • HMAC-SHA256 Signed Webhook Dispatch System (webhooks): Real-time event notifications on zone and record lifecycle events dispatched with cryptographic X-PDNS-Signature headers and delivery tracking.
  • Multi-Tenant RBAC & Organizations: Multi-tenant data structures (organizations, organization_user, zone_organizations) and zone-level tenant isolation via OrganizationService.
  • 100% Offline Asset Suite (Strict Zero CDN): Zero external CDN dependencies. Bundled local assets for Bootstrap 5.3.3, Font Awesome 6.5.2, jQuery 3.7.1, and Chart.js 4.4.4 UMD for air-gapped and sovereign network compliance.
  • VisualSubnetCalc Dark/Light Theme System: Slate dark mode palette (#0f172a to #1e293b) with glassmorphism, electric blue/cyan accents, and clean light mode with automatic OS preference detection and localStorage persistence.
  • HyperOS, MIUI & iOS Mobile Viewport Hardening: Engineered for compact viewports and dynamic mobile browser chrome (Xiaomi Redmi, POCO, iPhone dynamic island) using 100svh/100dvh, safe-area-inset padding, and min-width: 0 flex/grid constraints to prevent clipping and horizontal scrolling.
  • 100% Quality & Static Analysis Compliance: Zero errors across PHPStan (Level 5), Psalm, PHP_CodeSniffer (PSR-12), PHP-CS-Fixer, GitHub Code Scanning, SonarLint, and Trunk linter suites. All 21 PHPUnit tests passing with 62 assertions.

🚀 What's Included in v1.0.1

  • Enterprise DNS & Operations:
    • Multi-server cluster management with latency testing (/servers).
    • RFC 1035 BIND zone file import and export (/zones/import, /zones/{id}/export-bind).
    • DNS zone templating with one-click provisioning (/templates).
    • Cross-zone bulk record batch update and deletion (/zones/bulk-records).
    • Native, Master, and Slave zone management with automatic SOA serial incrementation (YYYYMMDDNN).
    • Comprehensive DNS record support (A, AAAA, CNAME, MX, TXT, NS, SRV, CAA, PTR).
    • Automated DNSSEC cryptographic key management (KSK / ZSK generation and DS record extraction).
  • Security & Identity:
    • Two-Factor Authentication (TOTP RFC 6238) with recovery workflows.
    • Multi-tenant organizations and zone access partitioning.
    • Webhook dispatch engine with HMAC-SHA256 payload signing (/webhooks).
    • Scoped API tokens with expiration and instant revocation.
    • Granular RBAC permissions with audit logging and session fixation protection.
    • Zero-vulnerability status across GitHub Code Scanning and SonarLint security checks.
  • Reliability & System Administration:
    • System health check monitoring dashboard (/health).
    • Advanced audit log search with multi-format CSV and JSON export (/audit-logs).
    • Comprehensive production deployment and PowerDNS authoritative server cluster guide (TUTORIAL.md).
    • Technical architecture notes and design documentation (DOCNOTE.md).
  • Codebase & Architecture Refinements:
    • Pure PSR-17/PSR-7 request and response handling across all middleware and controllers.
    • Zero-dependency GraphQL endpoint (/graphql).
    • Upgraded GitHub Actions CI/CD workflows to latest verified runner releases and commit SHAs.

📦 Quick Start & Installation

# 1. Clone repository
git clone https://github.com/alsyundawy/PHP-PDNSManager.git
cd PHP-PDNSManager

# 2. Checkout v1.0.1 release tag
git checkout v1.0.1

# 3. Install dependencies
composer install --no-dev --optimize-autoloader

# 4. Environment configuration
cp .env.example .env

# 5. Database setup & migrations
php bin/migrate.php
php bin/seed.php

# 6. Run Web Server
php -S 0.0.0.0:8000 -t public

For complete deployment guides with PowerDNS Authoritative Server, MariaDB/MySQL clustering, DNSSEC automation, and high-availability operations, see TUTORIAL.md and DOCNOTE.md.