La sicurezza WordPress è un argomento di grandissima importanza per ogni proprietario di un sito web. Ogni giorno Google mette in lista nera circa 10.000 siti web al giorno per malware e circa 50.000 per il phishing ogni settimana.
Se fai sul serio con il tuo sito web, allora devi prestare attenzione alle best practice di sicurezza WordPress. In questa guida definitiva condividerò tutti i migliori consigli di sicurezza per la piattaforma in modo da aiutarti a proteggere il sito web da hacker e malware.

Nonostante il software di base di WordPress sia molto sicuro e venga controllato regolarmente da centinaia di sviluppatori, c’è molto che si può fare per aumentare la sicurezza del tuo sito.
Io credo che la sicurezza non sia solo una questione di eliminazione del rischio. Si tratta anche di riduzione del rischio. Come proprietario di un sito web, c’è molto che si può fare per migliorare la sicurezza di WordPress (anche se non si è esperti).
Ho qui per te una serie di azioni che puoi intraprendere per proteggere il tuo sito web da vulnerabilità di sicurezza.
Nella sidebar in questa pagina trovi la tabella dei contenuti per aiutarti a navigare nell’articolo.
Perché la sicurezza web è così importante?
Un sito WordPress violato può causare seri danni al tuo business e alla tua reputazione. Gli hacker possono rubare le informazioni degli utenti, le password, installare software dannoso e possono anche distribuire malware ai vostri utenti.
Peggio ancora, potresti trovarti a pagare un riscatto agli hacker solo per riottenere l’accesso al vostro sito web (attacco ransomware).

Nel marzo 2016, Google ha riferito che oltre 50 milioni di utenti di siti web sono stati avvertiti che un sito web che stanno visitando potrebbe contenere malware o rubare informazioni. Inoltre, ogni settimana Google mette in lista nera circa 20.000 siti web per malware e circa 50.000 per il phishing.
Se il tuo sito web è un business, allora devi prestare maggiore attenzione alla sicurezza di WordPress.
È responsabilità del proprietario di un’azienda proteggere il proprio negozio fisico, analogamente, come proprietario di un business online, è tua responsabilità proteggere il sito web dove i tuoi clienti fanno acquisti o visitano i tuoi contenuti.
Mantieni WordPress aggiornato

WordPress è un software open source che viene mantenuto e aggiornato regolarmente. Per impostazione predefinita, WordPress installa automaticamente gli aggiornamenti minori. Per le release maggiori, è necessario avviare manualmente l’aggiornamento.
WordPress viene fornito anche con migliaia di plugin e temi che puoi installare sul tuo sito web. Questi plugin e temi sono mantenuti da sviluppatori di terze parti che rilasciano regolarmente anche aggiornamenti.
Questi aggiornamenti del core dei suoi plugin sono cruciali per la sicurezza e la stabilità del tuo sito WordPress. Devi assicurarti che il core, i plugin e il tema siano sempre aggiornati.
Utilizza password forti e gestisci i permessi utenti

