Come configurare i security header di WordPress per HTTPS

Aggiornato il: 27-06-2022 05:01
Come sappiamo l’uso di HTTPS sui siti in generale è altamente consigliato da varie indicazioni tecniche, anche da parte di Google che lo considera un fattore tecnico e di sicurezza fondamentale. Grazie a HTTPS è possibile aggiungere uno strato “protettivo” e di autenticazione forte alla comunicazione client-server, sfruttando la tecnologia SSL che si è diffusa in versione free (Let’s Encrypt) e a pagamento (certificati di classe più elevata e ad autenticazione più forte).

Quando si usa WordPress, insomma, può essere interessante approfondire il discorso della configurazione dei cosiddetti security header, che evitano da potenziali insicurezze e possibili violazioni oltre ad evitare, ad esempio, il problema del mixed content (siti che funzionano in parte con HTTPS, in parte con HTTP, più diffusi di quanto si possa immaginare) oppure che il sito possa essere clonato facilmente dagli scraper.

A cosa servono i security header?

Attenzione: tutto questo vale per siti in WP configurati su server Apache.

I security header di WordPress pongono regole di sicurezza aggiuntive a livello di protocollo di connessione, impedendo connessioni indebite o non standard agli script ed evitando che, nel 99% dei casi, i visitatori ordinari si “accorgano” della differenza. Al fine di configurare i security header di WordPress per HTTPS, sono necessarie alcune modifiche all’inizio del file htaccess, per quanto poi (come al solito) sia sempre preferibile testare le modifiche una per volta, perchè alcune di queste feature richiedono moduli lato server per poter funzionare.

In breve

Le modifiche che andremo ad introdurre sono qui riassunte in un unico blocco, che consiglio a tutti di testare prima di metterlo live e di verificare che funzioni tutto. In alcuni casi, lo ribadiscono, non è detto che si riesca a configurare tutto facendo mero copia-incolla, e bisognerà  valutare i singoli casi.

Ads: scopri Keliweb ,il servizio di hosting italiano

Il blocco da aggiungere all’inizio del file htaccess per configurare i security header è il seguente.

<IfModule mod_headers.c>
	Header set X-XSS-Protection "1; mode=block"
	Header set X-Frame-Options "SAMEORIGIN"
	Header set X-Content-Type-Options "nosniff"
	Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
	# Header set Content-Security-Policy ...
	Header set Referrer-Policy "same-origin"
	Header set Feature-Policy "geolocation 'self'; vibrate 'none'"
</IfModule>

Nel dettaglio

Vediamo adesso nel dettaglio a cosa corrispondono le singole direttive che vi ho anticipato.

HSTS

Il modulo di HSTS / HSTS preload fa in modo che sia complicato per un malintenzionato copiare o clonare il vostro sito riportandolo anche per intero, a volte, su un dominio diverso, creando cosଠun problema di potenziale frode o web spam. Non solo: cosଠfacendo, qualora questa intestazione sia impostata su un dominio, da quel momento in poi ogni browser eseguirà  tutte le richieste al tuo dominio via HTTPS, e solo su questo. Tale esclusività  gioca a nostro vantaggio, almeno in parte, per evitare casi di scraping.

L’implementazione più comune è scritta cosà¬, fissa una data di scadenza per la cache e include qualsiasi sottodominio del dominio attuale mediante Strict-Transport-Security:

# Strict-Transport-Security
<IfModule mod_headers.c>
	Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
</IfModule>

Upgrade-Insecure-Requests



Questo blog pubblica contenuti ed offre servizi free da 11 anni. – Leggi un altro articolo a caso – Per informazioni contattaci
5/5 (1)

Ti sembra utile o interessante? Vota e fammelo sapere.

Come configurare i security header di WordPress per HTTPS
philipp katzenberger iIJrUoeRoCQ unsplash 1
Torna su