Kembali ke Semua Artikel Blog Security

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

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

Laravel menyimpan konfigurasi sensitif seperti kredensial database dan API key di file .env. Jika file ini terakses publik atau masuk ke version control, data rahasia dapat bocor. Artikel ini memberikan langkah teknis lengkap untuk menutup celah keamanan tersebut.

Mengapa .env dan API Key Perlu Dilindungi

File .env berisi kunci rahasia yang tidak boleh diketahui publik. Kebocoran dapat menyebabkan:

  • Penggunaan tidak sah terhadap layanan pihak ketiga (mis. Stripe, Google Maps).
  • Injeksi data pada basis data produksi.
  • Kerusakan reputasi dan potensi denda compliance.

Langkah-Langkah Mengamankan .env dan API Key

  1. Langkah 1: Tambahkan .env ke .gitignore

    Pastikan file .env tidak pernah masuk ke repository Git.

    # .gitignore
    /vendor
    /node_modules
    /.env
    

    Jika sudah terlanjur ter-commit, gunakan perintah berikut untuk menghapus riwayat:

    git filter-branch --force --index-filter "git rm --cached --ignore-unmatch .env" --prune-empty --tag-name-filter cat -- --all
    git push origin --force --all
    git push origin --force --tags
    
  2. Langkah 2: Set permission file .env

    Batasi hak akses sehingga hanya user web server yang dapat membaca.

    chmod 640 .env   # owner read/write, group read, others none
    chown www-data:www-data .env   # sesuaikan dengan user PHP-FPM/Apache
    
  3. Langkah 3: Blok akses langsung ke .env melalui web server

    Untuk Apache, tambahkan aturan di .htaccess root project:

    # .htaccess
    <Files ".env">
        Order allow,deny
        Deny from all
    </Files>
    

    Untuk Nginx, edit server block:

    # nginx.conf (atau site‑available)
    location ~* \.env$ {
        deny all;
        access_log off;
        log_not_found off;
    }
    
  4. Langkah 4: Gunakan environment variables di level server

    Alih‑alih menyimpan nilai sensitif di .env pada produksi, set variabel di sistem operasi atau container.

    # contoh pada Ubuntu/Debian
    export APP_KEY=$(openssl rand -base64 32)
    export DB_PASSWORD="s3cur3P@ss"
    export STRIPE_SECRET="sk_live_XXXXXXXXXXXXXXXX"
    

    Lalu di config/database.php atau file konfigurasi lain, panggil env('DB_PASSWORD') seperti biasa.

  5. Langkah 5: Aktifkan konfigurasi cache

    Setelah .env stabil, jalankan perintah berikut agar nilai konfigurasi disimpan di cache, mengurangi kebutuhan membaca .env pada setiap request.

    php artisan config:cache
    php artisan route:cache
    php artisan view:cache
    

    Jika .env diubah, jalankan php artisan config:clear terlebih dahulu.

  6. Langkah 6: Enkripsi API key menggunakan Laravel Secret Manager (opsional)

    Laravel 9+ menyediakan php artisan secret:store untuk menyimpan nilai terenkripsi di file storage/app/secrets. Contoh:

    # Simpan secret
    php artisan secret:store STRIPE_SECRET "sk_live_XXXXXXXXXXXXXXXX"
    
    # Mengakses di kode
    $stripeKey = secret('STRIPE_SECRET');
    

    Pastikan folder storage/app/secrets tidak dapat diakses publik (chmod 750, owner www-data).

Checklist Penutup

  • .env berada di .gitignore dan sudah di‑remove dari riwayat Git.
  • Permission file .env = 640, owner = web server user.
  • Web server menolak akses langsung ke .env (Apache/Nginx).
  • Variabel sensitif di‑set di level OS atau container pada produksi.
  • Konfigurasi di‑cache dengan php artisan config:cache.
  • Jika menggunakan Laravel Secret Manager, pastikan folder secret tidak dapat diakses publik.
"Keamanan data aplikasi dimulai dari konfigurasi paling dasar. Menjaga .env tetap tersembunyi adalah langkah pertama yang tidak boleh diabaikan," – Tim Keamanan AN Media, Jember.

Kesimpulan & Call to Action

Dengan mengikuti enam langkah di atas, file .env dan API key Anda akan terlindungi dari ekspos publik dan kebocoran melalui version control. Implementasikan segera pada semua proyek Laravel di AN Media, dan tawarkan audit keamanan gratis kepada klien yang ingin memastikan lingkungan produksi mereka aman.

Butuh bantuan lebih lanjut? Hubungi tim AN Media melalui info@anmedia.id atau kunjungi website resmi untuk konsultasi keamanan aplikasi.

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 File .env dan API Key Rahasia pada Framework Laravel - AN Media Jember Security
23 Aug 2026
Cara Mengamankan File .env dan API Key Rahasia pada Framework Laravel

Panduan lengkap AN Media mengamankan .env & API Key di Laravel secara step-by-step.

Baca Selengkapnya →
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 →