Keamanan
Lokasi di admin: System › Admin › Console security (
/account), Admin users (/users); System › Settings › Customer logins (/settings/login).
Konsol admin
Otentikasi dua faktor (TOTP)
Konsol dapat diakses dari Internet, jadi aktifkan TOTP.
- Buka System › Admin › Console security.
- Di bawah Two-factor authentication (TOTP) klik Start setup.
- Pindai kode QR dengan Google Authenticator, Authy, 1Password, atau Bitwarden, lalu masukkan kode 6 digit.
Rentang IP konsol yang diizinkan
Di bawah Allowed console IP ranges masukkan satu IP atau CIDR (IPv4 atau IPv6) per baris. Kosong berarti di mana saja. Di luar rentang tersebut, proses masuk dan API admin akan diblokir.
Jangan sampai terkunci sendiri
Halaman ini menampilkan IP Anda saat ini dan mengharuskan daftar baru menyertakannya. Gunakan + Add my IP. Jika Anda tetap terkunci, gunakan emergency access dari server.
Ubah kata sandi
Isi Current password, New password, dan Confirm new password. Gunakan kata sandi yang panjang dan unik (12 karakter atau lebih; wisaya penyiapan mewajibkan 12 karakter untuk administrator pertama).
Akun administrator dan peran
Buka System › Admin › Admin users dan gunakan + Create account.
| Role | Akses |
|---|---|
admin | Akses penuh ke API admin |
staff | Hanya-baca di seluruh sistem |
user | Tampilan hanya-baca untuk sumber daya satu pelanggan |
Akun root adalah akun yang dibuat dalam setup wizard. Aksi baris: Edit, Reset PW, Key, Delete. Kata sandi disimpan sebagai salted hash; mengubah atau mengunci akun akan langsung mengakhiri sesinya.
Login pelanggan
Buka System › Settings › Customer logins.
| Pengaturan | Fungsi |
|---|---|
| Google sign-in | Aktifkan, lalu masukkan ID klien OAuth dan secret. Salin Callback URL yang ditampilkan di halaman ke Google Cloud Console › APIs & Services › Credentials › OAuth client ID › Authorized redirect URIs. Gunakan Test configuration. |
| GitHub login | Sama, dengan GitHub › Settings › Developer settings › OAuth Apps › Authorization callback URL |
| Passkey | Login sidik jari, PIN, atau kunci perangkat; aktif secara default. Passkey terikat pada domain; setiap domain reseller berfungsi sendiri-sendiri. Masukkan domain lama di Legacy passkey Domain setelah rebrand agar pelanggan mendapat petunjuk yang membantu |
| Autentikasi ulang saat menambahkan metode login | Minta kata sandi lagi sebelum menambahkan passkey atau menautkan Google/GitHub (nonaktif secara default) |
| Captcha | Cloudflare Turnstile atau Google reCAPTCHA saat pendaftaran: aktifkan, pilih penyedia, masukkan site key dan secret key |
| Block e-mail domains | Satu domain per baris (maks 2000). Alamat yang cocok akan ditolak saat pendaftaran dengan email_domain_blocked |

Kebijakan bawaan
| Kebijakan | Nilai |
|---|---|
| Kata sandi pelanggan | Minimal 10 karakter, huruf dan angka |
| Sesi pelanggan | 30 hari; sesi "login as customer" berlangsung selama 1 jam |
| Verifikasi email | Diperlukan sebelum membuat VM saat require e-mail verified aktif di pengaturan penjualan |
| Anti-carding | Akun dengan saldo di bawah top-up minimum hanya dapat membuat jumlah VM yang terbatas |
Pengerasan server
- Port 3000 ditutup setelah penyiapan dan TLS; lihat Installation.
- Layanan berjalan sebagai pengguna
nexcmpnon-istimewa dengan sandbox systemd yang dibatasi. - Kunci API, kredensial pembayaran, dan kata sandi SMTP disimpan secara terenkripsi; kunci master berada di
/var/lib/nexcmp/secrets— lindungi backups. - Rilis diverifikasi dengan SHA-256 dan tanda tangan Ed25519 sebelum instalasi.