GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare l'SSL Cloudflare di origine con Nginx

Panoramica

In questo articolo esamineremo i passaggi su come configurare il certificato SSL Cloudflare di origine con il server Web Nginx. Questi passaggi sono per server Web che funzionano su Linux (CentOS, Debian ecc...). Cloudflare è una piattaforma di protezione CDN e DDoS piuttosto famosa ma offre molti altri servizi:uno di questi servizi sono i certificati SSL. Se stai già utilizzando Cloudflare, puoi anche acquisire un certificato SSL da loro. I certificati SSL sono gratuiti (anche nel piano gratuito) ma i certificati del server di origine sono gratuiti. I certificati Edge non lo sono. Uno svantaggio dei certificati di origine è che il certificato generato è condiviso (un certificato SSL da più utenti), ma il lato positivo è che il certificato fornito può durare fino a 15 anni e supporta TLS v1.3, HSTS e Onion instradamento.

Genera il certificato SSL su Clouflare

Quindi per acquisire il certificato SSL da Cloudflare, devi già utilizzare i loro servizi e aggiungere il tuo dominio su Cloudflare. Nella tua dashboard, vai al menu SSL/TLS e poi vai al server Origin.

Fare clic sull'opzione per creare un certificato. Verrà quindi visualizzato un messaggio in cui è necessario scegliere il tipo di chiave (vai con il tipo RSA). Inoltre, seleziona che desideri che Cloudflare generi la chiave per te.

Successivamente, seleziona per quanto tempo desideri che siano validi. Cloudflare offre chiavi valide da 7 giorni fino a 15 anni. Dopo aver fatto clic sul pulsante Crea, verrà visualizzata una finestra in cui verranno visualizzate le chiavi pubbliche e private.

Copia entrambe le chiavi. Quelli sono necessari per il passaggio successivo.

Crea il file del certificato e il file della chiave privata sul server

Una volta generato il certificato SSL, il passaggio successivo consiste nell'installare il certificato sul server Linux. Per questo, dobbiamo creare due file sul nostro server e in quei file incollare le chiavi che abbiamo copiato da Cloudflare. Per creare file, possiamo semplicemente utilizzare un editor di testo e quindi nel nuovo file incolliamo i codici chiave. Ogni file di certificato deve andare nella directory specifica. Puoi usare questi comandi per creare i file:

sudo nano /etc/ssl/certs/cert.pem

sudo nano /etc/ssl/private/key.pem

Come puoi vedere, abbiamo bisogno di due file, per ogni chiave che abbiamo copiato da Cloudflare. Inoltre, puoi dire dalla riga di comando dove devono andare, in quale directory. Innanzitutto il file cert.pem:in quello incolla il codice del certificato e nel file key.pem, incolla il codice della chiave privata. Una volta incollato il codice, salva i file.

Configura il tuo server e Nginx con Cloudflare SSL

Dopo aver creato i file del certificato, ora dobbiamo configurare origin cloudflare ssl con nginx, il che significa che dobbiamo dire a nginx di usare cloudflare origin ssl che abbiamo generato in precedenza. Sempre con l'editor di testo apri la configurazione del server Nginx per il tuo sito web. Di solito si trova in:

ecc/nginx/siti-disponibili/predefinito

oppure se non utilizzi il file di configurazione predefinito e disponi di un file di configurazione specifico per il tuo sito, modifica invece quel file. Nel file, subito dopo – ascolta 80 righe:aggiungi anche queste righe:

listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

Salva il file ed esci. Alla fine, la nuova configurazione dovrebbe assomigliare a questa:

server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;

ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;

root /var/www/html/;
index index.php index.html index.htm;

server_name somesite.com www.somesite.com;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
## include fastcgi_params;
}

}

Nota:la riga del nome del server dovrebbe riflettere il tuo nome di dominio. La voce nella configurazione sopra è usata solo come esempio.

Una volta salvata la configurazione, esci dall'editor e riavvia il server Nginx:

sudo systemctl restart nginx.service

E questo è tutto.

Riepilogo

Abbiamo illustrato i passaggi su come configurare l'SSL Cloudflare di origine con Nginx. Ancora una volta, devo dichiarare che i certificati di origine sono gli unici gratuiti nel piano gratuito di Cloudflare. Non sono la soluzione SSL perfetta, ma funzionano abbastanza bene e supportano molti protocolli SSL. Considerando che offrono certificati gratuiti fino a 15 anni, non è affatto male.

Questo ovviamente non è l'unico metodo gratuito per proteggere il tuo sito Web con un SSL gratuito. Un'altra buona opzione, che è anche, se non il metodo più popolare, è con un SSL del servizio Let's encrypt. Abbiamo coperto lo stesso processo su come proteggere un sito Web Nginx con Let's Encrypt SSL. Puoi controllare il post su questo link.

Ti ringrazio per il tuo tempo e spero che le informazioni siano state utili.


Linux
  1. Come installare il certificato SSL su NGINX

  2. Come configurare Nginx per funzionare con PHP tramite PHP-FPM

  3. Come configurare più SSL su un IP con Nginx

  4. Come configurare IMAP con SSL

  5. Come configurare VSFTPD con connessione crittografata SSL/TLS?

Come utilizzare Let's Encrypt con Cloudflare

Come utilizzare CloudFlare CDN con un SSL?

Come configurare PHP-FPM con NGINX

Come proteggere Nginx con Let's Encrypt certificato SSL

Come configurare NGINX su un server CentOS 7

Come configurare il bilanciamento del carico con NGINX su Jelastic Cloud