I più comuni tentativi di hacking su WordPress utilizzano password rubate. Puoi rendere la cosa difficile utilizzando password più forti uniche per il tuo sito. Non solo per l’area amministrativa di WordPress, ma anche per gli account FTP, database, account di hosting WordPress e i tuoi indirizzi email personalizzati che utilizzano il nome di dominio del tuo sito.
Molti principianti non amano usare password forti perché sono difficili da ricordare. Una cosa positiva, però, è che non hai bisogno di ricordare le password: puoi usare un gestore di password.
Un altro modo per ridurre il rischio è quello di non dare a nessuno l’accesso al tuo account di amministrazione WordPress, nemmeno se te lo chiede un servizio clienti. Se hai un grande team o autori ospiti, allora assicurati di aver compreso i ruoli e le capacità degli utenti prima di aggiungere nuovi account e autori al tuo sito.
Se un servizio clienti chiede l’accesso amministratore, non dare MAI la tua password, piuttosto utilizza il plugin Temporary Login without Password. Potrai creare un link specifico per accedere al tuo sito, con il ruolo che preferisci. Il link ha una scadenza, che puoi impostare. Io l’ho usato un paio di volte con un servizio assistenza, senza alcun problema. Una volta che l’intervento è completato, disattiva il link e disabilita il plugin.
Per verificare che la tua password sia forte a sufficienza, puoi usare questo sito.
Il ruolo del hosting provider
Il tuo servizio di hosting WordPress gioca il ruolo più importante nella sicurezza del tuo sito. Un buon fornitore di hosting condiviso come Siteground o Bluehost misure di sicurezza extra per proteggere i propri server dalle minacce comuni.
Ecco come una buona società di web hosting funziona in background per proteggere i tuoi siti e i tuoi dati.
- Monitorano continuamente la loro rete per verificare che non ci siano attività sospette.
- Tutte le buone società di hosting dispongono di strumenti per prevenire attacchi DDOS su larga scala
- Mantengono aggiornati il software e l’hardware del loro server per evitare che gli hacker sfruttino una nota vulnerabilità di sicurezza in una vecchia versione.
- Sono pronti a implementare piani di disaster recovery e di incidenti che permettono loro di proteggere i tuoi dati in caso di violazione grave.
Su un piano di hosting condiviso, condividi le risorse del server con molti altri clienti. Questo apre il rischio di contaminazione tra siti dove un hacker può usare un sito vicino per attaccare il tuo sito web.
L’utilizzo di un servizio di hosting gestito WordPress fornisce una piattaforma più sicura per il tuo sito web. Le società di hosting WordPress gestite offrono backup automatici, aggiornamenti automatici di WordPress e configurazioni di sicurezza più avanzate per proteggere il tuo sito web.
Io raccomando Siteground come fornitore di hosting WordPress gestito preferito. Sono tra i pochi consigliati da WordPress stesso (controlla lo sconto Siteground di Plan B Project).
Sicurezza WordPress di base (nessun codice richiesto)
So che migliorare la sicurezza di WordPress può essere un pensiero terrificante per i principianti. Specialmente se non sei un tecnico. Ma non ti preoccupare, non sei solo.
Ho aiutato centinaia di utenti a rafforzare la loro sicurezza WordPress. Ti mostrerò come puoi migliorare la sicurezza del tuo sito con pochi click (e nessun codice da modificare).
Installa una soluzione per il Backup

I backup sono la tua prima difesa contro qualsiasi attacco di WordPress. Ricorda, niente è sicuro al 100%. Se i siti web governativi possono essere hackerati, allora anche i tuoi possono.
I backup ti permettono di ripristinare rapidamente il tuo sito WordPress nel caso in cui dovesse accadere qualcosa di brutto. Ci sono molti plugin di backup di WordPress gratuiti e a pagamento che puoi usare. La cosa più importante che devi sapere quando si tratta di backup è che devi salvare regolarmente i backup dell’intero sito in una posizione remota (non il tuo account di hosting).
Ti consiglio di salvarli su un servizio cloud come Amazon, Dropbox o cloud privati come Stash. In base alla frequenza con cui aggiorni il tuo sito web, l’impostazione ideale potrebbe essere o una volta al giorno o backup in tempo reale.
Esistono anche altri modi per effettuare un backup del tuo sito. È un argomento estremamente importante che ho trattato approfonditamente in un articolo dal titolo Backup WordPress: le regole da seguire per il 2022.
P.S.
Se utilizzi Siteground, il backup giornaliero è incluso nel prezzo e sempre disponibile. Ricorda che hai uno sconto del 63% con il link di Plan B Project.
Un plugin per la sicurezza
Dopo i backup, la prossima cosa che dovrai fare è impostare un sistema di auditing e monitoraggio che tenga traccia di tutto ciò che accade sul tuo sito web. Questo include il monitoraggio dell’integrità dei file, i tentativi di login falliti, la scansione di malware, ecc.
Per fortuna, tutto questo può essere curato dal miglior plugin di sicurezza gratuito per WordPress, Sucuri Scanner.
È necessario installare e attivare il plugin gratuito Sucuri Security. Per maggiori dettagli, consulta la guida base su come installare un plugin per WordPress.
Dopo l’attivazione, devi andare nel menu Sucuri sulla tua dashboard WordPress. La prima cosa che ti verrà chiesto di fare è di generare una chiave API gratuita. Questo permette la registrazione delle verifiche, il controllo dell’integrità, gli avvisi via email e altre importanti funzioni.

