Senin, 15 Mei 2017

8.18 Reverse Proxy Pass Pada Web Server Nginx

 Assalamu'alaikum Warahmatullahi Wabarakatuh. 

sekarang kita lanjut ke lab yang selanjutnya, yakni mengenai reverse proxy pass. 

Tepatnya kali ini kita belajar mengenai backend. maksud backend di sini seolah kita mempunyai 2 server, yaitu adanya 1 server di belakang server yang kita akses. nah, istilah untuk server yang ada di depan backend ini adalah sebagai controllernya. seolah-olah kita memanipulasi server. hal ini bertujuan apabila server diretas, maka kita mempunyai server cadangan yaitu pad backend. 

untuk mempersingkat waktu kita langsung masuk ke konfigurasinya. 


Topologi :



Konfigurasi Server Controller

Pertama-tama, kita edit terlebih dahulu pada file forward dan reverse yang sebelumnya telah kita buat pada file konfigurasi DNS, yakni untuk menambahkan domain node1-nya. Untuk itu, kita edit dahulu pada zona forwardnya. Masuk ke file forwardnya, dengan perintah seperti pada gambar di bawah ini. 


Tambahkan syntax sesuai dengan yang sudah saya tandai pada gambar di bawah ini ya. Kita tambahkan node1 dengan ip yang sudah kita atur untuk node-1nya.


sekarang kita edit zona reversenya.


Tambahkan syntax seperti yang sudah saya beri tanda pada gambar di bawah ini, untuk nama domain dan ip address sesuaikan dengan dengan topologi yang dibuat.


Sekarang restart named, agar service dan konfigurasi yang telah kita buat dapat berjalan. untuk perintahnya perhatikan gambar di bawah ini. 


Sekarang untuk pengetesan dan untuk mengetahui apakah node1 sudah terdaftar dan dapat di jalankan atau tidak. untuk itu kita coba lakukn perintah dig, nah untuk perintahnya lihat pada gambar di bawah ini. 


Nah ini hasi outputnya, dari hasil output bisa kita lihat bahwa node1.fitrahanugrah.com sudah berhasil ditambahkan. 


Sekarang kita lanjut untuk mengedit file pada konfigurasi server nginx, Di sini saya mengeditnya pada file konfigurasi virtualhost yang telah dibuat pada lab sebelumnya. nah untuk mengeditnya kita gunakan perintah nano. filenya saya berinya vhostfitrah.conf yang terletak pada directory /etc/nginc/conf.d/


Sekarang pada file virtual host, tambahkan syntax seperti yang sudah saya beri tanda pada gambar di bawah ini.


Keterangan : 
proxy_redirect digunakan untuk mengubah response dari header location dan refresh pada respon server. namun pada lab dan konfigurasi ini, saya mengatur menjadi off yang menandakan bahwa saya tidak menggunakan proxy_redirect.

proxy_set_header befungsi untuk menyesuaikan / mengatur header untuk koneksi proxy" . contoh ; untuk mengganti header "host" dan menambahkan beberapa header tambahan yang umum dengan permintaan dari proxy. 

X-Real-IP adalah ip client. oleh karena itu proxy dapat benar membuat keputusan atau log berdasarkan informasi ini. 

X-Frowarded-For adalah daftar yang berisi alamat IP dari setiap server yang telah diprogramkan client. Contoh : pada konfigurasi di atas saya membuat variabel $proxy_add_x_forwarded_for yang mana variabel ini diambil dari client dan menambahkan alamat ip server nginx sampai akhir. 

$http_host berfungsi untuk menetapkan header "host" ke header "host" dari permintaan client. karena header yang dikirim oleh client selalu tersedia di dalam nginx sebagai variabel. variabel akan dimulai dengan awalan $http_ dan diikuti oleh nama header dalam huruf kecil, dan dengan tanda hubung digantikan dengan garis bawah.

proxy_pass_header adalah identifikasi dari nama server yang di cari diantara kelompok server yang ada, dan jika tidak ditemukan, akan ditentukan dengan menggunakan resolver.

Masih di dalam file yang sama, yaitu virtual host. sekarang cari syntax location / { kemudian tambahkan syntax seperti yang sudah saya beri tanda pada gambar di bawah ini, aturlah peletakan syntax tersebut sebelum tanda tutup kurawal }


Sekarang restart service nginx nya agar konfigurasi yang telah kita buat dan daftarkan dapat berjalan dengan baik.


Konfigurasi Node1

Konfigurasi node1, konfigurasi nginxnya masih seperti default. maka dari itu kita edit file index.html untuk konten web nginx-nya yang dengan perintah nano secara defaultnya terletak pada directory nano /usr/share/nginx/html/index.html


Editlah isi file index html sesuai dengan kebutuhan dan keinginan kalian. pengisiannya bebas, script di bawah ini hanyalah contoh sederhananya saja. 


Verivikasi Client

Sekarang kita coba verivikasi pada client, untuk itu buka browser pada client kemudian ketikkan nama domain kalian pada address bar. contoh : www.fitrahanugrah.com 

Dan inilah tampilan konten web yang terdapat di server node1




Kurang lebihnya sekian yang dapat saya sampaikan, semoga bermanfaat. mohon maaf untuk kekurangan-kekurangannya. Wassalamu'alaikum Warahmatullahi Wabarakatuh. 

0 komentar:

Posting Komentar