GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare e configurare Nginx su Ubuntu 18.04 / Debian 9

Nginx è un server web gratuito e open source, può essere utilizzato anche come proxy inverso , Bilanciatore del carico HTTP , Cache HTTP e proxy di posta . Nginx è disponibile per tutti i sistemi operativi simili a Unix e rilasciato con licenza simile a BSD.

Nel tutorial impareremo come installare l'ultima versione di Ngnix su Ubuntu 18.04 LTS e Debian 9 Server,

Installazione di Nginx su Ubuntu 18.04 LTS / Debian 9

I passaggi di installazione di Nginx su entrambi i sistemi operativi Ubuntu 18.04 e Debian 9 sono identici, esegui i comandi seguenti uno dopo l'altro dal terminale,

[email protected]:~$ sudo apt update
[email protected]:~$ sudo apt install nginx -y

Avvia e abilita il servizio Nginx

Esegui i comandi seguenti per avviare e abilitare il servizio nginx,

[email protected]:~$ sudo systemctl start nginx
[email protected]:~$ sudo systemctl enable nginx
Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx
[email protected]:~$

Usa i comandi seguenti per verificare lo stato del servizio ngnix,

[email protected]:~$ sudo systemctl status nginx
[email protected]:~$ sudo systemctl is-active nginx

L'output dei comandi precedenti sarebbe qualcosa di simile al seguente,

Consenti porte Nginx (80 e 443) nel firewall del sistema operativo

Nel caso in cui il firewall del sistema operativo sia abilitato e configurato sul tuo server Ubuntu 18.04 e Debian 9, esegui i comandi ufw seguenti per consentire la porta 80 e 443,

[email protected]:~$ sudo ufw allow 80/tcp
Rules updated
Rules updated (v6)
[email protected]:~$ sudo ufw allow 443/tcp
Rules updated
Rules updated (v6)
[email protected]:~$

Ora verifica le regole usando il comando seguente,

[email protected]:~$ sudo ufw status numbered
Status: active
     To                         Action      From
     --                         ------      ----
[ 1] 80/tcp                     ALLOW IN    Anywhere
[ 2] 443/tcp                    ALLOW IN    Anywhere
[ 3] 22/tcp                     ALLOW IN    Anywhere
[ 4] 80/tcp (v6)                ALLOW IN    Anywhere (v6)
[ 5] 443/tcp (v6)               ALLOW IN    Anywhere (v6)
[ 6] 22/tcp (v6)                ALLOW IN    Anywhere (v6)
[email protected]:~$

Una volta che hai finito con le modifiche di cui sopra, verifichiamo la pagina di benvenuto di Nginx!!!

Apri il tuo browser Web, digita:http://{Your-Server-IP-Address}

Blocco server/Host virtuale in Nginx

In Apache Web Server abbiamo un concetto di host virtuali in cui possiamo definire i dettagli di più siti Web, allo stesso modo in Nginx abbiamo Server block significa blocco per ogni sito Web, esaminiamo il blocco del server predefinito (/etc/nginx/sites -disponibile/predefinito ) e quindi creeremo il blocco server del nostro sito,

[email protected]:~$ sudo vi /etc/nginx/sites-available/default

Definisci il tuo blocco server personalizzato

Supponiamo che io voglia creare un blocco server personalizzato per il server web www.linuxtechi.lan,

Crea una radice del documento usando il comando sotto,

[email protected]:~$ sudo mkdir  /var/www/linuxtechi

Crea un index.html nella radice del documento del server Web,

[email protected]:~$ sudo vi /var/www/linuxtechi/index.html
<!DOCTYPE html>
<html>
<head>
<title>Welcome to LinuxTechi</title>
</head>
<body>
<h1>Welcome to LinuxTechi</h1>
<p>LinuxTechi Test Page running on NGINX Web Server - Ubuntu 18.04</p>
</body>
</html>

Ora crea il tuo blocco server creando un file “linuxtechi.lan ” con il seguente contenuto nella cartella /etc/nginx/sites-available

[email protected]:~$ sudo vi /etc/nginx/sites-available/linuxtechi.lan
server {
    listen 80;
    root /var/www/linuxtechi;
    index index.html;
    server_name www.linuxtechi.lan;
}

