Panel administratif ringan berbasis PHP yang dirancang khusus untuk mengelola virtual hosts Nginx dan aplikasi web (PHP, Node.js, Python) di lingkungan Ubuntu PRoot (Termux). Panel ini beroperasi menggunakan file JSON datar (data.json) sebagai databasenya, sehingga sangat ringan, portabel, dan cocok untuk perangkat mobile maupun server dengan memori terbatas.
- Nginx Manager: Menambahkan, mengedit, dan menghapus virtual host Nginx (.conf) secara otomatis.
- Multi-Language Support: Mendukung peng-host-an situs berbasis PHP, Node.js, dan Python.
- Auto Port Allocation: Pencarian dan pengalokasian port otomatis secara aman (menggunakan
nc -zvsocket ping) untuk mencegah tabrakan port antar aplikasi (terutama untuk Node.js dan Python), kebal terhadap kebijakan blokir port-reading pada Android terbaru. - Service Controller: Dilengkapi tombol-tombol pintas untuk me-restart layanan Nginx dan PHP-FPM secara langsung melalui antarmuka panel.
- Multi-Server Sync (
sync.py): Script otomatisasi Python berbasis SSH/SFTP (paramiko) untuk mendistribusikan pembaruan panel secara massal ke semua node server sekaligus. - Role-Based Access Control: Sistem otentikasi admin yang dibagi berdasarkan peran (
superadmin) dan area spesifik untuk setiap pengguna.
Berikut adalah struktur file akurat dari project ini:
index.php: Core router, pengontrol utama panel, dan tempat pemrosesan seluruh logika backend dan frontend panel.data.json: Basis data utama. Menyimpan credentials administrator (di-hash menggunakan bcrypt), daftar situs web yang terdaftar, area, dan alokasi port berikutnya.style.css: File styling (CSS) untuk mempercantik dan merapikan antarmuka antarmuka panel agar lebih modern dan responsive.sync.py: Script otomatisasi penyebaran (Deployment). Digunakan untuk melakukan sinkronisasi fileindex.phpdan folderviewske beberapa server PRoot melalui protokol SSH.views/: Direktori yang berisi file-file template HTML/PHP yang dirender olehindex.php(seperti dashboard, health check, atau add site).generated/: Direktori penampungan (output) untuk file konfigurasi atau script yang dihasilkan (generated) oleh panel sebelum dikerjakan oleh sistem.api_code.txt: Berisi snippet kode referensi atau blok API yang diakses panel..htaccess: File konfigurasi pelindung directory-listing dan pengaturan rewrite rule untuk web server (opsional jika berjalan di bawah Apache pada environment lokal).
Panel ini dioptimalkan untuk lingkungan:
- OS: Ubuntu PRoot di dalam Termux (Android).
- Web Server: Nginx (disarankan dikonfigurasi berjalan di background menggunakan utilitas
nohup). - PHP: Versi 8.x (Telah diuji coba di PHP 8.3 dan 8.5) dengan fastcgi-php.
- Akses: Lingkungan Android disarankan memiliki netcat (
nc) dan socat/ss terpasang untuk membantu deteksi port (walau logika utama telah disesuaikan agar tahan banting dari sandbox Android 10+).
Kata sandi administrator dalam file data.json diamankan menggunakan metode hashing satu arah Bcrypt. Tidak mungkin untuk memulihkan kata sandi yang telah dibuat. Jika kata sandi terlupa, kata sandi harus di-reset secara manual menggunakan script PHP eksternal atau di-generate ulang menggunakan fungsi password_hash().