GNU/Linux >> Linux Esercitazione >  >> Linux

Proteggi Nginx con Let's Encrypt SSL Certificate su Ubuntu 18.04

Cos'è il certificato SSL?

Nel tempo, i casi di violazioni della sicurezza relative a Internet sono aumentati poiché gli hacker continuano a lavorare 24 ore su 24 per rubare i dati degli utenti per scopi dannosi. Un certificato SSL è un certificato digitale che viene installato sui server dei siti Web principalmente per crittografare i dati inviati tra il browser dell'utente e il server in modo che solo il destinatario previsto possa accedervi. Questo è fondamentale perché, senza crittografia, le informazioni vengono inviate come dati di testo normale e possono essere facilmente intercettate dagli hacker.

Per questo motivo, la maggior parte dei negozi di e-commerce e delle piattaforme di pagamento di denaro online come PayPal crittografano i propri siti Web. Il certificato SSL consente anche l'autenticazione e garantisce che le informazioni vengano inviate al server giusto e non a un hacker.

Google apprezza i siti protetti

Il certificato SSL aiuta a posizionare il tuo sito più in alto su Google. Secondo l'annuncio di Google, i siti crittografati SSL si classificheranno più in alto rispetto a quelli senza e che sono considerati non sicuri. Un sito protetto è simboleggiato da un lucchetto sulla barra degli URL e l'URL preceduto da https invece di HTTP. Se i tuoi siti non hanno un'estensione HTTPS sicura, Google indica l'URL del sito come "Non sicuro" e questo può avere un impatto negativo
sul ranking del tuo sito.

Nginx con Let's Encrypt SSL Certification su Ubuntu

In questo articolo, vedremo come proteggere Nginx con Let's encrypt SSL su Ubuntu 18.04. Let's Encrypt è un SSL gratuito e automatizzato fornito dall'autorità di crittografia Let's. Entro il 2018, Let's Encrypt aveva protetto oltre 150 milioni di siti Web.

Iniziamo e vediamo come possiamo proteggere Nginx con Let's encrypt SSL su Ubuntu 18.04.

Prerequisiti

Per iniziare, assicurati di avere quanto segue:

  • Istanza server del server Ubuntu 18.04 con accesso ssh
  • Uso non root con privilegi sudo
  • Un nome di dominio completo (FQDN) con un record A puntato all'indirizzo IP del server
  • In questo esempio utilizzeremo il nome di dominio crazytechgeek.info che punta a un VPS con indirizzo IP 18.191.46.130 .

Passaggio 1. Installazione di Nginx

La prima cosa sarà installare il server web Nginx. Ma prima, aggiorna il tuo sistema accedendo come utente non root ed eseguendo il comando seguente.

$ sudo apt update

Quindi, installa Nginx con il seguente comando.

$ sudo apt install nginx

Risultato :

Una volta installato, verifica che Nginx sia in esecuzione eseguendo il comando seguente.

$ sudo systemctl status nginx

Risultato :

Grande! Ora che abbiamo installato il nostro server web, procediamo al passaggio successivo.

Passaggio 2. Installa Certbot

Installiamo ora Certbot sul nostro server. In questo esempio utilizzeremo il repository del software Ubuntu che contiene tutti i file aggiornati. Per aggiungere il repository Certbot, esegui il comando seguente.

$ sudo add-apt-repository ppa:certbot/certbot

Risultato :

Installazione di Certbot

Per informare i repository di sistema delle modifiche apportate, aggiorna il sistema.

$ sudo apt update

Passaggio 3. installa il pacchetto Certbot Nginx

Quindi installeremo il pacchetto Certbot Nginx. Per ottenere ciò, esegui il comando seguente:

$ sudo apt-get install python-certbot-nginx

Risultato

Passaggio 4. Aggiornamento del firewall per consentire il traffico HTTPS

dobbiamo consentire il traffico HTTPS attraverso il firewall affinché SSL funzioni utilizzando la porta 443. Controlliamo prima lo stato del firewall.

$ sudo ufw status

Risultato

Prima di abilitare il firewall, consentiamo prima "Nginx Full" che si occuperà sia di HTTP che di HTTPS.

$ sudo ufw allow 'Nginx Full'

Risultato

Ora abilitiamo il firewall ufw. Premi "y" quando richiesto.

$ sudo ufw enable

Risultato

Verifichiamo se le regole sono state aggiunte al firewall.

$ sudo ufw status

Risultato

Stato Ufw Attivo

Passaggio 5. Generazione del certificato SSL

L'ultima parte è la generazione del certificato Let's Encrypt SSL. Per ottenere ciò, usa la sintassi seguente.

$ sudo certbot --nginx -d example.com -d www.example.com

Questo genererà il certificato SSL che sarà valido per esempio.com e www.esempio.com.

Nel nostro caso, avremo;

$ sudo certbot --nginx -d crazytechgeek.info -d www.crazytechgeek.info

Risultato

Se stai utilizzando Certbot per la prima volta, ti verrà prima richiesto di inserire un indirizzo email.

Verrà quindi avviata la comunicazione con il server Let's Encrypt e proverai a verificare che tu controlli il dominio per il quale stai chiedendo un certificato.

Prossimo. Premi A per accettare i termini di servizio.

Successivamente, ti verrà chiesto se desideri che il tuo indirizzo email sia condiviso con EFF. Qui puoi decidere se accettare o meno.

Il passo successivo è dove tutto conta. Questo è il punto in cui ti verrà richiesto di reindirizzare le richieste da HTTP a HTTPS. Seleziona la seconda opzione.

Se tutto è andato bene, riceverai un messaggio di verifica che tutto è andato bene.

Meraviglioso! hai installato con successo Let's encrypt SSL sul tuo server web Nginx.

Per verificarlo, vai all'indirizzo del tuo server nel browser e aggiorna.

Tieni presente che l'URL è cambiato da HTTP a HTTPS all'inizio. Per visualizzare maggiori informazioni sul certificato SSL, fai clic sul simbolo del lucchetto e seleziona l'opzione "Certificato".

Risultato

Rinnova il certificato SSL Let's Encrypt

Crittografiamo la validità del certificato è di 90 giorni. Ciò significa che il rinnovo è dopo 3 mesi. Il rinnovo per l'automazione viene eseguito automaticamente da Let's encrypt. Per testare il processo di rinnovo, esegui un test con Certbot come mostrato.

sudo certbot renew --dry-run

Se poi non ci sono errori, tutto è andato secondo il piano e secondo necessità avverrà il rinnovo automatico. Tutti i messaggi sulla scadenza della CA verranno inviati all'indirizzo e-mail specificato durante la configurazione.


Linux
  1. SSL gratuito per Nginx su Centos di Let's encrypt

  2. Proteggi Nginx con Let's Encrypt SSL su Debian 10/11

  3. Proteggi Nginx con Let's Encrypt su Ubuntu 18.04 - Come farlo?

  4. Come proteggere Nginx con Let's Encrypt su Ubuntu 20.04

  5. Come proteggere una connessione SSL con Apache su Ubuntu 18.04

Come installare Let's Encrypt SSL con Nginx su CentOS 7

Come installare Let's Encrypt SSL con Nginx su Ubuntu 16.04 LTS

Come proteggere Nginx con Let's Encrypt certificato SSL

Come proteggere il server LEMP con Let's Encrypt Free SSL su Ubuntu 18.04 VPS

Come proteggere Nginx con Let's Encrypt su CentOS 8

Come proteggere Nginx con Let's Encrypt su Ubuntu 20.04