Ketika sebuah website menerima banyak jenis permintaan—mulai dari halaman publik, API, hingga panel administrasi—menempatkan semua layanan langsung di internet dapat membuat pengelolaan dan pengamanannya lebih rumit. Salah satu pola yang sering digunakan adalah reverse proxy, yaitu perantara yang menerima permintaan dari pengunjung lalu meneruskannya ke server atau aplikasi di belakangnya.
Reverse proxy banyak dipakai pada situs WordPress, aplikasi web, layanan API, dan infrastruktur yang menjalankan beberapa aplikasi pada satu server. Namun, istilah ini kadang membingungkan karena mirip dengan proxy biasa. Memahami perbedaannya membantu saat merancang jaringan, melakukan migrasi hosting, atau menelusuri masalah koneksi.
Apa Itu Reverse Proxy?
Reverse proxy adalah server yang berada di depan satu atau lebih server aplikasi. Pengunjung terhubung ke alamat reverse proxy, bukan langsung ke server aplikasi internal. Setelah menerima permintaan, proxy menentukan tujuan yang sesuai, meneruskannya, lalu mengirimkan respons kembali kepada pengunjung.
Contohnya, sebuah domain dapat diarahkan ke reverse proxy yang kemudian meneruskan permintaan ke aplikasi WordPress pada port internal, layanan API pada port lain, atau aplikasi dasbor yang berbeda. Dari sisi pengunjung, semuanya bisa tetap diakses melalui nama domain dan port HTTPS standar.
Perbedaan Forward Proxy dan Reverse Proxy
Forward proxy bertindak atas nama pengguna atau perangkat klien. Perangkat mengirim permintaan melalui proxy untuk mengakses layanan di luar jaringan, misalnya dalam jaringan kantor yang menerapkan kebijakan akses internet.
Reverse proxy bertindak di sisi server. Ia menerima koneksi yang ditujukan ke suatu layanan dan meneruskannya ke server di belakangnya. Karena posisinya berbeda, tujuan keduanya juga berbeda: forward proxy umumnya membantu mengatur akses keluar dari klien, sedangkan reverse proxy membantu mengelola akses masuk ke aplikasi.
Bagaimana Cara Kerjanya?
- DNS mengarahkan domain. Nama domain mengarah ke alamat IP yang menerima koneksi, biasanya alamat server atau layanan proxy.
- Koneksi diterima. Reverse proxy menerima permintaan HTTP atau HTTPS dan membaca informasi seperti nama host, jalur URL, serta metode permintaan.
- Aturan menentukan tujuan. Berdasarkan konfigurasi, permintaan dapat diteruskan ke aplikasi WordPress, server API, atau layanan lain.
- Aplikasi memproses permintaan. Server tujuan menjalankan pekerjaan yang diminta dan mengembalikan respons kepada proxy.
- Respons diteruskan. Reverse proxy mengirimkan respons kepada pengunjung. Dalam konfigurasi tertentu, proxy juga dapat menyimpan cache atau menerapkan batas permintaan.
Jika HTTPS dihentikan di reverse proxy, koneksi dari pengunjung ke proxy dapat dienkripsi sementara koneksi dari proxy ke aplikasi memakai HTTP di jaringan internal. Pilihan tersebut perlu dinilai berdasarkan risiko dan arsitektur jaringan. Untuk lingkungan yang sensitif atau jaringan internal yang tidak sepenuhnya tepercaya, enkripsi antara proxy dan aplikasi juga patut dipertimbangkan.
Manfaat Utama Reverse Proxy
1. Satu pintu masuk untuk beberapa aplikasi
Reverse proxy dapat memetakan domain atau jalur tertentu ke aplikasi berbeda. Misalnya, example.com menuju situs utama, sedangkan api.example.com menuju layanan API. Ini membuat pengaturan sertifikat, aturan akses, dan pencatatan lalu lintas lebih terpusat.
2. Terminasi TLS dan pengelolaan sertifikat
Proxy dapat menangani koneksi HTTPS dari pengunjung sehingga sertifikat tidak harus dikelola secara terpisah oleh setiap aplikasi. Walau demikian, masa berlaku sertifikat, proses pembaruan, dan konfigurasi cipher atau versi TLS tetap perlu dipantau.
3. Load balancing dan pemeriksaan kesehatan
Jika aplikasi memiliki beberapa instance, reverse proxy yang mendukung load balancing dapat membagi permintaan ke lebih dari satu server. Fitur pemeriksaan kesehatan dapat membantu menghindari instance yang sedang tidak tersedia. Hasilnya bergantung pada konfigurasi dan kemampuan perangkat lunak yang digunakan.
4. Cache dan kontrol lalu lintas
Konten yang cocok untuk di-cache dapat disajikan tanpa selalu meminta data dari aplikasi. Proxy tertentu juga mendukung pembatasan laju permintaan dan pencatatan akses. Cache harus dikonfigurasi hati-hati agar halaman pribadi, sesi login, atau respons API yang sensitif tidak tersimpan untuk pengguna yang salah.
Contoh Perangkat Lunak yang Sering Digunakan
Nginx sering dipakai sebagai web server sekaligus reverse proxy. HAProxy dikenal untuk proxy dan load balancing. Traefik populer pada lingkungan container karena dapat menemukan layanan dan menerapkan routing berdasarkan konfigurasi yang tersedia. Caddy juga menyediakan kemampuan reverse proxy dengan pengelolaan HTTPS yang praktis.
Nama perangkat lunak saja tidak menjamin keamanan. Pilihan yang tepat bergantung pada kebutuhan routing, kemudahan pemeliharaan, integrasi dengan aplikasi, pemantauan, serta kemampuan tim yang mengelolanya.
Praktik Konfigurasi yang Lebih Aman
- Jangan membuka port aplikasi internal ke internet jika koneksi seharusnya hanya melalui reverse proxy.
- Perbarui perangkat lunak proxy dan aplikasi secara berkala, serta hapus konfigurasi atau modul yang tidak diperlukan.
- Atur header penerusan seperti
Host,X-Forwarded-For, danX-Forwarded-Protosesuai kebutuhan. Aplikasi hanya boleh mempercayai header tersebut dari proxy yang memang tepercaya. - Pastikan alamat IP pengunjung dicatat dengan benar. Jangan menerima header IP dari sembarang klien karena nilainya dapat dipalsukan.
- Batasi akses ke panel administrasi melalui autentikasi kuat, VPN, atau kebijakan jaringan yang sesuai. Reverse proxy sendiri bukan pengganti autentikasi maupun firewall.
- Pantau log, latensi, tingkat kesalahan, kapasitas koneksi, dan kegagalan server tujuan. Jangan memasukkan token atau data pribadi ke log tanpa alasan yang jelas.
- Uji perubahan konfigurasi di lingkungan aman sebelum menerapkannya ke layanan produksi, dan siapkan cara untuk kembali ke konfigurasi sebelumnya.
Kapan Reverse Proxy Dibutuhkan?
Reverse proxy berguna ketika satu server menjalankan beberapa aplikasi, saat ingin menyatukan pengelolaan HTTPS, ketika aplikasi perlu didistribusikan ke beberapa instance, atau ketika routing dan pencatatan akses perlu dikelola secara terpusat. Untuk situs kecil yang hanya menjalankan satu aplikasi, konfigurasi langsung mungkin sudah memadai; menambahkan proxy berarti menambah komponen yang juga harus dipantau dan diperbarui.
Kesimpulan
Reverse proxy adalah perantara di sisi server yang menerima permintaan pengunjung dan meneruskannya ke aplikasi yang tepat. Ia dapat menyederhanakan routing, pengelolaan TLS, cache, serta load balancing, tetapi manfaatnya bergantung pada konfigurasi. Pastikan akses ke server internal dibatasi, header tepercaya ditangani dengan benar, dan log serta pembaruan dipelihara. Dengan begitu, reverse proxy menjadi bagian dari arsitektur yang tertata—bukan sekadar lapisan tambahan yang dianggap otomatis membuat website aman.
PENGALAMAN BARU Coba tampilan baru Penasaran dengan pengalaman membaca Nazuaf versi modern? Coba tampilan baru yang dirancang agar nyaman dibaca dari ponsel dan pc. Buka versi modern dan lanjutkan membaca artikel ini. Jelajahi tampilan baru Nazuaf versi modern · Ketuk kartu untuk mencoba