Kembali ke Semua Artikel Blog Security

Cara Mengamankan File .env dan API Key Rahasia pada Framework Laravel

Tim DevOps AN Media
23 Aug 2026
Cara Mengamankan File .env dan API Key Rahasia pada Framework Laravel - Pembuatan Website & Aplikasi di Jember

Tim AN Media menemukan banyak proyek Laravel yang bocor karena file .env atau API key tidak dilindungi dengan benar. Artikel ini memberikan langkah teknis yang dapat langsung Anda terapkan untuk menutup celah keamanan tersebut.

Langkah 1: Atur Permission File .env

  1. Pastikan hak akses hanya untuk user aplikasi. Jalankan perintah berikut di server Linux Anda:
    chmod 640 .env
    chown www-data:www-data .env
    Dengan 640, hanya pemilik (www-data) yang dapat membaca, grup dapat membaca, dan publik tidak memiliki akses.
  2. Verifikasi permission. Gunakan ls -l .env untuk memastikan output -rw-r----- 1 www-data www-data.

Langkah 2: Pindahkan .env di Luar Web Root dan Buat Symlink

  1. Buat direktori khusus di luar /var/www/html, misalnya /var/www/config:
    mkdir -p /var/www/config
    mv /var/www/html/.env /var/www/config/.env
  2. Buat symbolic link di dalam root aplikasi:
    ln -s /var/www/config/.env /var/www/html/.env
  3. Uji dengan php artisan env untuk memastikan Laravel tetap menemukan file .env.

Langkah 3: Tambahkan Aturan Server untuk Menolak Akses .env

Apache (.htaccess)

<Files ".env">
    Require all denied
</Files>

Nginx (server block)

location ~* \.env$ {
    deny all;
    access_log off;
}

Reload konfigurasi setelah perubahan:

sudo systemctl reload apache2   # untuk Apache
sudo systemctl reload nginx     # untuk Nginx

Langkah 4: Gunakan Config Caching untuk Menghilangkan Ketergantungan .env di Runtime

  1. Ubah semua panggilan env('KEY') menjadi config('app.key') atau konfigurasi yang relevan.
  2. Cache konfigurasi dengan perintah Artisan:
    php artisan config:cache
    Setelah cache, Laravel tidak lagi membaca file .env pada setiap request.

Langkah 5: Enkripsi Nilai Sensitif di .env (Opsional)

Laravel menyediakan helper encrypt(). Simpan nilai terenkripsi dan dekripsi pada runtime:

# .env
ENCRYPTED_API_KEY=eyJpdiI6Ik...
// config/app.php
'api_key' => decrypt(env('ENCRYPTED_API_KEY')),

Pastikan APP_KEY kuat dan tidak pernah dibagikan.

Langkah 6: Rotasi API Key dan Integrasi dengan CI/CD Secret Store

  1. Gunakan layanan secret manager seperti HashiCorp Vault, AWS Secrets Manager, atau GitLab CI variables untuk menyimpan API key.
  2. Di pipeline CI/CD, inject nilai ke file .env sementara sebelum build:
    echo "API_KEY=${CI_API_KEY}" >> .env
  3. Setelah deployment, hapus file .env yang di‑generate secara otomatis dan gunakan php artisan config:cache untuk mengunci nilai.

"Keamanan dimulai dari konfigurasi paling dasar. Menjaga .env tetap di luar jangkauan publik adalah langkah pertama yang tidak boleh diabaikan," – Tim Keamanan AN Media.

Kesimpulan & Call to Action

Dengan mengikuti enam langkah di atas, Anda menutup celah paling umum yang mengakibatkan kebocoran kredensial pada aplikasi Laravel. AN Media siap membantu audit keamanan, implementasi secret manager, atau pengembangan fitur tambahan. Hubungi kami sekarang untuk memastikan aplikasi Anda tahan terhadap serangan data breach.

Tertarik Membuat Website atau Aplikasi Android/Mobile di Jember?

Tim pengembang profesional AN Media Jember siap membantu mewujudkan aplikasi website dan mobile impian Anda dengan arsitektur terbaik & terjangkau.

Konsultasi Gratis Sekarang

Artikel Lainnya yang Relevan

Rekomendasi bacaan menarik lainnya seputar pembuatan website & aplikasi

Lihat Semua Blog →
Cara Mengamankan Website WordPress dari Malware, Virus, dan Script Backdoor - AN Media Jember Security
22 Aug 2026
Cara Mengamankan Website WordPress dari Malware, Virus, dan Script Backdoor

Panduan lengkap langkah demi langkah mengamankan WordPress dari malware, virus, dan script...

Baca Selengkapnya →
Panduan Keamanan Password Management dan Two-Factor Authentication (2FA) Admin - AN Media Jember Security
17 Aug 2026
Panduan Keamanan Password Management dan Two-Factor Authentication (2FA) Admin

Panduan lengkap untuk meningkatkan keamanan akun admin

Baca Selengkapnya →
Pentingnya Mengaktifkan SSL HTTPS dan HTTP Security Headers (HSTS, CSP) - AN Media Jember Security
17 Aug 2026
Pentingnya Mengaktifkan SSL HTTPS dan HTTP Security Headers (HSTS, CSP)

Aktifkan SSL HTTPS dan HTTP Security Headers untuk keamanan website

Baca Selengkapnya →