Joomla! come ogni altro CMS è soggetto ad attacchi da parte di hacker, uno degli attacchi più comuni è l’attaco Brute Force, ossia quando si tenta di forzare una password utilizzando algoritmi che tentano di decifrarla.
Cosa succede quando un sito Joomla è sotto attacco ?
Ce ne possiamo accorgere perchè l’attacco brute force genera molto traffico e quindi le troppe richieste saturano le risorse del server che ospita il sito, di conseguenza il sito potrebbe risultare molto lento alla navigazione o nel peggiore dei casi essere irraggiungibile dando il messaggio 503 Service Unavailable The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Come proteggere l’indirizzo di back end login di Joomla da attacchi hacker
Facciamo in modo che se dal browser viene digitato l’indirizzo predefinito www.miodominio.com/administrator ci dia un errore per mancanza di autorizzazioni (Access Denied) e quindi uno script che reindirizza l’area di login ad un link che decidiamo noi, così da rendere il login amministrativo meno vulnerabile agli attacchi brute force.
Per prima cosa creiamo una cartella che chiamiamo accedi e la copiamo nella root di installazione di Joomla, all’interno della cartella creiamo il file accedi.php e ci copiamo queste righe di codice :
1 2 3 4 5 6 7 8 9 10 |
<?php if( setcookie( 'allowAdminAccess', 'accedi', time()+60*60, '/' ) ){ header('Location: http://miodominio.com/administrator'); } else { echo 'Errore durante il salvataggio del cookie'; } ?> |
Ora aprire il file .htaccess contenuto nella root di installazione di Joomla, nel caso in cui non abbiate attivo il mod rewrite nativo di Joomla, rinominate il file da htaccess.txt in .htaccess, eliminate tutto il contenuto ed inserite solo le seguenti istruzioni.
1 2 3 4 5 |
RewriteEngine On RewriteCond %{REQUEST_URI} ^/administrator RewriteCond %{HTTP_COOKIE} !allowAdminAccess=accedi RewriteRule .* - [L,F] |
Script nel caso in cui Joomla sia in una sotto cartella e non nella root
1 2 3 4 5 |
RewriteEngine On RewriteCond %{REQUEST_URI} ^/sottocartella/administrator RewriteCond %{HTTP_COOKIE} !allowAdminAccess=accedi RewriteRule .* - [L,F] |
RewriteCond %{REQUEST_URI} = stiamo dicendo al file htaccess che se riceve richieste da un url /administrator
RewriteCond %{HTTP_COOKIE} = devo controllare che ci sia attivo il cookies (vedi script PHP), diversamente da errore di accesso negato
accedi = è il nome della cartella che viene digitata nel browser per raggiungere l’area login
N.B.
se decidete di cambiare il nome della cartella accedi, ricordate di cambiarlo sia nel file htaccess che nello script PHP
A questo punto digitando nel browser www.miodominio.com/administrator otterremo un l’errore 403
Invece digitando www.miodominio.com/accedi/accedi.php otteniamo la schermata di login 🙂
P.S.
Ovviamente per proteggere il vostro sito Joomla non è sufficiente solo quest’accortezza, è bene scegliere un buon servizio di hosting e tenere sempre aggiornati sia il core di Joomla che le relative estensioni, e poi backup, backup e ancora backup !
Programmatore WordPress Esperto WooCommerce
Sono l’autore di questo blog con tanti trucchi e guide su WordPress e WooCommerce.