Usiamo Let's Encrypt SSL con il tuo progetto WordPress

Che cosa è Let's Encrypt?

Per anni, l'acquisto, il rinnovo, l'installazione e la gestione dei certificati SSL mi hanno travolto con costi e complessità. Ora, Let's Encrypt lo rende abbastanza semplice e gratuito.

Let's Encrypt è un'autorità di certificazione emergente, gratuita, automatizzata e aperta, presentata da una società di pubblica utilità della California chiamata Internet Security Research Group, che ha anche uno status senza scopo di lucro. 

Il suo obiettivo è rendere HTTPS il protocollo predefinito per browser Internet per garantire maggiore privacy e sicurezza sul web. Mozilla e Electronic Frontier Foundation sono due dei suoi sponsor di platino:

Let's Encrypt è entrato nella versione beta pubblica a dicembre, quindi ora posso guidarti facilmente nell'esplorazione dei suoi servizi.

In questo tutorial, ti guiderò attraverso l'installazione di Let's Encrypt su alcuni dei miei siti web, incluso il mio sito di consulenza su WordPress, http://lookahead.io, che presto sarà https: //.

Prima di iniziare, ricorda, cerco di partecipare alle discussioni di seguito. Se hai una domanda o un suggerimento sull'argomento, per favore pubblica un commento qui sotto o contattami su Twitter @reifman.

Let's Encrypt Feature Summary

Let's Encrypt gira su Python che funziona con Apache per automatizzare la registrazione e il rinnovo dei certificati, semplificando il processo di attivazione della capacità HTTPS per qualsiasi sito Web, incluso WordPress.

Ecco i principali vantaggi offerti da Let's Encrypt:

  • Gratuito: Chiunque abbia un nome di dominio può registrare un certificato di fiducia senza costi.
  • Automatico: Un server Web Apache può facilmente acquisire un certificato, configurarlo in sicurezza e gestire automaticamente il rinnovo.
  • Sicuro: Let's Encrypt promuoverà le best practice di sicurezza TLS, sia come autorità di certificazione che aiutando i siti a mantenere server sicuri.
  • Trasparente: Tutte le transazioni di certificati sono registrate pubblicamente e disponibili per l'ispezione.
  • Aperto: Il protocollo di rilascio e rinnovo automatico sarà pubblicato come standard aperto.
  • Cooperativa: Let's Encrypt è uno sforzo comunitario per il beneficio di tutti.

Installare SSL con Let's Encrypt

Iniziamo aggiornando il mio server, Apache Ubuntu.

sudo apt-get update

Se Git non è installato sul tuo server, è meglio installarlo Let's Encrypt:

sudo apt-get install git

Una volta installato, clonare il software Let's Encrypt nella sottodirectory opt di Apache per applicazioni di terze parti:

sudo git clone https://github.com/letsencrypt/letsencrypt / opt / letsencrypt

Per prima cosa ho sperimentato l'installazione di Let's Encrypt sull'applicazione per il mio lettore di notizie Fever, non su WordPress. Lo ospito su http://fever.lookahead.io:

cd / opt / letsencrypt ./letsencrypt-auto --apache -d fever.lookahead.io

L'installazione guidata

Per iniziare, ti verrà chiesto il tuo indirizzo email:

Quindi mostrati i Termini di servizio:

Let's Encrypt ti offre la possibilità di offrire HTTPS come opzione secondaria o di indirizzare tutto il traffico verso HTTPS:

Hai finito in pochi minuti:

Ti verranno inoltre mostrate alcune note sulla scadenza e il rinnovo del certificato:

NOTE IMPORTANTI: - Congratulazioni! Il tuo certificato e catena sono stati salvati su /etc/letsencrypt/live/lookahead.io/fullchain.pem. Il tuo cert scadrà il 2016-05-03. Per ottenere una nuova versione del certificato in futuro, è sufficiente eseguire nuovamente Let's Encrypt. - Le credenziali dell'account sono state salvate nella directory di configurazione Let's Encrypt su / etc / letsencrypt. Ora dovresti fare un backup sicuro di questa cartella. Questa directory di configurazione conterrà anche certificati e chiavi private ottenute da Let's Encrypt, quindi fare i backup regolari di questa cartella è l'ideale. - Se ti piace Let's Encrypt, ti preghiamo di considerare di sostenere il nostro lavoro: Donare a ISRG / Let's Encrypt: https://letsencrypt.org/donate Donare a EFF: https://eff.org/donate-le

Installazione su WordPress

Per installare Let's Encrypt SSL sul mio sito di consulenza WordPress, è stato altrettanto semplice. C'era solo una piccola differenza. Ho chiesto a Let's Encrypt di supportare anche il sottodominio www:

cd / opt / letsencrypt ./letsencrypt-auto --apache -d lookahead.io -d www.lookahead.io

