Panduan Penggunaan & Dokumentasi
Panduan lengkap untuk mengintegrasikan berbagai akun cloud storage Anda, mengelola transfer streaming antar-cloud berkecepatan tinggi tanpa membebani disk server, menjadwalkan sinkronisasi otomatis, serta memahami proteksi privasi dan enkripsi data.
1. Menghubungkan Storage
Koneksikan Google Drive OAuth2, Telegram bot virtual storage, AWS S3/MinIO, dan SFTP/FTP server.
2. Zero-Disk Streaming
Pemindahan file multi-gigabyte antar cloud langsung di RAM via Go stream tanpa menulis file sementara ke disk.
3. Sinkronisasi Otomatis
Jadwal backup mirror berkala menggunakan format cron standar untuk menjaga sinkronisasi data antar storage.
4. Keamanan & Privasi
Enkripsi envelope AES-256-GCM, zero-knowledge storage, dan isolasi privasi total dari Super Admin.
Panduan Setup & Koneksi Cloud Storage
Langkah demi langkah menghubungkan berbagai penyedia cloud storage ke Multi Storage dengan aman.
Google Drive (Integrasi Resmi OAuth 2.0)
Hubungkan akun Google Drive Anda menggunakan OAuth 2.0 Client ID & Refresh Token langsung dari Google Cloud Console.
Tautan Langsung Google Cloud Console:
https://developers.google.com/oauthplaygroundhttps://www.googleapis.com/auth/driveLangkah-Langkah Konfigurasi Lengkap:
Buka Google Cloud Console, klik pemilih proyek di header atas, lalu klik New Project (atau buka console.cloud.google.com/projectcreate). Beri nama misalnya Multi Storage lalu klik Create.
Buka Library Google Drive API dan pastikan proyek yang baru dibuat sedang aktif. Klik tombol biru Enable.
Buka menu OAuth consent screen, pilih User Type External lalu klik Create. Masukkan App name (Multi Storage) dan email support Anda. Di bagian Scopes, tambahkan scope https://www.googleapis.com/auth/drive.
⚠️ Mencegah Error 403 (Akses Diblokir): Di bagian Test users, klik + ADD USERS dan masukkan alamat email Google Anda. Tanpa langkah ini, Google akan memblokir otorisasi karena aplikasi berstatus Testing.
Masuk ke menu Credentials, klik + Create Credentials > OAuth client ID. Pilih tipe Web application.
- Di kolom Authorized JavaScript origins: klik + Add URI dan masukkan origin domain Anda:
https://<domain-anda>(atauhttp://localhost:3000jika lokal). - Di kolom Authorized redirect URIs: klik + Add URI dan masukkan:
https://<domain-anda>/oauth/callback(dan tambahkanhttps://developers.google.com/oauthplaygroundjika ingin generate refresh token manual).
Klik Create, lalu salin Client ID dan Client Secret yang muncul.
Buka Dashboard Multi Storage > modal Add Connection > Google Drive > pilih tab Custom App (BYOC). Masukkan Google Client ID & Client Secret Anda, lalu pilih Otorisasi Popup Google dan klik tombol Mulai Otorisasi Akun Google (BYOC).
Jendela otorisasi resmi Google akan terbuka secara langsung di layar Anda. Begitu Anda memilih akun dan menyetujui izin akses, Multi Storage akan otomatis bertukar token dan menghubungkan Google Drive Anda tanpa perlu salin token manual!
Jika Anda lebih memilih menginput refresh token secara manual, buka Google OAuth Playground:
- Klik ikon Gear ⚙️ (Settings) di sudut kanan atas, centang kotak "Use your own OAuth credentials", lalu tempelkan Client ID dan Client Secret Anda.
- Di panel kiri (Step 1), cari kolom "Input your own scopes", ketik
https://www.googleapis.com/auth/drive, lalu klik Authorize APIs. - Pilih akun Google Anda. Jika muncul peringatan Google hasn't verified this app, klik Advanced > Go to Multi Storage (unsafe) lalu klik Continue.
- Di Step 2, klik tombol biru "Exchange authorization code for tokens".
- Salin teks pada baris
"refresh_token": "..."dari respon JSON. - Di modal Add Connection Multi Storage tab BYOC, pilih Input Refresh Token Langsung, tempelkan token tersebut lalu klik simpan.
Microsoft OneDrive & Office 365 (Microsoft Graph OAuth 2.0)
Hubungkan akun Microsoft OneDrive (Personal maupun Korporat / Microsoft 365 Entra ID) dengan streaming in-memory dan upload chunk resumable.
Tautan Langsung Microsoft Azure Portal:
https://<domain-anda>/oauth/callbackJendela popup otorisasi MultiStore akan otomatis melakukan hand-shake ke rute callback ini dan menutup jendela setelah disetujui.
Izin akses baca/tulis berkas dan refresh token jangka panjang tanpa memerlukan persetujuan admin tenant yang rumit.
Langkah-Langkah Konfigurasi Azure Entra ID (BYOC):
Buka Azure App Registrations menggunakan akun Microsoft Anda. Klik + New registration.
Isi Name dengan MultiStore. Pada bagian Supported account types, pilih opsi ketiga: "Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts" agar dapat digunakan login untuk akun Outlook/Hotmail pribadi maupun akun bisnis Microsoft 365.
Pada formulir yang sama di bagian Redirect URI, pilih platform dropdown Web, lalu masukkan https://<domain-anda>/oauth/callback (atau http://localhost:3000/oauth/callback untuk pengujian lokal). Klik Register di bawah.
Di panel menu sebelah kiri, buka Certificates & secrets > tab Client secrets > klik + New client secret. Beri deskripsi (misal: MultiStore App Secret) dan tentukan masa berlaku (disarankan: 24 months). Klik Add.
⚠️ PENTING: Segera salin nilai pada kolom Value (bukan kolom Secret ID). Nilai Value hanya dimunculkan satu kali ini saja oleh Microsoft dan akan disamarkan permanen setelah halaman di-refresh.
Di panel menu kiri, klik API permissions > klik + Add a permission > pilih Microsoft Graph > pilih Delegated permissions.
Cari dan centang izin: Files.ReadWrite, offline_access, dan User.Read. Klik tombol Add permissions di bagian bawah.
Kembali ke aplikasi Multi Storage > buka modal Add Connection > OneDrive > pilih tab Custom App (BYOC). Masukkan Application (client) ID dari halaman Overview aplikasi Azure dan Client Secret (Value) yang telah disalin.
Klik Otorisasi dengan Azure App Saya. Jendela popup Microsoft akan muncul untuk meminta izin akses, dan koneksi Anda akan langsung tersimpan dan aktif seketika!
Dropbox API v2 (Scoped OAuth 2.0 & Chunked Upload)
Hubungkan Dropbox ke Multi Storage dengan akses berkas penuh, streaming tanpa disk, dan upload session resumable untuk file besar.
Tautan Langsung Dropbox Developer Console:
https://<domain-anda>/oauth/callbackTambahkan URI ini pada tab Settings di Dropbox App Console. Popup otorisasi akan otomatis menutup setelah izin disetujui.
Wajib mencentang izin di atas dan mengklik tombol biru Submit di tab Permissions agar upload dan download berjalan tanpa kendala.
Langkah-Langkah Konfigurasi Dropbox Developer (BYOC):
Buka Dropbox App Console dan login ke akun Dropbox Anda. Klik tombol Create app.
- 1. Choose an API: Pilih Scoped access.
- 2. Choose the type of access: Pilih Full Dropbox agar Multi Storage dapat membaca, membuat folder, dan memigrasikan berkas antar cloud tanpa dibatasi folder tunggal.
- 3. Name your app: Beri nama aplikasi unik (misal:
MultiStore Cloud - <nama Anda>). Hindari hanya menggunakan kata "Dropbox" saja.
Buka tab Permissions di bilah atas aplikasi Anda. Centang 4 izin wajib:
files.metadata.read(Melihat hierarki berkas & folder)files.content.read(Mendownload & membaca berkas)files.content.write(Mengunggah & memindahkan berkas)account_info.read(Melihat nama akun pengguna)
⚠️ PENTING: Jangan lupa gulir ke bagian paling bawah halaman Permissions lalu klik tombol Submit berwarna biru. Tanpa menekan tombol Submit, izin baru tidak akan aktif.
Beralih ke tab Settings di bilah navigasi atas. Gulir ke bagian OAuth 2:
- Di samping Redirect URIs, klik Add lalu masukkan:
https://<domain-anda>/oauth/callback(danhttp://localhost:3000/oauth/callbackuntuk pengujian lokal). - Pada Token expiration, biarkan Short-lived (Multi Storage secara otomatis menangani refresh token jangka panjang).
Masih di tab Settings, temukan kolom App key di bagian atas dan salin kodenya. Di samping App secret, klik tautan Show lalu salin kode rahasianya.
Buka Dashboard Multi Storage > modal Add Connection > Dropbox > pilih tab Custom App (BYOC). Masukkan App Key dan App Secret, lalu klik tombol Otorisasi dengan Dropbox App Saya.
Popup Dropbox akan terbuka untuk persetujuan akun Anda, lalu otomatis tertutup dan koneksi Dropbox langsung siap digunakan untuk streaming dan migrasi data!
Telegram Virtual Storage (Unlimited Cloud)
Gunakan channel Telegram privat Anda sebagai penyimpanan data tanpa batas kapasitas.
- Buka @BotFather di Telegram, buat bot baru dengan command
/newbot, lalu simpan Bot Token Anda. - Buat Private Channel baru di Telegram, buka channel info > Administrators, lalu jadikan bot Anda sebagai Administrator dengan izin post messages.
- Dapatkan Channel ID (angka minus diawali
-100...) dari URL Telegram Web atau meneruskan pesan ke bot pembantu seperti@userinfobot. - Masukkan Bot Token dan Channel ID di form Multi Storage Connection.
Amazon S3 & S3-Compatible (MinIO, Wasabi, Cloudflare R2)
Hubungkan bucket object storage berstandar S3 menggunakan API Key kredensial IAM Anda.
Langkah-Langkah Setup S3 / MinIO:
- Buat atau siapkan Bucket di konsol AWS S3 atau server MinIO Anda.
- Dapatkan Access Key ID dan Secret Access Key dari IAM User dengan kebijakan minimal (
GetObject,PutObject,ListBucket,DeleteObject). - Pilih region bucket Anda (misal
ap-southeast-1untuk AWS S3 Singapura). Untuk MinIO lokal/privat, Anda dapat mengisinya denganus-east-1. - Jika menggunakan provider non-AWS (seperti MinIO, Wasabi, atau Cloudflare R2), isi kolom Custom Endpoint URL dengan alamat server S3 Anda.
- Untuk MinIO / LocalStack / Self-hosted S3, pastikan mencentang opsi Gunakan Path-Style Addressing agar request diarahkan secara benar.
- Klik Create Connection untuk menguji koneksi dan mulai mengelola file bucket.
SFTP & FTP Remote Server
Koneksikan server Linux / VPS, NAS, hosting cPanel, atau remote server Anda melalui jalur SSH terenkripsi.
Langkah-Langkah Setup SFTP / FTP:
- Pilih protokol SFTP (SSH File Transfer Protocol - Port 22) untuk keamanan maksimal, atau FTP (Port 21) jika server lama Anda hanya mendukung FTP standar.
- Masukkan Host (IP address atau domain server, misal
vps.yourdomain.com) dan nomor port yang sesuai. - Masukkan Username dan Password akun server Anda, atau tempelkan SSH Private Key jika server menggunakan otentikasi kunci kriptografi.
- Tentukan Root Directory (misalnya
/home/user/storageatau/var/www/uploads) sebagai direktori awal penyimpanan file. - Klik Create Connection. Multi Storage akan melakukan handshake aman untuk memverifikasi direktori server Anda.
Fitur Transfer Antar Cloud: Zero-Disk Streaming
Transfer file multi-gigabyte antar cloud langsung di memori RAM tanpa menulis file sementara ke harddisk server.
Cara Memulai Transfer File Antar Cloud:
- Buka menu Files di Dashboard Multi Storage Anda.
- Pilih storage sumber dari dropdown atau folder browser.
- Pilih file atau folder yang ingin Anda pindahkan, lalu klik tombol "Transfer Antar Cloud".
- Tentukan Storage Tujuan (misal dari Google Drive ke Telegram Storage atau AWS S3) serta folder targetnya.
- Klik "Mulai Transfer". Sistem akan langsung mengalirkan data tanpa Anda perlu mengunduh file ke komputer Anda terlebih dahulu.
- Pantau kecepatan transfer (MB/s), waktu estimasi (ETA), dan status progress bar secara real-time.
Keuntungan Arsitektur Zero-Disk:
- Hemat Kuota & Memori Komputer: File tidak pernah diunduh ke laptop atau ponsel Anda; transfer terjadi langsung antar server cloud.
- Kecepatan Maksimal: Menggunakan Go
io.Pipedengan buffer in-memory 64 KB yang langsung menyalurkan chunk data saat dibaca. - 100% Bersih & Terjaga: Tidak ada file sementara yang tersisa di storage lokal server kami setelah transfer selesai.
Penjadwalan Sinkronisasi Otomatis (Scheduled Mirror Sync)
Atur backup otomatis berkala antar penyedia cloud storage menggunakan jadwal ekspresi cron standar.
Fitur Scheduled Sync memungkinkan Anda mencadangkan folder penting secara otomatis dari satu cloud storage ke cloud storage lain. Sistem akan memeriksa perubahan file dan menyalin file baru atau terbarukan sesuai jadwal yang telah ditentukan.
Format Sintaks Cron (5 Bagian):
# ┌───────────── menit (0 - 59)
# │ ┌────────────── jam (0 - 23)
# │ │ ┌─────────────── hari dalam bulan (1 - 31)
# │ │ │ ┌──────────────── bulan (1 - 12)
# │ │ │ │ ┌───────────────── hari dalam minggu (0 - 6, Minggu = 0)
# │ │ │ │ │
* * * * *
0 2 * * *Dijalankan setiap hari pukul 02:00 dini hari saat beban server rendah.
0 0 * * 0Dijalankan setiap hari Minggu pukul 00:00 untuk arsip mingguan.
0 */6 * * *Dijalankan setiap interval 6 jam untuk update dokumen aktif.
Arsitektur Keamanan & Privasi Data
Standar enkripsi data tingkat industri untuk melindungi seluruh kredensial dan file Anda.
Envelope Encryption AES-256-GCM
Semua token otentikasi (Google OAuth refresh token, Telegram bot token, AWS Secret Keys, password SFTP) dienkripsi menggunakan algoritma AES-256-GCM dengan Master Key yang terisolasi.
Zero-Storage Footprint
Multi Storage tidak pernah menyimpan file pengguna di servernya sendiri. Seluruh transfer dialirkan langsung melalui buffer memori RAM murni dan langsung dibuang begitu transfer selesai.
Isolasi Privasi Super Admin
Super Admin platform hanya memantau metrik kuota bandwidth agregat dan kesehatan infrastruktur server. Super Admin secara sistemik tidak dapat membaca nama file, struktur folder, atau isi data privat pengguna.
Frequently Asked Questions (FAQ)
Apakah Multi Storage menyimpan salinan file saya?
Tidak sama sekali. Multi Storage beroperasi sebagai jembatan *streaming* langsung. File dialirkan antar cloud provider secara langsung di memori RAM tanpa pernah disimpan sebagai file temporer pada harddisk server kami.
Apakah ada batasan ukuran file saat transfer antar cloud?
Batasan ukuran file bergantung pada limitasi provider masing-masing (misal Telegram mendukung file hingga 2 GB per file untuk akun bot standar). Multi Storage sendiri mendukung streaming file multi-gigabyte tanpa batas memori.
Apa yang terjadi jika koneksi internet terputus saat transfer berlangsung?
Transfer dikelola oleh antrean background worker Asynq. Jika terjadi kegagalan jaringan sementara, sistem akan secara otomatis mencoba kembali (retry) beberapa kali sebelum menandai job dengan status gagal.
Bagaimana jika saya ingin menghapus koneksi cloud storage saya?
Anda dapat memutus koneksi storage kapan saja melalui menu Connections di Dashboard. Begitu koneksi dihapus, seluruh token enkripsi yang tersimpan akan langsung dimusnahkan secara permanen dari database.
Butuh bantuan lebih lanjut atau pertanyaan teknis?
Tim Multi Storage siap membantu Anda mengonfigurasi koneksi cloud storage dan integrasi kustom.
Siap Menyatukan Seluruh Cloud Storage Anda?
Daftar sekarang dan nikmati kemudahan transfer file multi-cloud tanpa memakan kuota disk lokal.