GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare un proxy inverso Nginx

Nel sistema operativo Linux, un proxy inverso funge da collegamento tra l'host (client) e il server. Raccoglie le richieste del client e le trasmette ad altri server e, infine, fornisce la risposta del server al client, che appare come se provenissero dal server proxy stesso. In questo tutorial, ti mostreremo cos'è un proxy inverso Nginx e come configurarlo sul tuo VPS!

Il client e il server si scambiano continuamente informazioni per lavorare in modo efficiente. In genere, i proxy inversi vengono utilizzati da un server Web. Un proxy inverso o un gateway appare al client proprio come un normale server Web, dove non sono necessarie configurazioni speciali. Il cliente effettua le richieste ordinarie mentre il reverse proxy decide dove trasmettere le informazioni consegnando l'output finale al cliente come se fosse l'origine.

Il proxy inverso Nginx ha una vasta gamma di vantaggi. È tra i server open source più utilizzati su Internet.

I vantaggi dell'utilizzo di Nginx Reverse Proxy

Analizziamo i motivi che spiegano perché questo strumento è così popolare:

  • È semplice da implementare e fornisce all'utente una sicurezza di fascia alta contro gli attacchi ai server Web come DDoS e DoS
  • Nginx Reverse proxy aiuta a creare un carico bilanciato tra diversi server back-end e fornisce la memorizzazione nella cache per un server back-end più lento
  • Nginx non richiede l'impostazione di un nuovo processo per ogni richiesta Web dal client. Piuttosto, la configurazione predefinita prevede un processo di lavoro per CPU
  • Può fungere da server proxy inverso per vari protocolli come HTTP, HTTPS, TCP, UDP, SMTP, IMAP e POP3
  • Può gestire oltre 10000 connessioni con un footprint di memoria ridotto. Nginx può gestire più server web tramite un unico indirizzo IP e consegnare ogni richiesta al server giusto all'interno di una LAN
  • Nginx è uno dei migliori server web per migliorare le prestazioni dei contenuti statici. Inoltre, può anche essere utile servire il contenuto della cache ed eseguire la crittografia SSL per ridurre il carico dal server web
  • Può anche essere utile quando si ottimizza il contenuto comprimendolo per aumentare il tempo di caricamento
  • Nginx può eseguire esperimenti randomizzati o test A/B senza inserire codici JavaScript nelle pagine.

E tutti questi vantaggi sono solo la punta dell'iceberg! Più usi Nginx Reverse Proxy, più funzionalità scoprirai!

Come configurare un proxy inverso Nginx?

Ora configureremo Nginx davanti a un server Web Apache. Abbiamo scelto il server Apache perché gestisce meglio i contenuti dinamici.

Quindi, tutto il contenuto statico andrà a Nginx, mentre il contenuto dinamico andrà ad Apache. Ciò migliorerà le prestazioni ottimizzando la distribuzione dei contenuti in base ai criteri di gestione.

Successivamente, definiremo l'indirizzo IP del server proxy Nginx come 192.x.x.1 e il server Apache back-end come 192.x.x.2 . Dopo aver configurato Apache, possiamo passare a questi passaggi:

1. Installa Nginx

Useremo il comando apt su Ubuntu 18.04:

sudo apt-get update
sudo apt-get install nginx

2. Disattiva l'host virtuale predefinito

Dopo aver installato Nginx, segui il comando seguente per disabilitare l'host virtuale:

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

3. Crea il proxy inverso Nginx

Dopo aver disabilitato l'host virtuale, dobbiamo creare un file chiamato reverse-proxy.conf all'interno di etc/nginx/ siti disponibili directory per conservare le informazioni sul proxy inverso.

Per questo, dovremmo prima accedere alla directory usando il comando cd:

cd etc/nginx/sites-available/

Quindi possiamo creare il file usando l'editor vi:

vi reverse-proxy.conf

Nel file dobbiamo incollare queste stringhe:

server {
    listen 80;
    location / {
        proxy_pass http://192.x.x.2;
    }
}

Nel comando precedente, il punto importante è che il passaggio del proxy consente alle richieste provenienti dal proxy inverso di Nginx di passare a 192.x.x.2:80 , che è il socket remoto Apache. Pertanto, entrambi i server Web, Nginx e Apache, condividono il contenuto.

Una volta completato, salva semplicemente il file ed esci dall'editor vi. Puoi farlo digitando :wq .

Per trasmettere informazioni ad altri server, puoi utilizzare il ngx_http_proxy_module nel terminale.

Ora attiva le direttive collegandoti a /sites-enabled/ utilizzando il seguente comando:

sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/reverse-proxy.conf

4. Prova Nginx e il proxy inverso Nginx

Infine, dobbiamo eseguire un test di configurazione di Nginx e riavviare Nginx per verificarne le prestazioni. Digita il comando seguente per verificare il funzionamento di Nginx sul terminale Linux:

service nginx configtest
service nginx restart

Ricorda, se ricevi un test fallito, molto probabilmente indica che Apache non è stato configurato correttamente.

Conclusione

Ci sono molti vantaggi nell'impostare un proxy inverso Nginx nel sistema operativo Linux. Può aumentare efficacemente le prestazioni e migliorare la sicurezza contro il malware. La configurazione del proxy inverso Nginx è un processo semplice nel terminale Linux. Sebbene ci siano molti modi per installarlo e configurarlo che dipendono completamente dalle tue esigenze, il tutorial sopra è semplice e intuitivo per aiutarti a iniziare con una configurazione del proxy inverso.


Linux
  1. Come configurare Nginx come proxy inverso su Ubuntu 20.04

  2. Configura Nginx come proxy inverso su Ubuntu 20.04 - Guida passo passo?

  3. Come installare Odoo 11 su CentOS 7 con Nginx come proxy inverso

  4. Come installare Odoo 10 su CentOS 7 con Nginx come proxy inverso

  5. Come installare Flectra su Ubuntu 20.04 con Nginx come proxy inverso

Come configurare Nginx come proxy inverso per Apache su Debian 11

Come impostare il proxy inverso Nginx

Come configurare il proxy inverso Nginx su Plesk?

Come configurare Nginx come proxy inverso per Apache su Ubuntu 18.04 VPS

Come configurare Tomcat con Nginx come proxy inverso su Ubuntu 18.04

Come installare NGINX come proxy inverso per Apache su Ubuntu 18.04