Tutorial

Login di WordPress: attacco brute-force, misure di sicurezza rinforzate

Di recente è stato registrato un attacco brute-force massivo a WordPress: abbiamo attivato le opportune contromisure per combatterlo e proteggere gli account dei nostri utenti, ma è necessaria la collaborazione da parte di tutti i webmaster ed i blogger.

Misure di sicurezza rinforzate

I seguenti passi possono essere eseguire per consolidare il livello di sicurezza sul file  wp-login.php per tutti gli account WordPress che eventualmente avete caricato sul vostro piano di hosting.

Come proteggere il file wp-login.php

Ci sono due passi da compiere per realizzare questo obiettivo, ed è bene che tutti i webmaster che amministrano siti in WordPress si possano adeguare ad esso. Anzitutto è necessario definire una password nel file .wpadmin, e successivamente attivare la sicurezza sul file .htaccess.

Primo passo, creare una password aggiuntiva

Come prima cosa create via FTP un file dal nome .wpadmin e posizionatelo nella home del vostro server, dove i visitatori non possono accedervi e facendo attenzione al “.” che precede il nome del file (ed indica al sistema Linux che il file stesso è nascosto). L’esempio che illustreremo è relativo ad un account cPanel, mentre Plesk (ad esempio) richiede che il file sia posizionato all’interno di  /var/www/vhosts oppure /var/www/vhosts/domain.

Esempio di path: /home/tuousername/.wpadmin
(dove “tuousername” è la username assegnata per l’account cPanel)

Inserire username e password criptata nel file .wpadmin, facendo uso del formato username:encryptedpassword

Esempio: mario123:n5MfEoHOIQkKg
(“mario123” è la username scelta da voi, mentre la password è stata criptata utilizzando uno dei seguenti tool online: htaccess password generator, online password generator, htpasswd generator)

Opzione 1: Generare il file con la password e caricarlo sul server via FTP

Dopo aver creato la password con uno degli strumenti indicati, dovrete caricarlo via FTP client (FileZilla ad esempio) oppure il WEB File Manager di cPanel.

  1. Visitare il sito: htaccesstools.com/htpasswd-generator (si aprirà in una nuova pagina)
  2. Utilizza il form proposto per creare username e password.
  3. Fare login su cPanel in un’altra finestra del browser.
  4. Fare click su File Manager.
  5. Scegliere ora Home Directory.
  6. Selezionare la spunta su “Show Hidden Files (dotfiles) se non fosse già selezionata.
  7. Cliccare su Go per confermare.
  8. Cercare il file .wpadmin e:
    • se esiste, selezionarlo con il tasto destro e cliccare su “Code Edit” per modificarlo.
    • se invece non fosse presente, selezionare dall’interfaccia “New File” e specificare il nome .wpadmin (attenzione ad inserire sempre il “.” iniziale) e scegliere successivamente Create New File“.
  9. Incollare il codice ottenuto in precedenza con i tool indicati.
  10. Cliccare su “Save Changes per confermare le scelte effettuate.
  11. Cliccare su “Close the file” per concludere la procedura.

Opzione 2: Creare il file di password mediante linea di comando/SSH

Potete creare la password criptata direttamente da linea di comando, se ne avete la disponibilità, direttamente con l’utility  htpasswd. Potete trovare maggiori informazioni tecniche a riguardo all’indirizzo ufficiale di Apache.

Un esempio di uso potrebbe essere il seguente:

htpasswd -c /home/tuousername/.wpadmin mario123

A questo punto il sistema richiederà la password che avete scelto, che sarà criptata ed inserita automaticamente all’interno del file. L’accesso alla pagina wp-login.php sarà quindi limitata da una ulteriore username e password, e solo dopo aver superato questa fase sarà possibile accedere con le solite credenziali.

Passo 2: aggiornare il file .htaccess

In questa procedura tutti i domini sotto la home directory in esame condivideranno lo stesso file .wpadmin.

L’ultimo passo da compiere consiste quindi nell’aggiornare il file /home/tuousername/.htaccess:

ErrorDocument 401 "Unauthorized Access"
ErrorDocument 403 "Forbidden"
<FilesMatch "wp-login.php">
AuthName "Authorized Only"
AuthType Basic
AuthUserFile /home/miousername/.wpadmin
require valid-user
</FilesMatch>

Ricordarsi sempre di sostituire, nella pratica, “miousername” con la username del tuo cPanel.

Lascia un commento

Back to top button