La prossima cosa che devi fare è cliccare sulla scheda “Hardening” dal menu delle impostazioni. Passa attraverso ogni opzione e clicca sul pulsante “Apply hardening”.
Queste opzioni ti aiutano a bloccare le aree chiave che gli hacker usano spesso nei loro attacchi. L’unica opzione di hardening che è a pagamento è il Web Application Firewall che spiegherò nella prossima fase, quindi saltala per ora.
Ho anche trattato molte di queste opzioni di “Hardening” più avanti in questo articolo per coloro che vogliono farlo senza usare un plugin o quelle che richiedono passi aggiuntivi come “Cambio del prefisso del database” o “Cambiare il nome utente dell’amministratore”.
Dopo la parte di hardening, le impostazioni predefinite del plugin sono abbastanza buone per la maggior parte dei siti web e non necessitano di alcuna modifica. L’unica cosa che consiglio di personalizzare è “Avvisi via e-mail”.
Le impostazioni di default degli avvisi possono ingombrare la tua casella di posta elettronica. Raccomando di ricevere gli avvisi per le azioni chiave come i cambiamenti nei plugin, la registrazione di nuovi utenti, etc.
Questo plugin di sicurezza di WordPress è molto potente, quindi sfoglia tutte le schede e le impostazioni per vedere tutto ciò che fa, come la scansione del malware, i log di audit, il tracciamento dei tentativi di accesso non riusciti, etc.
Abilita Web Application Firewall
Il modo più semplice per proteggere il tuo sito ed essere sicuro della sicurezza di WordPress è utilizzare un firewall per applicazioni web (WAF). Un firewall per siti web blocca tutto il traffico dannoso prima ancora che raggiunga il tuo sito web.
Firewall per siti web a livello DNS: questi firewall instradano il traffico del tuo sito web attraverso i loro server proxy cloud. Questo permette loro di inviare solo traffico genuino al tuo server web.
Firewall a livello di applicazione: questi plugin firewall esaminano il traffico una volta che raggiunge il tuo server ma prima di caricare la maggior parte degli script WordPress. Questo metodo non è così efficiente come il firewall a livello DNS nel ridurre il carico del server.
Io raccomando Sucuri come il miglior firewall per applicazioni web per WordPress.
La cosa bella è che Sucuri viene fornito anche con una garanzia di pulizia del malware e di rimozione della blacklist. Fondamentalmente, se dovessi essere hackerato sotto il loro controllo, garantiscono che sistemeranno il tuo sito web (non importa quante pagine tu abbia).
Questa è una garanzia piuttosto forte perché riparare i siti web hackerati è costoso. Gli esperti di sicurezza normalmente fanno pagare $250 all’ora. Mentre tu puoi ottenere l’intero stack di sicurezza Sucuri per $199 all’anno.
Sucuri non è l’unico fornitore di firewall a livello DNS là fuori. L’altro concorrente popolare è Cloudflare. Se volessi avere un’alternativa, puoi controllare anche questo servizio.
Installa un certificato SSL e instrada su HTTPS
Un certificato SSL (Secure Sockets Layer) è un protocollo che cripta il trasferimento di dati tra il tuo sito web e il browser degli utenti. Questa crittografia rende più difficile per qualcuno ficcare il naso e rubare informazioni.
Una volta installato e abilitato il certificato SSL, il tuo sito web utilizzerà HTTPS invece di HTTP (instradamento), vedrai anche un lucchetto accanto all’indirizzo del tuo sito web nel browser.
I certificati SSL sono stati tipicamente emessi dalle autorità di certificazione, e i loro prezzi partono da €20 e arrivano a centinaia di euro ogni anno. A causa dei costi aggiuntivi, la maggior parte dei proprietari di siti web ha scelto di continuare ad utilizzare il protocollo insicuro.
Per risolvere questo problema, un’organizzazione no-profit chiamata Let’s Encrypt ha deciso di offrire certificati SSL gratuiti ai proprietari di siti web. Il loro progetto è supportato da Google Chrome, Facebook, Mozilla e molte altre aziende.
Ora, è più facile che mai iniziare a usare SSL per tutti i tuoi siti web WordPress. Molte società di hosting stanno ora offrendo un certificato SSL gratuito per il tuo sito web WordPress. Infatti, Siteground offre la cifratura Let’s Encrypt Wildcard (che copre anche i sottodomini) gratuitamente. Un motivo in più per scegliere Siteground, per quello che mi riguarda.
Impostazioni di sicurezza tecnica (modifiche al codice)
Se fai tutto quello che abbiamo detto finora, allora dovresti essere già ben protetto. Ma come sempre, c’è molto di più che puoi fare per fortificare la tua sicurezza WordPress.
Alcuni di questi passi possono richiedere una conoscenza di linguaggi web.
Cambia il nome di default dell’amministratore
Ai vecchi tempi, il nome utente di default di WordPress era admin. Poiché i nomi utente costituiscono la metà delle credenziali di accesso, questo rendeva più facile per gli hacker fare attacchi di forza bruta.
Fortunatamente, WordPress ha cambiato questo aspetto e ora richiede di selezionare un nome utente personalizzato al momento dell’installazione di WordPress.
Tuttavia, alcuni installatori automatici di WordPress, impostano ancora il nome utente admin predefinito su admin. Se ti accorgi di questo, allora è probabilmente una buona idea cambiare il tuo web hosting. Dato che WordPress non ti permette di cambiare i nomi utente di default, ci sono due metodi sicuri che puoi usare per cambiare il nome utente, senza installare plugin inutili.
- Crea un nuovo nome utente amministratore e cancella quello vecchio.
- Aggiorna il nome utente da phpMyAdmin.
La cosa migliore e più semplice è l’opzione numero 1, ma con la seconda eviti di creare un nuovo utente, nonostante richieda l’accesso a phpmyadmin e la modifica del db.
Nota: sto parlando del nome utente chiamato admin, non del ruolo di amministratore.
Disabilita la modifica dei file
WordPress è dotato di un editor di codice integrato che ti permette di modificare il tuo tema e i tuoi file di plugin direttamente dalla tua area di amministrazione di WordPress. Nelle mani sbagliate, questa funzione può essere un rischio per la sicurezza ed è per questo che ti consiglio di disattivarla.

