docs(wiki): halaman awal — instalasi, konfigurasi, FAQ, troubleshooting

oxpoe
2026-11-05 06:27:51 +07:00
commit 3ca4b32cfd
5 changed files with 195 additions and 0 deletions

22
FAQ.md Normal file

@@ -0,0 +1,22 @@
# FAQ
**Apakah perlu kode aktivasi?**
Tidak. Semua menu sudah terbuka. Pengaturan sidebar hanya untuk menampilkan/menyembunyikan menu.
**Login pelanggan pakai apa?**
ID Pelanggan (mis. `SKY-12345`) atau nomor WhatsApp yang terdaftar.
**Kenapa menu Update tidak muncul?**
Hanya tampil pada instalasi yang punya folder `.git`. Instalasi container melakukan update lewat rebuild image.
**Kenapa sertifikat HTTPS tidak valid?**
Bisa karena Caddy memakai internal CA, atau sertifikat belum terbit. Periksa konfigurasi TLS di reverse proxy.
**Domain internal tidak resolve?**
Pastikan klien memakai DNS internal (Technitium), DoH browser dimatikan, dan cache DNS sudah di-flush.
**Bagaimana backup?**
Menu **Sistem → Backup** (SQLite). Backup otomatis juga tersedia lewat cron.
**Bahasa Indonesia/English?**
Bisa diganti dari UI (switcher ID/EN).

31
Home.md Normal file

