Ai vecchi tempi, era abbastanza normale che i siti Web servissero contenuti rispetto al tradizionale protocollo HTTP in quanto la sicurezza non era un grosso problema. Tuttavia, al giorno d'oggi a causa dell'ascesa di crimini informatici come identificare furti, furti di carte di credito, intercettare che è davvero importante proteggere il canale attraverso il quale comunica con il server. Crittografia è un'autorità di certificazione che fornisce i certificati SSL/TLS gratuitamente. I certificati emessi sono validi per 3 mesi, il che significa 90 giorni rispetto a un anno o più dalle autorità di certificazione di livello commerciale. Tuttavia, fornisce la stessa protezione dei certificati a pagamento; Quindi viene spesso scelto da molti blogger e piccoli proprietari di siti Web contro i criminali informatici. Questo articolo intende dimostrare come proteggere le goccioline digitali gira.
Requisiti
Questa guida utilizza Ubuntu 16.04 come sistema operativo su cui è in esecuzione il server web. Tuttavia, gli stessi passaggi possono essere utilizzati per qualsiasi altra versioni di Ubuntu, oltre a quando non vi è alcuna differenza nelle impostazioni. Questa guida presuppone che l'utente abbia già un server Web installato ed è NGINX. Come client SSH, viene utilizzato PUTTY e come si consiglia l'editor di file nano.
Soluzione
- È possibile accedere al server Web creato sulle goccioline tramite protocollo SSH. Scarica e installa PUTTY dal suo sito Web ufficiale. L'applicazione è completamente gratuita.
sudo apt-get Installa stucco
- Dopo aver scaricato PUTTY, vai avanti e scarica il nano. Lo scopo di PUTTY è accedere alla console Linux per digitare i comandi di shell, mentre Nano viene utilizzato per la modifica di file interni come il file predefinito NGINX.
sudo apt-get install nano
- Avvia il putty e vai alla scheda Sessione.
- Nel campo Nome host, digitare l'indirizzo IP della goccia di DigitalOcean in cui è installato il server web. L'indirizzo IP delle goccioline è disponibile in https: // cloud.digitaleceo.com/goccioline. Nel campo della porta, Tipo 22.
- Dopo aver inviato tutti i campi richiesti come mostrato sopra, premi Okay per applicare le modifiche e accedere alla goccia. Quando si registra al sistema, chiederà il nome utente e la password della goccia. Sia il nome utente che la password vengono inviati via email all'e -mail registrata in DigitalOcean durante la creazione della goccia.
- Questa guida utilizza CERTBOT, uno strumento di terze parti per automatizzare l'intero processo di recupero e rinnovo dei certificati digitali. Certbot ha il proprio sito Web da cui possono essere generati i comandi da utilizzare. Secondo CERTBOT, i comandi giusti per installare certbot su Ubuntu sono questi. Innanzitutto aggiorna le informazioni sul pacchetto nel repository locale, quindi installa il pacchetto comune delle proprietà del software che fornisce alcuni script utili nella gestione di pacchetti personali (PPA), quindi installa certbot, quindi aggiorna nuovamente il repository locale pacchetto Python certbot nginx. Assicurati che tutti questi pacchetti siano installati correttamente prima di dirigersi al passaggio successivo.
$ sudo apt-get update
$ sudo apt-get Installa software-Properties-Common
$ sudo ADD-APP-Repository PPA: certbot/certbot
$ sudo apt-get update
$ sudo apt-get Installa Python-Certbot-Nginx
- Passare al sito Web da dove è stato acquistato il dominio. Questa guida utilizza Porkbun come registrar del dominio, quindi aggiungi il record A al dominio. Il tipo è un record, l'host è vuoto se l'IP è associato al dominio root, altrimenti utilizzare il nome di sottodominio senza il dominio root, ad esempio se si tratta di NUCUTA.com, usa solo www. Come tipo di risposta, l'indirizzo IP della goccia.
- Allo stesso modo, reindirizza il traffico WWW al dominio root come segue. Il tipo è "cname", host è "www", la risposta è "nucuta.com "o il tuo dominio. Questo passaggio è importante in quanto reindirizza tutto il traffico del www verso il dominio root.
- Utilizzare il seguente comando su PUTTY per accedere al file predefinito di nginx. Il file predefinito per impostazione predefinita utilizza un blocco server in cui si trova il dominio principale. Nano Editor è altamente raccomandato in quanto è abbastanza conveniente da usare rispetto ad altri.
sudo nano/etc/nginx/siti-disponibile/impostazione predefinita
- Nel file predefinito, vai al blocco server e reindirizza il traffico HTTP su HTTPS e nell'altro blocco server in cui viene gestito il traffico protetto, modifica il nome Server_
Server_name nucleta.com www.nucleta.com
- Digitare il comando seguente per riavviare il server Web Nginx. Ogni volta che è stata apportata una modifica nel file predefinito, l'intero server Nginx deve essere riavviato per nuove modifiche per avere qualsiasi effetto.
sudo systemctl ricarica nginx
- Per impostazione predefinita, il firewall blocca tutto il traffico tranne la porta 80 e 22. HTTPS utilizza la porta 443; Quindi deve essere aperto manualmente per accedere al server Web dal lato client. L'apertura della porta dipende dal firewall.
In CSF (firewall server configurato)
- Apre il file CSF Configura digitando il comando seguente.
Nano/etc/CSF/CSF.conf
- Aggiungi le seguenti porte a TCP dentro e fuori.
TCP_IN = "20,21,22,25,53,80,443"
TCP_OUT = "20,21,22,25,53,80,443"
- Riavvia il CSF digitando
CSF -r
In USF (firewall semplice)
- Digitare i seguenti due comandi per aggiungere HTTPS all'elenco delle eccezioni. Il pacchetto "Nginx Full" ha porte HTTP e HTTPS; Quindi l'aggiunta del pacchetto completo consente sia il traffico dentro che fuori.
sudo ufw consenti 'nginx full'
sudo ufw elimina consenti 'nginx http'
- Digita il comando seguente per vedere lo stato
Stato UFW
- Controlla la porta 443 da un sito Web esterno per assicurarsi che si apra di sicuro. Se la porta è aperta, dirà "La porta 443 è aperta"
- Ora usa il certificato per recuperare il certificato SSL nel dominio. Il parametro D è necessario per specificare il dominio. Crittografia rilascia un certificato sia per root che per il sottodominio WWW. Avere solo una per entrambe le versione emetterà un avviso nel browser se un visitatore accede all'altra versione; Quindi è importante ottenere il certificato per entrambe le versioni.
sudo certbot --nginx -d nucuta.com -d www.nucleta.com
- CertBot chiederà di reindirizzare tutto il traffico HTTP a HTTPS, ma non è richiesto come è già stato fatto in uno dei passaggi precedenti.
- Ora vai al sito Web SSL Lab e controlla la qualità o qualsiasi altro problema del certificato e la sua configurazione. https: // www.ssllabs.com/ssltest/
- Se la configurazione corrente non è abbastanza protetta, vai al generatore di configurazione MOZILLA SSL e genera le impostazioni per il tuo server Web. https: // mozilla.github.IO/Server-lato-TLS/SSL-CONFIG-GENERATOR/. Poiché qui utilizza Nginx, assicurati di utilizzare NGINX come server Web. Offre tre opzioni, intermedio, vecchio e moderno. La vecchia opzione rende il sito Web compatibile con praticamente tutti i browser, inclusi browser super vecchi come IE 6, mentre l'opzione intermedia lo rende ideale per gli utenti medi, l'opzione moderna genera la configurazione richiesta per la massima sicurezza, ma come compromesso del sito Web non funzionerà correttamente sui browser più vecchi. Quindi, è altamente raccomandato per i siti Web in cui la sicurezza è una delle principali preoccupazioni.
- Passare al tuo sito Web e fare clic con il tasto destro sull'icona di blocco, quindi l'opzione "certificato" per visualizzare il certificato.
- Se mostra una data futura dopo in Opzione valida, il che significa che il processo di acquisizione del certificato è stato completato. Tuttavia, è importante reindirizzare il traffico alla versione pertinente del dominio, ad esempio il traffico HTTP e WWW può essere reindirizzato il dominio radice HTTPS come mostrato in questa guida. Il certificato verrà automaticamente rinnovato da certbot; Quindi è disponibile per sempre per il proprietario del sito Web gratuitamente.