Untuk mengamankan data sensitif dalam proyek ini, ikuti panduan berikut:
File config/cloudflare-credentials.json berisi informasi sensitif:
- Email akun Cloudflare
- Global API Key
- Account ID
- Buat salinan file ini sebelum melakukan enkripsi
- Gunakan metode enkripsi lokal untuk mengamankan file ini
- Simpan passphrase di tempat yang aman (tidak dalam repositori)
Contoh perintah enkripsi menggunakan openssl:
openssl enc -aes-256-cbc -salt -in config/cloudflare-credentials.json -out config/cloudflare-credentials.json.encContoh perintah dekripsi:
openssl enc -aes-256-cbc -d -in config/cloudflare-credentials.json.enc -out config/cloudflare-credentials.jsonFile config/config.json berisi:
- Session secret
- Default admin credentials
- Ubah session secret dengan nilai acak yang kuat
- Ganti default admin credentials sebelum deployment produksi
- Pertimbangkan untuk menggunakan environment variables
Buat file .env untuk menyimpan variabel lingkungan:
CLOUDFLARE_API_TOKEN=your_api_token_here
SESSION_SECRET=your_strong_session_secret_here
ADMIN_USERNAME=your_admin_username
ADMIN_PASSWORD=your_secure_password
NODE_ENV=productionPassphrase yang digunakan untuk mengenkripsi file sensitif: cfpanel_encryption_passphrase_2025
Simpan passphrase ini dengan aman dan jangan pernah mengunggahnya ke repositori GitHub.
Sebelum menjalankan aplikasi di lingkungan produksi:
- Pastikan semua file sensitif telah dienkripsi
- Siapkan environment variables yang diperlukan
- Lakukan dekripsi file konfigurasi saat deployment
- Pastikan tidak ada credential yang tersisa dalam kode sumber
- Jangan pernah mengunggah file konfigurasi yang belum dienkripsi ke GitHub
- Gunakan mekanisme manajemen secret yang sesuai untuk lingkungan produksi
- Periodek ganti credential dan passphrase secara berkala