@@ -0,0 +1,31 @@
# OPEN-ISP Wiki
Dokumentasi untuk **OPEN-ISP** — sistem billing & manajemen ISP (fiber optic), open source dan self-hosted.
## Mulai di sini
- [[Instalasi]] — kebutuhan, instalasi, menjalankan aplikasi
- [[Konfigurasi]] — MikroTik, OLT, GenieACS, RADIUS, WhatsApp/Telegram, AI, update
- [[FAQ]] — pertanyaan yang sering muncul
- [[Troubleshooting]] — masalah umum dan solusinya
## Repositori
- Gitea: <https://gitea.oxpoe.xyz/oxpoe/open-isp>
- Forgejo: <https://forgejo.oxpoe.xyz/oxpoe/open-isp>
- Rilis & unduhan: tab **Releases** di salah satu repositori di atas
## Dokumentasi di repo
- `README.md` — gambaran fitur
- `CHANGELOG.md` — riwayat perubahan
- `docs/QUICK_REFERENCE.md` — referensi cepat
- `docs/ADMIN_SETTINGS_USAGE.md` — panduan pengaturan admin
- `docs/ROUTER_CONNECTION_FLOW.md` — alur koneksi router
- `docs/RADIUS_MIKROTIK_INTEGRATION.md` — integrasi RADIUS
- `docs/DATABASE_SCHEMA.md` — skema database
- `docs/screenshots/` — tangkapan layar
## Lisensi
ISC. Berdasarkan base code [alijayanet/billing-rtrw](https://github.com/alijayanet/billing-rtrw).

61
Instalasi.md Normal file

@@ -0,0 +1,61 @@
# Instalasi
## Kebutuhan
- Linux (x86_64/arm64) dengan **Node.js 22+**
- SQLite (bawaan, tanpa server terpisah)
- MikroTik RouterOS 7 (API port 8728/8729) untuk fitur jaringan
- Opsional: GenieACS/ACS, OLT (SNMP/CLI), RADIUS
## Dari source
```bash
git clone https://gitea.oxpoe.xyz/oxpoe/open-isp.git
cd open-isp
npm install
cp env-example.txt .env # sesuaikan bila perlu
node app-customer.js
```
Aplikasi berjalan di `http://localhost:3001` (atau `PORT` yang di-set).
## Data demo
```bash
node scripts/seed-demo.js
```
Login admin hasil seed: `admin` / `demo-isp123`.
## Docker
```bash
docker compose up -d
```
## Systemd (produksi)
Contoh unit:
```ini
[Unit]
Description=OPEN-ISP
After=network.target
[Service]
WorkingDirectory=/opt/open-isp
ExecStart=/usr/bin/node app-customer.js
Restart=always
Environment=PORT=3001
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
```
## Setelah instalasi
1. Login admin → ganti password di **Pengaturan**.
2. Atur `app_url`/`public_base_url` agar tautan WhatsApp benar.
3. Tambahkan router MikroTik, paket, dan pelanggan.
4. (Opsional) atur notifikasi WhatsApp/Telegram dan AI di **Pengaturan**.

45
Konfigurasi.md Normal file

@@ -0,0 +1,45 @@
# Konfigurasi
Semua pengaturan admin ada di menu **Pengaturan**.
## MikroTik
- Tambah router di **Jaringan → MikroTik** (host, port 8728/8729, user, password).
- Aktifkan service `api` atau `api-ssl` di RouterOS.
- Dukungan RouterOS 7 (API + TLS, sertifikat self-signed diperbolehkan).
## Paket & pelanggan
- Buat paket (harga, kecepatan, FUP) lalu daftarkan pelanggan.
- Profil PPPoE mengikuti nama paket; profil isolir dapat diatur terpisah.
## GenieACS / ACS
- **Jaringan → GenieACS Pro**: isi URL, user, password.
- Mendukung beberapa server ACS sekaligus.
## OLT
- **Jaringan → Manajemen OLT**: Hioso/HSGQ via SNMP; ZTE/Huawei via CLI.
- Gunakan `scripts/olt-probe.js` untuk mendeteksi OLT baru.
## RADIUS
- **Jaringan → RADIUS Server**: aktifkan, atur secret dan port.
- Lihat `docs/RADIUS_MIKROTIK_INTEGRATION.md`.
## Notifikasi
- **WhatsApp** (Gowa): untuk broadcast, pengingat, struk.
- **Telegram**: monitoring admin (menu, `/sistem`, `/pendapatan`, `/tunggakan`, dll).
## AI & Self-Healing
- **Pengaturan → AI & Self-Healing**.
- Provider OpenAI-compatible: DeepSeek (default), OpenAI, Groq, OpenRouter, custom/Ollama.
- Auto-repair bisa dinyalakan/dimatikan; default nonaktif.
## Update
- **Pengaturan → Sumber Update**: isi host Git (`https://gitea.oxpoe.xyz` atau `https://forgejo.oxpoe.xyz`) dan repo (`oxpoe/open-isp`).
- Instalasi container (tanpa `.git`) melakukan update dengan rebuild image.

36
Troubleshooting.md Normal file

@@ -0,0 +1,36 @@
# Troubleshooting
## Aplikasi tidak mau start
- Cek versi Node: `node -v` (butuh 22+).
- Lihat log: `logs/` atau output service.
- Pastikan `better-sqlite3` terpasang untuk versi Node yang dipakai (`npm rebuild better-sqlite3`).
## Login gagal terus
- Pastikan username/password admin benar.
- Cek rate limit login (30 percobaan / 15 menit).
- Security watchdog memblokir IP sementara setelah 5 percobaan gagal; tunggu 15 menit.
## MikroTik tidak konek
- Cek service `api`/`api-ssl` di RouterOS.
- Pastikan port 8728/8729 tidak diblokir firewall.
- Untuk TLS self-signed, aplikasi sudah menonaktifkan verifikasi sertifikat.
## DNS internal tidak resolve
- Flush cache klien: `resolvectl flush-caches` (Linux), `ipconfig /flushdns` (Windows).
- Matikan DoH di browser (Firefox: `network.trr.mode = 5`).
- Pastikan A record di Technitium benar (bukan typo oktet).
- Turunkan TTL record internal bila sering berubah (mis. 300 detik).
## Sertifikat HTTPS
- Internal CA: pasang root CA Caddy di klien, atau gunakan sertifikat ACME.
- Cek masa berlaku: `openssl s_client -connect host:443 -servername domain`.
## Port/upstream
- Pastikan upstream (mis. `172.20.30.11:3001`) bisa diakses dari host reverse proxy.
- Cek log Caddy/Traefik untuk error 502/504.