GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengatur &Menggunakan NGINX sebagai Proxy Terbalik

Apa itu Proksi Terbalik?

Server proxy standar bekerja atas nama klien, seringkali dengan menyediakan privasi atau memfilter konten. Proxy terbalik bekerja atas nama server, mencegat lalu lintas dan merutekannya ke server terpisah.

Ada beberapa alasan Anda mungkin ingin menginstal proxy terbalik. Salah satu alasan utamanya adalah privasi.

Jika Anda memiliki beberapa server, proxy terbalik dapat membantu menyeimbangkan beban antar server dan meningkatkan kinerja. Karena proxy terbalik menyediakan satu titik kontak untuk klien, proxy ini dapat memusatkan pencatatan dan pelaporan di beberapa server.

Nginx dapat meningkatkan kinerja dengan menyajikan konten statis dengan cepat dan meneruskan permintaan konten dinamis ke server Apache.

Panduan ini akan membantu Anda menginstal dan mengonfigurasi proxy terbalik Nginx di sistem Anda.

Prasyarat

  • Server Linux dengan Apache, PHP, dan firewall
  • Akses ke pengguna root dengan sudo akses
  • Baris perintah atau terminal Linux (CtrlAlternB untuk Ubuntu, AltF2 untuk CentOS)
  • Manajer paket (seperti APT)

Menyiapkan Proksi Terbalik Nginx

Langkah 1:Instal Nginx dari Repositori Default

Buka jendela terminal dan masukkan berikut ini:

sudo apt-get update

Biarkan pengelola paket menyelesaikan penyegaran daftar perangkat lunak, lalu masukkan yang berikut ini:

sudo apt-get install nginx

Biarkan prosesnya selesai.

Langkah 2 (opsional):Instal Nginx dari Repositori Resmi

Tambahkan Kunci Keamanan

Di jendela terminal, masukkan berikut ini:

sudo wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key

Tindakan ini akan mengunduh kunci penandatanganan untuk Nginx, yang memverifikasi bahwa Anda mengunduh perangkat lunak asli.

Buka sources.list Berkas untuk Diedit

Di terminal, masukkan berikut ini:

sudo vi /etc/apt/sources.list

Tambahkan Sumber Nginx ke Daftar Repositori

Masukkan baris berikut di /etc/apt/sources.list file yang baru saja Anda buka:

deb https://nginx.org/packages/mainline/debian/ <CODENAME> nginx

deb-src https://nginx.org/packages/mainline/debian/ <CODENAME> nginx

Ganti <CODENAME> dengan nama kode untuk distribusi Debian Anda.

Simpan file dan keluar .

Instal Nginx Rilis Terbaru

Untuk menginstal rilis terbaru Nginx, gunakan perintah:

sudo apt-get remove nginx-common
sudo apt-get update
sudo apt-get install nginx

Langkah 3:Mulai Nginx dan Konfigurasikan untuk Diluncurkan saat Reboot

Untuk memulai Nginx:

sudo systemctl start nginx

Untuk mengaktifkan Nginx:

sudo systemctl enable nginx

Untuk memeriksa apakah Nginx sedang berjalan:

sudo systemctl status nginx

Outputnya akan menunjukkan kepada Anda bahwa layanan aktif (berjalan) , seperti pada gambar di bawah ini:

Langkah 4:Putuskan Tautan File Konfigurasi Default

Di terminal, masukkan berikut ini:

sudo unlink /etc/nginx/sites-enabled/default

Langkah 5:Buat File Konfigurasi Baru

Untuk membuat file konfigurasi baru, masukkan:

cd /etc/nginx/sites-available/
sudo vi custom_server.conf

Ganti custom_server dengan nama yang berarti bagi Anda. Di file baru, masukkan:

server {

listen 80;

location / {

proxy_pass http://my_server;

}

}

Ini adalah contoh proxy terbalik Nginx yang sangat mendasar. Nginx disetel untuk mendengarkan semua lalu lintas di port 80 untuk semua lalu lintas.

