Quote Originariamente inviata da Alhazred Visualizza il messaggio
Potresti impostare un cookie, così eviti che chi sta provando ad accedere riavvii il router per cambiare IP.
Un altro sistema che può risultare più efficace è impostare un campo flag nella tabella degli utenti o meglio creare una tabella apposita per gli account disabilitati con un paio di campi: l'id dell'account da disabilitare ed un timestamp che riporti quando è stato disabilitato.

Ogni volta che un utente tenta il login vai prima a vedere in questa tabella se l'id di quell'account è presente e se il timestamp è troppo recente (a te definire quanto sia "troppo recente"), se queste due cose sono verificate, abortisci il login e notifichi all'utente di aspettare prima di riprovare, se l'id c'è, ma è passato abbastanza tempo, cancelli il record di questo account dalla tabella degli account disabilitati e provi il login, se non c'è proprio in questa tabella procedi direttamente col tentativo di login.
Attualmente blocco ip dopo 5 prove d'accesso per 5 minuti, e dopo 99 prove di accesso non riuscite in 1 ora blocco l'ip definitivamente, nel senso che restituisce una pagina in bianco.
E pur vero che con un attacco di forza bruta bisogna puntare su un nome utente concreto, cambiando la password, quindi dopo x tentativi potrei bloccare l'accesso a questo utente, c'è da dire però che conoscendo il nome utente, un altro utente malintenzionato potrebbe divertirsi e continuare a bloccare l'account.