Per attivare il blocco del server creato sopra, creare un collegamento simbolico da “/etc/nginx/sites-available/linuxtechi.lan " a "/etc/nginx/sites-enabled

[email protected]:~$ sudo ln -s /etc/nginx/sites-available/linuxtechi.lan /etc/nginx/sites-enabled

Ora riavvia il tuo servizio nginx usando il comando seguente,

[email protected]:~$ sudo systemctl restart nginx

Nota: Nel caso in cui non disponi di un server DNS, dovresti aggiungere le voci di seguito nel file hosts della tua macchina client,

192.168.0.107 www.linuxtechi.lan

Ora accedi al tuo server web tramite l'URL:http://{Web-Server-Name}

Nel mio caso, l'URL è http://www.linuxtechi.lan

Abilita i certificati SSL per il tuo server NGINX

A partire da ora il nostro server Web nginx è in esecuzione su una porta 80 non sicura, per rendere sicuro il server Web è necessario installare i certificati SSL. Puoi ottenere i certificati SSL da fonti attendibili oppure puoi anche utilizzare certificati autofirmati generati tramite il comando openssl.

In questo tutorial sto generando i certificati per il mio server web usando il comando openssl,

[email protected]:~$ sudo openssl req -x509 -days 703 -sha256 -newkey rsa:2048 -nodes -keyout /etc/ssl/private/linuxtechi.key -out /etc/ssl/certs/linuxtechi-cert.pem
[sudo] password for pkumar:
Generating a 2048 bit RSA private key
........................................................................
writing new private key to '/etc/ssl/private/linuxtechi.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:IN
State or Province Name (full name) [Some-State]:Delhi
Locality Name (eg, city) []:Delhi
Organization Name (eg, company) [Internet Widgits Pty Ltd]:LinuxTechi
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:www.linuxtechi.lan
Email Address []:[email protected]
[email protected]:~$

Il comando sopra ha generato la chiave privata con "linuxtechi.key ” e certificati con nome “linuxtechi-cert.pem ", questi certificati saranno applicabili per i prossimi due anni.

Ora aggiorna il tuo blocco server, aggiungi la chiave e la posizione del certificato e cambia la porta del server web da 80 a 443,

[email protected]:~$ sudo vi /etc/nginx/sites-available/linuxtechi.lan
server {
    listen 443 ssl;
    root /var/www/linuxtechi;
    index index.html;
    server_name www.linuxtechi.lan;
    ssl_certificate /etc/ssl/certs/linuxtechi-cert.pem;
    ssl_certificate_key /etc/ssl/private/linuxtechi.key;
}

Riavvia il servizio nginx usando il seguente comando,

[email protected]:~$ sudo systemctl restart nginx
[email protected]:~$

Accedi al tuo server Web su protocollo https come,

https://www.linuxtech.lan

Nota: Poiché abbiamo installato i nostri certificati autofirmati, dobbiamo prima controllare/fare clic su "Aggiungi eccezione" e quindi su "Conferma eccezione di sicurezza" durante l'accesso al server web su https.

Ciò conferma che abbiamo abilitato con successo i certificati autofirmati sul nostro server Web Nginx e conclude l'articolo, se ti piace l'articolo condividi il tuo feedback e commenti nella sezione commenti qui sotto.


Ubuntu
  1. Come installare e configurare Nginx su Ubuntu 20.04

  2. Come installare e configurare un server NFS su Ubuntu 20.04

  3. Come installare e configurare Algo VPN Server su Ubuntu 20.04

  4. Come installare e configurare il server DHCP su Ubuntu 20.04

  5. Come installare e configurare il server Redis in Ubuntu

Come installare e configurare il server LAMP su Ubuntu

Come installare e configurare il server OpenLDAP su Ubuntu 16.04

Come installare e configurare VNC su Ubuntu Server 20.04

Installa e configura Virtualmin su Ubuntu 20.04 / Debian 10 Server

Come installare e configurare Nginx in Ubuntu 20.04 e Ubuntu 21.04

Come installare Nginx su Ubuntu