proxy_pass perintah mengarahkan semua lalu lintas pada port 80 ke http://my_server . Cukup ubah http://my_server ke lokasi pilihan Anda, dan Nginx akan mencegat permintaan klien dan mengarahkannya ke lokasi yang Anda tentukan. Setelah selesai, simpan file dan keluar.

Langkah 6:Tautkan dan Aktifkan File Konfigurasi

Untuk mengaktifkan file Nginx baru, masukkan:

ln -s /etc/nginx/sites-available/custom_server.conf 
/etc/nginx/sites-enabled/custom_server.conf

Seperti biasa, ganti custom_server dengan nama file konfigurasi yang Anda buat di Langkah 5.

Langkah 7:Uji dan Mulai Ulang Nginx

Untuk menguji Nginx:

sudo service nginx configtest

Untuk memulai ulang Nginx:

sudo service nginx restart

Opsi Konfigurasi Nginx Opsional

Buffer Proxy

Secara default, Nginx menyangga lalu lintas untuk server yang diproksinya. Buffer meningkatkan kinerja server karena respons server tidak dikirim sampai klien selesai mengirim respons lengkap.

Untuk mematikan buffer, buka file konfigurasi dari Langkah 5. Di bawah lokasi/bagian , tambahkan berikut ini:

proxy_buffering off;

Tajuk Permintaan

Header memberikan informasi server tentang permintaan yang dibuat, atau tentang klien.

Nginx mengubah dua bidang header:host dikonfigurasi untuk $proxy_host , dan connection dikonfigurasi untuk close . Jika Anda menggunakan header tersebut, pastikan untuk mengubah perilaku di file konfigurasi.

Jika ada string header yang kosong, Nginx hanya menghilangkan kolom tersebut.

Untuk mengubah cara Nginx menangani heather, gunakan perintah berikut di file konfigurasi Anda:

location / {

proxy_set_header Host $host;

}

Contoh ini memberi tahu Nginx untuk menyetel host ke $host variabel.

Untuk mencegah bidang header diteruskan ke server proxy, gunakan string kosong sebagai berikut:

location / {

proxy_set_header header-variable "";

}

Penyeimbangan Beban

Anda dapat menggunakan file konfigurasi untuk mengarahkan lalu lintas ke beberapa server. Untuk menggunakan konfigurasi ini, file konfigurasi Anda akan terlihat seperti contoh ini:

http   {

server   {

proxy_pass http://my_server

}

}

Dengan kata lain, konfigurasi HTTP keluar dari konfigurasi server dari Langkah 5.

Untuk membuat nama grup server, Gunakan upstream perintah:

http   {

upstream server_group   {

server my.server1.com weight=3;

server my.server2.com;

}

server  {

location / {

proxy_pass http://server_group;

}

}

}

Penunjukan ini membutuhkan dua server – my.server1.com dan my.server2.com - dan menyatukannya. Nginx mem-proxy grup server tersebut dengan nama http://server_group . Anda dapat mengganti namanya sesuka Anda.

Contoh ini menggunakan weight perintah untuk merutekan tiga permintaan ke my.server1.com , lalu 1 permintaan ke my.server2.com . Ini adalah salah satu opsi untuk menyeimbangkan beban klien antar server secara manual. Metode lain adalah dengan menghilangkan penunjukan apa pun, di mana Nginx akan melakukan round-robin permintaan secara merata di antara server yang terdaftar.


Ubuntu
  1. Cara Mengatur Nginx sebagai Proxy Terbalik di Ubuntu 20.04

  2. Mengatur Nginx sebagai Proxy Terbalik di Ubuntu 20.04 - Panduan langkah demi langkah?

  3. Bagaimana cara mengatur curl untuk menggunakan proxy secara permanen?

  1. Cara Mengonfigurasi Nginx Reverse Proxy untuk Kibana

  2. Cara Menyebarkan Proksi Terbalik NGINX di Docker

  3. Cara Mengatur Proksi Terbalik Nginx

  1. Cara Menginstal Nginx di Ubuntu 16.04

  2. Cara Memasang Varnish Reverse Proxy dengan Nginx di Ubuntu 16.04 LTS

  3. Cara menginstal Nginx sebagai Reverse Proxy untuk Apache di Ubuntu 15.10