Per disabilitare la modifica, dovrai aggiungere il seguente codice nel file wp-config.php, nella tua cartella radice del sito:
// Disallow file edit
define( 'DISALLOW_FILE_EDIT', true );
In alternativa, puoi farlo con un click usando la funzione Hardening del plugin gratuito Sucuri di cui ho parlato prima.
Cambia il prefisso delle tabelle nel database

Per impostazione standard, WordPress usa wp_ come prefisso per tutte le tabelle del tuo database. Se anche il tuo sito WordPress usa il prefisso predefinito, allora è più facile per gli hacker indovinare il nome delle tue tabelle. Ecco perché ti consiglio di cambiarlo.
Un database è un insieme di dati organizzati in tabelle. All’interno delle tabelle sono presenti tutte le informazioni uniche del tuo sito, dai post alle impostazioni dei tuoi plugin, le password degli utenti e la posizione dei file. La struttura di tali tabelle è creata da WordPress uguale per ogni sito, ecco perché i prefissi sono così importanti: differenziano il tuo sito da altri siti WordPress.
Puoi cambiare il prefisso delle tabelle nel database seguendo il mio tutorial sull’argomento. TI verranno presentate due possibilità di esecuzione: tramite accesso al database in modo manuale (per utenti avanzati) e tramite un plugin.
Nota: Un errore in questa operazione e potresti rovinare irrimediabilmente il tuo sito. Procedi solo se ti senti a tuo agio con le tue capacità di codifica. In ogni caso, fai un backup subito prima di cambiare i prefissi, in modo che se dovessi avere problemi, puoi rimettere tutto a posto in poco tempo.
Disabilita l’esecuzione di PHP in alcune cartelle del sito
Un altro modo per rinforzare la sicurezza di WordPress è disabilitare l’esecuzione di file PHP in directory dove non è necessario, come /wp-content/uploads/.
Puoi farlo modificando il file .htaccess nella cartella interessata del sito (se il file non c’è, puoi crearlo con solo queste righe):
<Files *.php>
deny from all
</Files>
Assicurati che questo file sia caricato nella cartella corretta, nell’esempio /wp-content/uploads/. Puoi caricarlo con un client ftp come Filezilla oppure con la dashboard del servizio di hosting.
Limita i tentativi di login
Per impostazione predefinita, WordPress permette agli utenti di provare ad effettuare il login tutte le volte che vogliono. Questo lascia il tuo sito WordPress vulnerabile agli attacchi di forza bruta. Gli hacker cercano di decifrare le password cercando di effettuare il login con diverse combinazioni di caratteri.
Questo può essere facilmente risolto limitando i tentativi di login falliti che un utente può fare. Se stai usando il firewall dell’applicazione web (WAF) di Sucuri menzionato in precedenza, allora questo viene automaticamente risolto.
Tuttavia, se non hai l’impostazione del firewall, allora procedi con i passi che seguono.
Per prima cosa, devi installare e attivare il plugin Login LockDown. Per maggiori dettagli, vedi la guida base su come installare un plugin per WordPress.
Dopo l’attivazione, visita la pagina Login Attempts -> Settings per impostare il plugin.

