tips-dan-trik

Cara Menyembunyikan URL CloudFront dan Menggunakan Domain Kustom dengan Aman

Panduan lengkap untuk menyembunyikan URL bawaan CloudFront dan hanya mengizinkan akses melalui domain kustom Anda. Termasuk konfigurasi SSL, DNS, dan fungsi CloudFront.

Jika kamu menggunakan Amazon CloudFront untuk mengelola konten website, pasti kamu sadar bahwa CloudFront memberikan URL bawaan seperti d38wyzu9t46zzv.cloudfront.net. Meskipun berfungsi, URL ini jelas tidak ramah pengguna — apalagi jika kamu sudah menggunakan domain kustom seperti https://santekno.com.

Di artikel ini, kamu akan belajar:

  • Cara menghubungkan domain kustom ke CloudFront.
  • Mengaktifkan sertifikat SSL untuk keamanan HTTPS.
  • Mengarahkan DNS domain ke CloudFront.
  • Memblokir total akses ke URL default CloudFront menggunakan CloudFront Function.

💡 Mengapa Perlu Menyembunyikan URL Default CloudFront?

Ada beberapa alasan penting:

  • Branding: Kamu ingin pengunjung hanya melihat domain kamu, bukan URL AWS.
  • Keamanan: Mengurangi kemungkinan titik akses yang bisa disalahgunakan.
  • SEO: Mencegah konten terduplikasi akibat URL yang berbeda.

🔧 Langkah 1: Menambahkan Domain Kustom di CloudFront

  1. Masuk ke AWS Management Console dan buka layanan CloudFront.
  2. Pilih distribusi yang kamu gunakan (misalnya d38wyzu9t46zzv.cloudfront.net).
  3. Buka tab General → klik Edit.
  4. Pada bagian Alternate domain names (CNAMEs), masukkan domain kamu:
    santekno.com
    www.santekno.com
    
  5. Klik Save changes.

Langkah ini mengizinkan CloudFront menyajikan konten lewat domain kustom.


🔐 Langkah 2: Aktifkan SSL dengan AWS Certificate Manager (ACM)

Akses HTTPS penting untuk SEO dan keamanan data pengguna.

  1. Buka AWS Certificate Manager (ACM).
  2. Klik Request a certificate.
  3. Pilih Public certificate → masukkan domain kamu:
    santekno.com
    www.santekno.com
    
  4. Gunakan opsi DNS validation.
  5. Tambahkan CNAME record yang diberikan ke panel DNS domain kamu.
  6. Setelah validasi selesai, kembali ke pengaturan CloudFront.
  7. Pilih Custom SSL Certificate dan pilih sertifikat yang baru saja dibuat.
  8. Setel Minimum Origin SSL Protocol ke TLSv1.2.

Simpan pengaturan distribusi kamu.


🌐 Langkah 3: Arahkan Domain ke CloudFront

Di penyedia domain kamu (misalnya Cloudflare, Niagahoster, Namecheap):

  • Untuk www.santekno.com:

    • Tambahkan record CNAME:
      Nama: www
      Tipe: CNAME
      Value: d38wyzu9t46zzv.cloudfront.net
      
  • Untuk santekno.com (domain root):

    • Gunakan record ALIAS atau ANAME jika tersedia.
    • Atau gunakan Cloudflare untuk dukungan CNAME pada level root.

Tunggu propagasi DNS, lalu coba akses https://santekno.com.


🚫 Langkah 4: Blokir Akses ke URL Default CloudFront

Walaupun sudah menggunakan domain kustom, URL seperti https://d38wyzu9t46zzv.cloudfront.net masih bisa diakses — dan ini yang akan kita cegah.

Kita akan menggunakan CloudFront Function untuk mengecek header Host, dan memblokir jika tidak sesuai.

Buat CloudFront Function

  1. Di CloudFront, buka menu Functions → klik Create function.
  2. Nama: BlockDefaultDomain.
  3. Masukkan kode berikut:
function handler(event) {
  var request = event.request;
  var headers = request.headers;

  if (headers.host && headers.host.value !== 'santekno.com') {
    return {
      statusCode: 403,
      statusDescription: 'Forbidden',
      headers: {
        'content-type': { value: 'text/plain' },
      },
      body: 'Akses melalui CloudFront URL tidak diperbolehkan.',
    };
  }

  return request;
}
  1. Klik Publish.

Pasang Fungsi ke Distribusi

  1. Buka distribusi CloudFront kamu.
  2. Masuk ke tab Behaviors → klik Edit pada path /.
  3. Di bagian Function associations, pilih Viewer request → pilih fungsi yang tadi dibuat.
  4. Simpan perubahan.

Uji Hasilnya:

  • https://santekno.com → Harus berjalan normal.
  • https://d38wyzu9t46zzv.cloudfront.net → Harus menampilkan 403 Forbidden.

🔄 Opsional: Redirect ke Domain Kustom

Jika kamu lebih suka mengarahkan pengguna (redirect) daripada memblokir, gunakan kode berikut:

function handler(event) {
  var headers = event.request.headers;

  if (headers.host && headers.host.value !== 'santekno.com') {
    return {
      statusCode: 301,
      statusDescription: 'Moved Permanently',
      headers: {
        'location': { value: 'https://santekno.com' },
      },
    };
  }

  return event.request;
}

🎯 Penutup

Setelah mengikuti tutorial ini, kamu telah berhasil:

✅ Menggunakan domain kustom untuk CloudFront
✅ Mengaktifkan SSL dengan sertifikat aman
✅ Memblokir akses ke URL CloudFront yang asli

Konfigurasi ini tidak hanya menjaga branding dan profesionalitas website kamu, tetapi juga melindungi SEO dan mencegah konten ganda.


🔎 Langkah Selanjutnya?

  • Konfigurasi redirect dari www ke non-www (atau sebaliknya)
  • Buat rules cache untuk optimasi performa
  • Pantau akses log untuk melihat potensi bypass

Butuh tutorial lainnya? Kunjungi santekno.com atau tinggalkan komentar!


Jika kamu ingin versi Markdown atau langsung diunggah ke CMS, tinggal bilang aja!

comments powered by Disqus