Proteggere il pannello di amministrazione di WordPress

Metodi per proteggere il pannello di amministrazione del CMS.

Per garantire la sicurezza del pannello di amministrazione di WordPress, è importante considerare non solo i metodi di protezione software, ma anche l'infrastruttura su cui è ospitato il sito. Che tu stia usando il web hosting, un VPS o un server dedicato, una corretta configurazione del server e l'adozione di misure di sicurezza adeguate aiutano a ridurre al minimo i rischi. In questo articolo esamineremo i principali metodi per proteggere il pannello di amministrazione di WordPress, applicabili a qualsiasi tipo di hosting.

Per proteggere il pannello di amministrazione di WordPress puoi:

  • Impostare la restrizione dell'accesso per indirizzo IP

  • Aggiungere Google reCAPTCHA al modulo di login per rendere più difficile il brute force delle password

  • Cambiare l'indirizzo della pagina di login nel pannello di amministrazione

  • Installare un'autorizzazione aggiuntiva tramite .htaccess + .htpasswd

I vantaggi dei metodi sopra elencati stanno nel fatto che forniscono un minimo semplice e indispensabile di sicurezza per WordPress.

Se invece hai bisogno di una soluzione completa per proteggere il sito, puoi ricorrere a plugin specializzati:


LIMITAZIONE DELL'ACCESSO PER INDIRIZZO IP

Restrizione dell'accesso al sito dall'indirizzo IP 111.111.111.111 tramite .htaccess:

<FilesMatch  "^(wp-login|wp-config)\.phpquot;>
  Order deny,allow
  Deny from all
  Allow from 111.111.111.111.111 
</FilesMatch>

Restrizione dell'accesso al sito da tutti gli indirizzi eccetto 111.111.111.111:

Order Deny,Allow
Deny from all
Allow from 111.111.111.111

Per la restrizione dell'accesso tramite Nginx consulta questa guida

PROTEGGERE IL PANNELLO DI AMMINISTRAZIONE DAL BRUTE FORCE DELLE PASSWORD

Un metodo semplice da installare ed efficace per proteggersi dal brute force delle password è il plugin Login Lockdown.

Scarica il plugin Login Lockdown dal repository ufficiale di WordPress.org.

Il suo funzionamento si basa sul principio che, al raggiungimento di un certo numero di tentativi di accesso falliti, l'indirizzo IP viene inserito nella lista nera e l'accesso al sito viene bloccato. Puoi utilizzare questo plugin su qualsiasi tipo di sito:

  • Installa il plugin Login Lockdown
  • Le impostazioni del plugin si trovano all'indirizzo https://example.com/wp-admin/options-general.php?page=loginlockdown.php.

Non è obbligatorio configurare il plugin, ma se lo desideri puoi inserire impostazioni personalizzate:

file

Impostazioni del plugin Login Lockdown

  • Max Login Retries — Numero massimo di tentativi di accesso falliti dopo i quali l'accesso dall'IP viene bloccato. Il valore predefinito è 3 tentativi.
  • Retry Time Period Restriction (minutes) — Il periodo di tempo entro cui è consentito sbagliare il numero di volte indicato sopra (predefinito: 5 minuti). Se sbagli la password 2 volte, devi attendere 5 minuti, altrimenti rischi di finire in ban.
  • Lockout Length (minutes) — Per quanti minuti bloccare l'accesso al sito. Per impostazione predefinita, l'accesso dall'IP viene bloccato per 60 minuti.
  • Lockout Invalid Usernames? — Se applicare il filtro Login LockDown anche ai tentativi di accesso con un nome utente inesistente. Per impostazione predefinita: no.
  • Mask Login Errors? — WordPress di norma mostra messaggi distinti all'utente a seconda che stia tentando di accedere con un nome utente non valido oppure con un nome utente corretto ma una password errata. Attivando questa opzione, il messaggio di errore verrà nascosto in caso di tentativo di accesso fallito.
  • Show Credit Link? — Se mostrare o meno il link alla pagina di Login Lockdown nella pagina di login. Per impostazione predefinita è visibile, ma può essere disattivato.

Effettuando l'accesso, vedremo che il sito è protetto:

file

PROTEGGERE IL PANNELLO DI AMMINISTRAZIONE CON IL CAPTCHA

Il plugin Google Captcha (reCAPTCHA) è una soluzione di sicurezza che protegge i moduli del tuo sito WordPress dallo spam, consentendo agli utenti reali di superare il captcha senza difficoltà. Può essere utilizzato per i moduli di login, registrazione, recupero password, commenti, i principali moduli di contatto e molti altri ancora.

Installa il plugin Google Captcha (reCAPTCHA)

Vai alle impostazioni del plugin all'indirizzo http://example.com/wp-admin/admin.php?page=google-captcha.php

file

Registrati su Google reCAPTCHA, aggiungi il tuo sito, ottieni le chiavi e inseriscile nei campi mostrati nello screenshot.

Durante il login e nella sezione commenti vedremo che è stato aggiunto il controllo captcha.

file

COME NASCONDERE L'INDIRIZZO DEL PANNELLO DI AMMINISTRAZIONE MODIFICANDOLO

WPS Hide Login è un plugin che consente di modificare in modo semplice e sicuro l'URL della pagina di login con qualsiasi valore tu voglia. Non rinomina né modifica fisicamente i file del core, né aggiunge regole di riscrittura: si limita a intercettare le richieste di pagina e funziona su qualsiasi sito WordPress.

Installa il plugin WPS Hide Login

Poi, nelle impostazioni del plugin all'indirizzo http://example.com/wp-admin/options-general.php#whl-page-input, specifica il nuovo indirizzo di accesso al pannello di amministrazione WordPress e salva le modifiche.

file

PROTEGGERE IL PANNELLO DI AMMINISTRAZIONE CON UN'AUTORIZZAZIONE AGGIUNTIVA

file

Il processo si articola in due fasi.

.htaccess Prima di tutto, creiamo il file .htaccess nella directory del sito che vogliamo proteggere con password. Poiché stiamo parlando dell'area di amministrazione di WordPress, creiamo il file nella cartella /wp-admin.

AuthType Basic
AuthName
AuthName "Protected Area"
#Percorso al file con utenti e password .htpasswd
AuthUserFile /home/f45454/mysite.com/public_html/wp-admin/.htpasswd
require valid-user
  • AuthName
    • Nome dell'autenticazione. Il messaggio verrà visualizzato nella finestra di inserimento di login e password. In alternativa, puoi semplicemente modificare questo messaggio per reimpostare le password salvate nei browser.
  • AuthUserFile
    • Percorso assoluto sul server al file con login e password (ovvero .htpasswd). Per trovarlo, utilizza la funzione PHP getcwd() (Get Current Working Directory).

.htpasswd Un file con utenti e password nel formato utente:password. La password deve essere in forma cifrata.

Esempio:

admin:$apr1$7C3cBu2Z$0ulE5W3hyDTNCCGYaJHlu.

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci