[CentOS 7] LAB 8.18 Konfigurasi Reverse Proxy Pass (NGINX Web Server)


Pada kesempatan kali ini, admin mau sharing mengenai Konfigurasi Reverse Proxy Pass (NGINX Web Server). Materi ini adalah kelanjutan dari postingan sebelumnya mengenai Web Server Nginx. Jadi, akan ada beberapa konfigurasi dari materi sebelumnya. Untuk melakukan konfigurasi ini, kita harus melakukan installasi NGINX Web Server terlebih dahulu di setiap server. Untuk konfigurasinya bisa dilihat di postingan sebelumnya yaitu Lab 8.12 Konfigurasi Web Server NGINX (CentOS).

Topologi
Berikut adalah topologi yang digunakan unuk tutorial kali ini

Penjelasan :
Pada topologi diatas, admin punya 2 server. Yang pertama sebagai controller dan yang satunya lagi sebagai node. Server si node ini berguna untuk merespon permintaannya client yang hasilnya memberikan kepada controller untuk ditampilkan ke browser client. Si controller ini berfungsi meneruskan permintaan client ke node1 dan meneruskan hasil data (website) dari node ke client dan juga berfungsi sebagai pengontrol web server. dan Si node ini berfungsi memberikan (merespon) hasil request dari client. Maksudnya, saat si client merequest halaman web server pada controller, akan tetapi datanya itu tida ada pada controller namun ada pada si node. 

Konfigurasi Server Controller
1) Pertam-tama, lakukan konfigurasi DNS pada server untuk menambahkan domain si node1. Disini, admin edit file forward zone nya terlebih dahulu.
nano /var/named/[file forward zone]


2) Didalam file forward tersebut, tambahkan sintak untuk si node1 seperti pada gambar dibawah ini dengan menambahkan pula IP address nya.



3) Lalu, edit juga file reverse zone nya
nano /var/named/[file reverse zone]


4) Didalam file reverse tersebut, tambahkan sintak untuk si node1 seperti pada gambar dibawah ini dengan menambahkan pula IP address nya.



5) Lakukan restart service named agar konfigurasi yang dilakukan sebelumnya berjalan (running)
systemctl restart named


6) Lakukan pengetesan domain node1 dengan perintah dig
dig [nama domain]


7) Verifikasi bahwa konfigurasi DNS yang dilakukan sebelumnya sudah benar



8) Selanjutnya kita akan tambahkan konfigurasi (sintak) Reverse Proxy Pass  untuk web server kita. Karena pada lab sebelumnya admin pernah melakukan konfigurasi virtual host di file  vhost.conf. Jadi, semua konfigurasi seperti HTTPS dan konfigurasi lainnya  yang dilakukan sebelumnya berada di file tersebut. Untuk itu, admin akan tambahkan pula konfigurasi Reverse Proxy Pass  di file tersebut. Akan tetapi, jika kalian ingin menambahkannya di file konfigurasi global nginx juga tidak masalah.
nano /etc/nginx/conf.d/vhost.conf


9) Didalam File vhost.conf tersebut. tambahkan sintak seperti gambar dibawah ini


Keterangan :
  • proxy_redirect digunakan untuk mengubah Response Header Location dan Refresh pada Respon Server. Akan tetapi, pada pambar diatas admin mengaturnya menjadi off yang menandakan tidak menggunakan proxy_redirect
  • proxy_set_header digunakan untuk menyesuaikan atau mengatur header untuk koneksi proxy. Misalnya untuk mengganti header "Host" dan menambahkan beberapa header tambahan yang umum dengan permintaan proxy
  • proxy_pass_header yaitu identifikasi Nama server yang dicari di antara kelompok server yang ada, dan jika tidak ditemukan, ditentukan dengan menggunakan resolver. 
  • $http_host digunakan untuk menetapkan header "Host" ke header "Host" dari permintaan klien. Header yang dikirim oleh client selalu tersedia di Nginx sebagai variabel. Variabel akan dimulai dengan awalan $http_, diikuti oleh nama header dalam huruf kecil, dengan tanda hubung digantikan oleh garis bawah.
  • X-Real-IP merupakan IP client sehingga proxy dapat benar membuat keputusan atau log berdasarkan informasi ini.
  • X-Forwarded-For adalah daftar yang berisi alamat IP dari setiap server yang telah diprogramkan client sampai saat ini. Pada contoh di atas, saya menetapkan variabel $proxy_add_x_forwarded_for . Variabel ini mengambil nilai dari header X-Forwarded-For asli yang diambil dari client dan menambahkan alamat IP server Nginx sampai akhir.

10) Lalu, tambahkan pula sintak seperti gambar dibawah ini di sintak location /. lalu save


Keterangan :
  • proxy_pass digunakan untuk menetapkan alamat server proxy dan URI ke lokasi mana yang akan dipetakan. Lokasi yang dimaksud dapat berupa Cluster, Domain ataupun IP Address. Disini admin mengaturnya ke domain node1

12) Lakukan restart service nginx agar konfigurasi yang dilakukan sebelumnya berjalan (running)
systemctl restart nginx



Setting IP Address Server Node 1
1) Pertama-tama, setting IP address pada server node1. Sesuai topologi diatas, admin mengunakan IP address 192.168.1.210/24. Untuk DNS Servernya diarahkan ke IP address server controllernya yaitu 192.168.1.110


2) Disarankan untuk mengganti hostname si server node1. Disini admin mengganti hostname si server node1 menjadi node1. Jangan lupa untuk lakukan reboot si server.



3) Verifikasi IP dan hostname si server node1
ip address



Konfigurasi Server Node 1
1) Pastikan si web server sudah memiliki konten web (halaman web). Disini, isi konten web admin terletak di file index.html di directory /usr/share/nginx/fadillah



2) Edit atau tambahkan sintak html




Verifikasi Pada Client
1) Setting DNS Server pada client dengan mengarahkannya ke IP address si server. Lalu, lakukan verifikasi akses melalui web browser. Maka akan tampil konten web yang terdapat di server node 1










Cukup sekian materi  LAB 8.18 Konfigurasi Reverse Proxy Pass ( NGINX Web Server ) Centos 7 yang dapat saya sharing

Tunggu tutorial selanjutnya
Terima kasih sudah berkunjung
Mohon maaf jika ada kekurangan dan
Semoga bermanfaat
Previous
Next Post »