Cara Mengonfigurasi HAProxy sebagai Proxy Terbalik

Cara Mengonfigurasi Haproxy Sebagai Proxy Terbalik



Jika Anda memiliki server web, memiliki cara untuk meneruskan permintaan klien dan respons server membantu mendistribusikan lalu lintas dan meningkatkan keamanan. Proksi terbalik, seperti HAProxy, bertindak sebagai perantara antara aplikasi web Anda dan perangkat klien saat dikonfigurasi. Dengan cara ini, ia menerima permintaan klien dan meneruskannya ke server web yang sesuai sambil menerima respons server dan mengirimkannya ke klien. Mengonfigurasi HAProxy di sisi server Anda untuk bertindak sebagai proxy terbalik adalah proses yang mudah. Posting ini telah merinci langkah-langkah yang harus Anda ambil.

Mengapa Menggunakan Proksi Terbalik?

Sebelum membahas langkah-langkah untuk mengonfigurasi HAProxy sebagai proksi terbalik, mari kita soroti dengan cepat mengapa proksi terbalik bermanfaat bagi keuntungan Anda. Berikut keuntungan yang Anda dapatkan dalam menggunakan HAProxy sebagai reverse proxy:

  1. Penyeimbang beban - Server web Anda, pada satu titik, dapat menerima banyak permintaan klien yang, jika tidak ditangani dengan baik, dapat membebani server secara berlebihan sehingga menyebabkan waktu henti yang tidak terduga. Namun, mengonfigurasi proxy terbalik memastikan lalu lintas didistribusikan ke seluruh server backend untuk memastikan tidak ada server yang kelebihan beban dengan permintaan.
  2. Firewall dan Keamanan – Proksi terbalik menghubungkan perangkat klien ke server web. Melakukan hal ini akan mengurangi risiko server backend kami terekspos langsung ke internet. Dengan begitu, lalu lintas berbahaya dapat dengan mudah disaring dan diblokir sebelum merusak server.
  3. Caching Lebih Baik – Dengan proxy terbalik, Anda akan melihat peningkatan kinerja secara keseluruhan karena waktu buka akan dikurangi dengan menyimpan konten statis dalam cache. Selain itu, Anda akan mencapai pengalaman pengguna yang lebih baik.
  4. Pengakhiran SSL/TLS – Dengan proxy terbalik, mengenkripsi dan mendekripsi koneksi SSL/TLS menjadi lancar, dan server backend Anda tidak perlu memikul tugas ini, sehingga mengurangi bebannya.

Cara Mengonfigurasi HAProxy sebagai Proxy Terbalik

Setelah menjelaskan mengapa reverse proxy seperti HAProxy itu penting, mari kita ikuti langkah-langkah konfigurasinya.







Langkah 1: Instal HAProxy



Anda mungkin sudah menginstal HAProxy di sistem Anda. Jika ya, lewati langkah ini. Namun, bagi seseorang yang baru mengenal hal ini, jalankan perintah berikut untuk menginstal HAProxy:



$ sudo tepat instal haproxy

Kami sudah menginstalnya di kasus kami.





Langkah 2: Edit File Konfigurasi HAProxy



HAProxy memiliki file konfigurasi yang harus Anda akses dan edit untuk dikonfigurasikan sebagai proksi terbalik. Mulailah dengan membuka file konfigurasi menggunakan editor teks.

$ sudo nano /etc/haproxy/haproxy.cfg

Setelah terbuka, perhatikan bahwa ia memiliki konfigurasi dasar untuk bagian default dan global. Kita kemudian harus membuat dua bagian lagi: frontend dan backend. Frontend menentukan antarmuka yang harus menerima permintaan klien, sedangkan backend menentukan server yang akan menangani lalu lintas.

Untuk contoh ini, kami mengkonfigurasi frontend untuk menerima permintaan klien dari port 80 dan 81. Kami kemudian membuat aturan untuk mendistribusikan lalu lintas sedemikian rupa sehingga koneksi dari port 80 dirutekan ke server tertentu sedangkan koneksi dari port 81 menuju ke server lain. server. Bagian frontend kami seperti yang ditunjukkan berikut ini:

Karena kita membuat dua server backend, backend2 dan linux_backend, kita harus membuat bagian backend untuk kedua server. Kami menentukan IP apa untuk mendistribusikan lalu lintas ke “server1” dan “server2” kami untuk masing-masing.

Setelah file konfigurasi diedit, simpan dan keluar dari file. Perhatikan bahwa ada banyak cara untuk mengonfigurasi HAProxy tergantung kebutuhan Anda. Untuk kasus kami, kami membuat server web menggunakan alamat IP yang ditentukan untuk merutekan lalu lintas kami. Ubah IP agar sesuai dengan server web Anda dan port mana yang ingin Anda dengarkan.

Langkah 3: Verifikasi Validitasnya

Dengan HAProxy, ada perintah yang memungkinkan Anda memverifikasi apakah file konfigurasi Anda valid. Jalankan perintah berikut dan lihat output apa yang Anda dapatkan:

$ sudo haproxy -c -f /etc/haproxy/haproxy.cfg

Jika Anda mendapatkan keluaran serupa, ini mengonfirmasi bahwa file konfigurasi Anda valid. Jika tidak, maka akan menimbulkan kesalahan.

Langkah 4: Uji Proksi Terbalik

Dengan menggunakan perintah seperti “curl”, Anda dapat mengirimkan lalu lintas ke server web Anda dan melihat bagaimana responsnya. Untuk kasus kami, kami menggunakan Python3 untuk membuat server web.

Menjalankan perintah “curl” mengonfirmasi bahwa server web kami mendengarkan port yang ditentukan dan HAProxy telah mendistribusikan lalu lintas ke server yang ditentukan berdasarkan file konfigurasi kami.

Anda juga dapat mengakses server web Anda di browser dan mengonfirmasi bahwa proxy terbalik berfungsi.

Karena kita memiliki dua server web yang dapat digunakan tergantung pada port yang digunakan oleh perangkat klien, mari kita ikat server web yang berbeda ke port yang berbeda dan lihat apa yang terjadi.

Output berikut menunjukkan bahwa HAProxy mengirimkan lalu lintas kami ke server backend kedua setelah mendeteksi bahwa permintaan klien dikirim melalui port 81, mengonfirmasi bahwa distribusi lalu lintas berfungsi seperti yang diharapkan.

Itulah cara mengkonfigurasi HAProxy sebagai reverse proxy.

Kesimpulan

HAProxy adalah pilihan yang sangat baik untuk proxy terbalik untuk server web Anda. Mengonfigurasinya sangatlah mudah. Hanya tentukan port mana yang akan mendengarkan permintaan klien dan aturan apa yang akan digunakan untuk penyeimbangan beban. Kemudian, tambahkan server backend yang akan digunakan dan proxy terbalik Anda akan aktif dan berjalan. Postingan ini membagikan langkah-langkah yang harus diikuti dan menunjukkan contoh untuk memastikan Anda merasa nyaman dengan HAProxy.