Puoi andare a visitarlo ora, HTTP o HTTPS, finirai qui, https://lookahead.io:

Rapporti SSL

Puoi visitare siti come Qualys SSL Labs per ottenere un rapporto sul sito sulla tua capacità SSL:

https://www.ssllabs.com/ssltest/analyze.html?d=fever.lookahead.io

Ecco la pagina di autenticazione:

Rinnovo automatico certificato

Anche il rinnovo automatico è piuttosto semplice. Per prima cosa, prendiamo lo script di rinnovo e gli diamo i privilegi di esecuzione:

sudo curl -L -o / usr / local / sbin / le-renew http://do.co/le-renew sudo chmod + x / usr / local / sbin / le-renew

Quindi esegui lo script per ciascun dominio:

sudo le-renew lookahead.io Controllo della data di scadenza per fever.lookahead.io ... Il certificato è aggiornato, non è necessario il rinnovo (89 giorni rimanenti).

E puoi impostare un cron job per essere eseguito regolarmente:

crontab -e

Aggiungi questa riga:

30 2 * * 1 / usr / local / sbin / le-renew lookahead.io >> /var/log/le-renew.log

Risoluzione dei problemi

Mi sono imbattuto in alcune stranezze che pensavo di condividere. Quando ho installato SSL per il mio vecchio progetto open source Community Starter (sia per il dominio radice che per www), Let's Encrypted ha dato questo errore:

Non siamo riusciti a trovare un vhost con un NomeServer o Indirizzo di www.communitystarter.org. │ Quale host virtuale vorresti scegliere? 

Avevo impostato un alias con caratteri jolly nel mio file conf:

 ServerName communitystarter.org ServerAlias ​​* .communitystarter.org DocumentRoot / var / www / communitystarter / 

Questa modifica l'ha risolta aggiungendo un alias per gli archivi www:

 ServerName communitystarter.org ServerAlias ​​www.communitystarter.org ServerAlias ​​* .communitystarter.org DocumentRoot / var / www / communitystarter / 

Quindi il video Vimeo incorporato nella home page non è riuscito:

Ho solo dovuto cambiare l'iframe del lettore Vimeo per usare HTTPS:

 

Community Starter di NewsCloud

Community Starter è una piattaforma semplice ed economica per avviare community di social media e estendere i siti web esistenti. Fornisce una suite di funzionalità interattive collegate a Facebook che possono aiutarti a ospitare una vivace comunità online per il tuo vicinato, argomento, gruppo di comunità, organizzazione non profit, associazione di appartenenza o città.

Inizia la tua comunità →

Problema risolto:

In chiusura

Sono molto impressionato dall'obiettivo comunitario Let's Encrypt è stato consegnato con qualità e facilità. Gli editori Web di tutto il mondo beneficeranno di un semplice SSL gratuito. Grazie EFF, Mozilla e Let's Encrypt!

Puoi donare a Let's Encrypt o EFF per supportare questo lavoro:

  • Dona direttamente a Let's Encrypt
  • Dona a EFF

Puoi imparare più dettagli tecnici sul loro software qui. Let's Encrypt ha anche un forum di community ben strutturato:

Qual'è il prossimo?

Let's Encrypt sta lavorando attivamente alla sua prima pubblicazione pubblica:

Abbiamo ancora del lavoro da fare prima di poter abbandonare completamente l'etichetta beta, in particolare sull'esperienza del cliente. L'automazione è una pietra miliare della nostra strategia e dobbiamo assicurarci che il client funzioni in modo fluido e affidabile su una vasta gamma di piattaforme.

Per stare al passo con l'ultimo codice, aggiorna di tanto in tanto il tuo git tree:

cd / opt / letsencrypt sudo git pull

Il mio sito WordPress primario viene eseguito con Varnish 3.x al momento. Questo non funziona immediatamente con Let's Encrypt. Probabilmente passerò un po 'di tempo a rintracciare una soluzione per questo.

Nel frattempo, se stai cercando altre utilità che ti aiutino a costruire il tuo set crescente di strumenti per WordPress o che il codice studi e diventi più esperto in WordPress, non dimenticare di vedere cosa abbiamo a disposizione in Envato Mercato.

Se hai domande, per favore pubblicale qui sotto. Oppure puoi contattarmi su Twitter @reifman. Si prega di controllare la mia pagina di istruttori + istruttore Envato per vedere altri tutorial che ho scritto, come la clonazione di WordPress in Linux (in 90 secondi).

Link correlati

  • Let's Encrypt
  • Come proteggere Apache con Let's Encrypt su Ubuntu 14.04 (Digital Ocean)
  • Come proteggere Nginx con Let's Encrypt su Ubuntu 14.04 (Digital Ocean)