Aggiungi l’autenticazione in due fattori
La tecnica di autenticazione a due fattori richiede agli utenti di effettuare il login utilizzando un metodo di autenticazione in due fasi. Il primo è il nome utente e la password, e il secondo passo richiede che tu ti autentichi usando un dispositivo o un’applicazione separata.
La maggior parte dei migliori siti web online come Google, Facebook, Twitter, ti permettono di abilitarlo per i tuoi account. Puoi anche aggiungere la stessa funzionalità al tuo sito WordPress.
Potrai poi usare App come Microsoft Authenticator per l’autenticazione. funziona in questo modo:
- Installa il plugin WP 2FA sul sito
- Una volta abilitato il plugin sarai subito nel wizard di setup
- Segui le istruzioni
- Ti verrà chiesto di scansionare un QR code con l’app del cellulare di tua scelta tra queste: Google Authenticator, FreeOTP, Microsoft Authenticator, Duo Security, Authy, LastPass and Okta Verify.
- Dall’app dovrai selezionare l’aggiunta manuale del servizio di login. Ti verrà chiesto di scansione un QR code, in questo modo collegherai app e sito.
- Tornando sulle impostazioni del plugin, imposta le regole di utilizzo seguendo le istruzioni a schermo
- Infine, scarica il file con i codici di backup
Il plugin è gratuito, si appoggia alle API delle app mobile indicate e permette di recuperare l’accesso con i codici di backup in caso di problemi.



