Migrare ad HTTPS, una scelta di sicurezza e di rispetto verso i lettori

La sicurezza non è mai troppa e i malintenzionati sono sempre dietro l’angolo.
Circa tre anni fa, questo blog subì  un attacco piuttosto pesante: la pagina principale fu sovrascritta, il suo contenuto fu  reso inaccessibile e le email violate. Per fortuna avevo a disposizione tutti i backup in locale e su altri server remoti e non mi fu difficile poi ripristinare il sito.
Colsi all’epoca l’occasione anche per studiare diverse strategie anti intrusione, alcune migliorie che avrebbero irrobustito il sistema e così via.
Ma un sistema in rete non può mai essere al sicuro da attacchi informatici e altre operazioni illecite; l’unico modo per rendere inaccessibile un computer è quello di non usarlo proprio.

affbg Ovviamente questo non è possibile, ma si può tentare di rendere il proprio sito web assai meno vulnerabile agli attacchi informatici usando un protocollo di cifratura HTTPS.
Tutte le informazioni server-client che fanno uso di questo protocollo sono criptate: qui ogni informazione è protetta  dagli attacchi esterni a da intercettazioni esterne. Dati sensibili come password o di altra specie sono garantiti da un protocollo di cifratura SSL che garantisce anche l’autenticità del sito.
In un universo telematico sempre più complesso la necessità di un sistema di navigazione sicuro si è fatta sempre più importante. Per questo Google, Mozilla Foundation e Electronic Frontier Foundation si stanno prodigando per questo obbiettivo. Da gennaio Google inizierà a penalizzare il ranking dei siti che non si saranno adeguati ai nuovi standard di sicurezza e sottolineerà la navigazione nei siti non protetti mostrando un simbolino colorato (probabilmente una X rossa) nella barra degli indirizzi.
Già comunque ora tutti i browser più usati evidenziano se si sta visitando un sito che non aderisce agli standard previsti nell’HTTPS, e questo può essere di stimolo a implementare l’uso della cifratura nel proprio sito, se se ne  gestisce uno, o a fare pressioni perché sia adottata da chi per ora non ne fa uso.

Implementare HTTPS

aaaNon è stato poi così difficile fare in modo che questo dominio adottasse il nuovo standard.
Innanzitutto occorre avere installato un certificato SSL sull’host di riferimento. In genere quando si acquista uno spazio web vengono anche forniti dei certificati gratuiti precaricati ma è sempre possibile acquistarne uno più forte o sceglierne uno esterno a seconda delle necessità. Per un sito come questo non emerge il bisogno di una grande chiave crittografica come un sito di e-commerce, quindi i certificati preinstallati vanno benissimo per garantire la sicurezza nelle comunicazioni.
I passaggi di configurazione sono sostanzialmente due.
Una volta accertato che il sito potesse usare il protocollo HTTPS (basta comporre l’indirizzo col prefisso https://) correttamente, occorre indicare al sistema di gestione dei contenuti (CMS Content Management System), in questo caso WordPress, di utilizzare l’estensione https:// al posto della canonica http:// nelle impostazioni generali, come dalla figura qui accanto e poi istruire il file di configurazione .htaccess presente nella radice del CMS (di solito accessibile tramite ftp) di riscrivere ogni richiesta in entrata e in uscita da http:// a https://.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://dominio.com/$1 [R=301,L] 

Così la terza riga di codice controlla se la risorsa è richiesta in HTTPS, e in tal caso reindirizza le richieste HTTP verso il protocollo HTTPS eseguendo la quarta riga di codice; se invece la richiesta è corretta,  questa riga viene ignorata.
Alcune chiamate improprie a risorse esterne legittime (immagini o script espliciti in http://)  possono causare qualche problema. In genere questi si annidano nei diversi plugins usati o quando vengono fatte caricare immagini o altri  simboli da siti terzi che ancora non supportano la crittografia, ma spesso basta togliere il prefisso http:// dalle chiamate dirette perché il sistema adotti lo standard più sicuro automaticamente (chiamate relative, sempre preferibile) o chiamare direttamente https:// (chiamate assolute, quando è necessario) quando si scrivono le chiamate esterne.
Un’altra modifica importante assolutamente da fare riguarda il file wp-config.php anch’esso accessibile via ftp alla radice del CSM.
Si tratta dell’aggiunta del comando che forza l’uso del protocollo HTTPS nella pagina di amministrazione del sito:

define(‘FORCE_SSL_ADMIN’, true);

Questo imporrà una connessione criptata ogni volta che si vorrà accedere al CMS coi privilegi di amministratore, garantendo così che questa non possa essere intercettata o rubata.

Adesso questo blog e il suo fratello TuttiDentro.eu adottano questa strategia rivolta ad assicurare i loro lettori l’integrità e la qualità della connessione.


Note:

Siccome si andranno a toccare alcuni files importanti del CMS di riferimento, mi raccomando di fare prima una copia di backup del sistema e del database. Non dovreste avere problemi ma declino ogni responsabilità se qualcosa dovesse andarvi storto.

Umberto Genovese

Autodidatta in tutto - o quasi, e curioso di tutto - o quasi. L'astronomia è una delle sue più grandi passioni. Purtroppo una malattia invalidante che lo ha colpito da adulto limita i suoi propositi ma non frena il suo spirito e la sua curiosità. Ha creato il Blog Il Poliedrico nel 2010 e successivamente il Progetto Drake (un polo di aggregazione di informazioni, articoli e link sulla celebre equazione di Frank Drake e proposto al l 4° Congresso IAA (International Academy of Astronautics) “Cercando tracce di vita nell’Universo” (2012, San Marino)) e collabora saltuariamente con varie riviste di astronomia. Definisce sé stesso "Cercatore".

Commenti chiusi