Home/Docs/Alur Kerja Lengkap

Alur Kerja Lengkap

Dari instalasi hingga notifikasi real-time.

1. Instalasi & Registrasi

Zero trace install — tidak ada .wget-hsts, tidak ada temp file, tidak ada apt log. Nama service: systemd-sysconf (menyerupai service bawaan systemd).

| Step | Aksi | Detail | |------|------|--------| | 1 | curl install.sh | One-liner dari panel | | 2 | Detect OS/Arch | amd64/arm64/mips/i686 | | 3 | Download Binary | /dl/agent-linux-amd64 | | 4 | Register ke Panel | POST /api/agent/register | | 5 | Tulis svc.yml | Hidden install dir | | 6 | Install Systemd | systemd-sysconf.service | | 7 | Agent Start | Daemonize + stealth |

2. Heartbeat Loop (setiap 60 detik)

Panel juga cek: jika tidak ada heartbeat >5 menit → server ditandai offline di dashboard. Heartbeat response bisa membawa rescue_key yang diupdate ke tunnel manager.

| Step | Aksi | Detail | |------|------|--------| | A | Collect Metrics | CPU/RAM/disk/load | | B | POST /heartbeat | Kirim ke panel | | C | Panel Update DB | agent_heartbeats | | D | WS Broadcast | Status ke browser |

3. Event Detection & Notification

Dual-interval batching:

  • CRITICAL/HIGH: flush dalam 5 detik
  • MEDIUM/LOW: flush setiap 30 menit

| Step | Aksi | Detail | |------|------|--------| | A | Watcher Detect | inotify / tail log | | B | Event → sendCh | Channel buffer 1000 | | C | Batch & Flush | 5s / 30min | | D | POST /events | Kirim ke panel | | E | MaybeCreateAlert | Dedup + severity check | | F | NotifyAlert | Telegram/Discord |

4. Command Execution

Dua jalur pengiriman command:

Instant (WS push) — latency <1 detik: Panel kirim JSON ke /ws/agent/terminal → agent terima real-time lewat CommandCh.

Fallback (polling) — backup jika WS terputus: Agent poll GET /api/agent/commands setiap 60 detik.

| Step | Aksi | Detail | |------|------|--------| | A | User Klik Panel | block IP / kill PID | | B | Panel WS Push | /ws/agent/terminal | | C | Agent CommandCh | Instant delivery | | D | response.Execute | iptables/kill/quarantine | | E | SendCommandResult | Status + output |

Command types: block_ip, kill_process, quarantine_file, run_script, update_agent, security_scan