La prossima volta che accedi al tuo sito web, ti verrà chiesto il codice di autenticazione a due fattori dopo aver inserito la password. Il codice verrà fornito dall’app che hai associato al sito.
Per una guida approfondita per l’aggiunta del 2FA al tuo sito, puoi leggere “Autenticazione a due fattori WordPress: un must nel 2022“
Imposta una domanda di sicurezza
Analogamente all’autenticazione in due fattori, c’è anche la possibilità di aggiungere un ulteriore livello di sicurezza al login, alla pagina di registrazione di un nuovo utente e a quella di recupero della password.
Come? Aggiungendo una domanda di sicurezza. Il procedimento è molto semplice e permette di compilare la lista di domande personalizzate da proporre agli utenti e anche decidere dove mostrare la domanda di sicurezza.
Basta installare un plugin e impostarlo in modo corretto. Puoi trovare maggiori informazioni leggendo questo articolo: Login wordpress sicuro: aggiungi una domanda di sicurezza.
Disabilita il directory indexing e la navigazione nelle directory
La navigazione nelle directory può essere utilizzata dagli hacker per scoprire se si dispone di file con vulnerabilità note, in modo da poter sfruttare questi file per ottenere l’accesso.
La navigazione nelle directory può anche essere usata da altre persone per guardare nei tuoi file, copiare immagini, scoprire la tua struttura di directory e altre informazioni. Per questo motivo si consiglia vivamente di disattivare l’indicizzazione delle directory e la navigazione.
Devi connetterti al tuo sito web usando l’FTP o il file manager del pannello di hosting. Poi, individua il file .htaccess nella directory principale del tuo sito web. Dopo di che, devi aggiungere la seguente riga alla fine del file .htaccess:
Options -Indexes
Non dimenticare di salvare e caricare il file .htaccess sul tuo sito. Per approfondire, ecco un articolo specifico.
Sposta WordPress in una sottocartella
Un altro modo per mascherare la posizione dei file di WordPress, è quello di spostarli in una sottocartella.
I file di WordPress, infatti, sono noti e alcuni possono rappresentare delle vulnerabilità che l’utente distratto si scorda di mettere al sicuro (per esempio la password del database). Se lasci la posizione delle cartelle standard, sarà più facile verificare quali file e in quale posizione sono presenti sul tuo sito. Per un hacker questo potrebbe essere un indizio sul tipo di attacco da portare a termine.
È possibile spostare tutti i file di WordPress in modo che non sia nella loro posizione standard, mantenendo l’indirizzo corrente del sito. Per farlo ci sono vari modi che possono anche portare a risultati diversi.
Per esempio, lo sapevi che con lo stesso concetto potresti installare un nuovo WordPress in una sottocartella del tuo sito principale?
Ho un articolo che ti guiderà in questi procedimenti.
Imposta un log-out automatico per gli utenti inattivi
Gli utenti registrati possono a volte allontanarsi dallo schermo, e questo rappresenta un rischio per la sicurezza. Qualcuno può dirottare la propria sessione, cambiare le password o apportare modifiche al proprio account.
Questo è il motivo per cui molti siti bancari e finanziari si disconnettono automaticamente da un utente inattivo. Puoi implementare funzionalità simili anche sul tuo sito WordPress.
Dovrai installare e attivare il plugin Inactive Logout. Dopo l’attivazione, visita la sezione Impostazioni -> Inactive logout per configurare le impostazioni del plugin.
Basta impostare la quantità di tempo di inattività e aggiungere un messaggio di logout. Non dimenticare di cliccare sul pulsante salva le modifiche per memorizzare le tue impostazioni.
Disabilita la funzionalità XML-RPC
La funzionalità XML-RPC è retaggio di un tempo in cui pingback e trackback erano usati per citare e collegare tra loro i blog che si citavano a vicenda. Inoltre, forniva una modalità di aggiunta di contenuti in differita, permettendo quindi di gestire gli articoli anche in presenza di connessioni lente.
Per un periodo la funzionalità presentava una grave falla alla sicurezza WordPress, risolta con la versione del software 4.4.1. Tuttavia, nonostante ad oggi non sia un problema immediato alla sicurezza, fornisce un metodo di comunicazione remoto senza dare nessun reale vantaggio in cambio.
Per questo, consiglio di disabilitare la funzionalità in toto. Puoi farlo molto rapidamente con un plugin oppure modificando il file .htaccess
. Puoi trovare maggiori informazioni su entrambi i metodi, così come sulla funzionalità in generale, in un apposito articolo su come disabilitare XML-RPC.
Conclusioni
Questo è tutto per ora, ma conto di aggiungere delle sezioni all’articolo il prima possibile, in modo da offrirti una panoramica migliore sulle possibilità di sicurezza WordPress.
Prossime aggiunte:
- Proteggi con una password la cartella di login
- Disabilita XML-RPC
Per il momento però mi fermo qui. Iscriviti alla newsletter per ricevere la novità sul sito, sui corsi professionali che pubblico su Udemy e sul canale YouTube che ho appena aperto!