WordPress: two factor authentication con Authy

Da circa tre giorni sono inondato da tentativi di brute force contro il login di WordPress, le richieste arrivano con metodo HTTP “POST” e sono dirette verso “wp-login.php“. Gli IP utilizzati sono stati sempre differenti, dunque ho rinunciato a bloccarli, probabilmente si tratta di una botnet oppure di uno script che effettua un IP spoofing per evitare il blocco che ho impostato con il plugin Limit Login Attempts nel momento in cui un IP effettui due tentativi errati di login a WordPress.

Oltre a bloccare la cartella “wp-admin” con un file .htaccess ho deciso anche di bloccare l’accesso a wp-login.php con la seguente regola nel file .htaccess:

<FilesMatch "wp-login.php">
    AuthName "WordPress Admin"
    AuthType Basic
    AuthUserFile /path/to/authfile/.htpasswd
    require valid-user
</FilesMatch>

Fatto questo però mi sono detto: e se riescono a bucare la basic authentication in qualche modo? Allora ho deciso di aggiungere un altro layer di sicurezza abilitando l’autenticazione a due fattori in WordPress, la cosiddetta two factor authentication. Per farlo sono ricorso ad Authy, un servizio gratuito che consente di abilitare facilmente l’autenticazione a due fattori a qualsiasi servizio web o applicazione. La prima cosa da fare è registrarsi e scaricare l’app per il proprio smartphone iPhone (iOS), Android o BlackBerry. Fatto questo sarà necessario creare un’applicazione dal pannello di Authy utilizzando il pulsante “Create application” accessibile dallo “User Menu”. La generazione dell’applicazione consentirà di avere a disposizione due API key che saranno necessarie per il funzionamento del plugin che consente la two factor authentication su WordPress.

Fatto questo si può installare il plugin plugin Authy for WordPress, attivarlo e inserire le due API key generate in precedenza. A questo punto dovremo andare sul profilo utente dell’amministratore del nostro WordPress e abilitare l’autenticazione attraverso Authy cliccando su “Manage Authy Connection”.

authy wordpress

Da ora in poi per fare login su WordPress oltre allo username e la password dovremo inserire anche il token generato dall’app Authy sul nostro smartphone.

authy wordpress login