GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Varnish Reverse Proxy con Nginx su Ubuntu 16.04 LTS

Varnish è un server proxy incentrato sulla memorizzazione nella cache HTTP. È progettato come acceleratore HTTP e può fungere da proxy inverso per il tuo server Web Apache o Nginx. La vernice è stata utilizzata per siti Web di alto profilo e ad alto traffico, tra cui Wikipedia, The Guardian e New York Times.

In questo tutorial, ti mostrerò come installare e configurare l'acceleratore HTTP di vernice come proxy inverso per il server web Nginx. Il vero server web Nginx verrà eseguito su una porta HTTP non standard 8080. E Varnish verrà eseguito come proxy inverso sulla porta HTTP 80. Per questa guida, utilizzeremo il server Ubuntu 16.04.

Cosa faremo

  1. Installa Nginx su Ubuntu 16.04
  2. Configura Nginx sulla porta 8080
  3. Installa Varnish su Ubuntu 16.04
  4. Configura Varnish come proxy inverso per Nginx
  5. Configura Firewall UFW
  6. Test

Prerequisiti

  • Ubuntu 16.04
  • privilegi radice

Passaggio 1:installa Nginx su Ubuntu 16.04

Il primo passo che dobbiamo fare per questo tutorial è installare Nginx sul sistema Ubuntu 16.04. In questo passaggio, installeremo Nginx (è disponibile nel repository ufficiale di Ubuntu), quindi avvieremo il servizio e quindi abiliteremo l'avvio ogni volta all'avvio del sistema.

Installa Nginx dal repository di Ubuntu usando il comando apt.

sudo apt install nginx -y

Al termine dell'installazione, avvia Nginx e abilitalo all'avvio ogni volta all'avvio del sistema utilizzando i comandi systemctl di seguito.

systemctl start nginx
systemctl enable nginx

Il server Web Nginx è in esecuzione sulla porta HTTP predefinita:verificalo utilizzando netstat e assicurati che la porta HTTP sia utilizzata da Nginx.

netstat -plntu

Passaggio 2 - Configura Nginx sulla porta 8080

In questo passaggio, configureremo nginx per l'esecuzione su una porta HTTP non standard 8080. A tale scopo, dobbiamo modificare i file dell'host virtuale nella directory 'siti-disponibili'.

Vai alla directory di configurazione di Nginx e modifica il file host virtuale 'predefinito' usando vim.

cd /etc/nginx/
vim sites-available/default

Modifica il valore della riga "ascolta" in 8080.

        listen 8080 default_server;
        listen [::]:8080 default_server;

Salva ed esci.

Ora prova la configurazione di Nginx e assicurati che non ci siano errori. Quindi riavvia il servizio.

nginx -t
systemctl restart nginx

Ora prova di nuovo nginx usando netstat e assicurati che sia in esecuzione sulla porta HTTP non standard 8080.

netstat -plntu

Il server web Nginx è stato installato e ora è in esecuzione sulla porta 8080.

Passaggio 3:installa Varnish su Ubuntu 16.04

Ora dobbiamo installare Varnish sul sistema. Possiamo installare l'ultima versione dello strumento dal sorgente. E per questa guida, installeremo la vernice dal repository di Ubuntu - Varnish v4.

Installa la vernice usando il comando apt di seguito.

sudo apt install varnish -y

Ora avvia Paint e abilitalo all'avvio all'avvio del sistema utilizzando i comandi systemctl di seguito.

systemctl start varnish
systemctl enable varnish

Per impostazione predefinita, Paint utilizzerà la porta 6081 per l'accesso pubblico e la porta 6082 per l'interfaccia Web di amministrazione di Paint. Controllalo usando il comando netstat e assicurati che quelle porte siano nell'elenco.

netstat -plntu

Varnish HTTP Accelerator è stato installato.

Passaggio 4:configura Varnish come proxy inverso per Nginx

In questo tutorial, useremo Varnish come proxy inverso per il server web Nginx. Varnish verrà eseguito sulla porta HTTP 80 e il server Web Nginx sulla porta HTTP 8080 (è completo).

In questo passaggio, configureremo Varnish per Nginx, definiremo il server di back-end, quindi cambieremo Paint in modo che venga eseguito sotto la porta HTTP 80.

Ora vai alla directory di configurazione di Paint e modifica il file 'default.vcl'.

cd /etc/varnish
vim default.vcl

Sulla riga di backend, definisci la configurazione come di seguito.

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

Salva ed esci.

Nota:

  • .host =Indirizzo del server web di back-end.
  • .port =Il server Web di backup in esecuzione.

La configurazione del backend è stata completata.

Successivamente, dobbiamo configurare Varnish per l'esecuzione sotto la porta HTTP 80. Vai alla directory '/etc/default' e modifica il file di configurazione di vernice 'vernish'.

cd /etc/default/
vim varnish

Nella riga 'DAEMON_OPTS', cambia la porta predefinita 6081 in HTTP port 80.

DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

Salva ed esci.

Ora modifica il file del servizio di vernice nella directory '/lib/systemd/system'. Vai alla directory di sistema systemd e modifica il file paint.service.

cd /lib/systemd/system
vim varnish.service

Nella riga 'ExecStart', cambia la porta di vernice 6081 in porta HTTP 80.

ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :80 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m

Salva ed esci.

Ricarica la configurazione di sistema e riavvia Paint.

systemctl daemon-reload
systemctl restart varnish

Al termine della configurazione, seleziona Varnish utilizzando il comando netstat di seguito.

netstat -plntu

Assicurati che Varnish sia in esecuzione sulla porta HTTP 80 come mostrato di seguito.

La configurazione della vernice come proxy inverso per Nginx è stata completata.

Passaggio 5:configurazione del firewall UFW

Il sistema Ubuntu viene fornito con un firewall leggibile predefinito chiamato "UFW". Se non hai il pacchetto, installalo usando il comando apt qui sotto.

sudo apt install ufw

In questo passaggio, attiveremo il firewall e apriremo nuove porte per SSH, HTTP e HTTPS.

Esegui i comandi ufw di seguito.

ufw allow ssh
ufw allow http
ufw allow https

Ora attiva il firewall e abilitalo all'avvio ogni volta all'avvio.

ufw enable

Digita 'y' e premi Invio per confermare.

Il firewall UFW è attivato e la porta HTTP e HTTPS è ora accessibile dalla rete esterna.

Fase 6 - Test

- Test utilizzando cURL

Testare la vernice usando il comando curl, così possiamo vedere le intestazioni HTTP dal server.

curl -I hakase-labs.co

E otterrai il risultato dell'intestazione HTTP "Via:1.1 paint-v4" come mostrato di seguito.

- Test utilizzando il browser web

Apri il tuo browser web e digita il seguente URL o indirizzo del server. Il mio è: http://hakase-labs.co

Assicurati di ottenere la pagina predefinita di Nginx come di seguito.

- Testare il registro della vernice

Varnish fornisce alcuni comandi per la gestione e la visualizzazione dei registri. Useremo 'varnishncsa' per ottenere il registro di accesso alla vernice.

varnishncsa

E otterrai il risultato come mostrato di seguito.

L'installazione e la configurazione della vernice come proxy inverso per il server Web Nginx sono state completate.


Ubuntu
  1. Come distribuire Modsecurity con Nginx su Ubuntu 20.04 LTS

  2. Come installare Odoo 11 su Ubuntu 16.04 con Nginx come proxy inverso

  3. Come installare Odoo 10 su Ubuntu 16.04 con Nginx come proxy inverso

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

  5. Come installare Odoo 12 su Ubuntu 18.04 con Nginx come proxy inverso

Come installare Rocket.chat con proxy inverso nginx su Ubuntu 20.04

Come installare phpMyAdmin con Nginx (LEMP) su Ubuntu 18.04 LTS

Come installare Nginx con il modulo Ngx_Pagespeed su Ubuntu 16.04 LTS

Come installare Joomla con Nginx su Ubuntu 18.04 LTS

Come installare phpMyAdmin con Nginx su Ubuntu 18.04 LTS

Come installare phpMyAdmin con Nginx su Ubuntu 20.04 LTS