Per gli account di amministrazione, avevi ragione, richiedere una VPN è la giusta direzione.
Meglio ancora, richiedono l'autenticazione a più fattori per gli utenti amministratori.
Queste sono sempre buone idee.
Detto questo, se per qualsiasi motivo non è fattibile e sei bloccato con regolari accessi alle password pubbliche, non tutto è perduto.
Supponendo che i tuoi account admin siano tutti soggetti a una politica di password complessa, la forza bruta diretta richiederà molti, molti, molti, molti tentativi. Tentando di forzare la password tramite il modulo di login, tramite Internet, ci vorrà un tempo molto, molto, molto, molto, molto lungo - e ciò sarà fattibile solo se è possibile eseguire molti tentativi di accesso in parallelo, usando molti computers.
L'elemento chiave qui è velocità .
Quindi, la soluzione è di rallentare i ripetuti tentativi di accesso, senza arrestare realmente l'utente reale (chi sta tentando di accedere con lo stesso account nello stesso momento in cui sta andando avanti la bruteforce).
No, non pensate nemmeno di provare CAPTCHA - mentre questi hanno qualche piccolo effetto, non è neanche lontanamente abbastanza da rallentare il flusso di attacchi, di un ordine di grandezza (la migliore scommessa è probabilmente intorno al 20% - non abbastanza lento) .
Una soluzione molto più efficace (e più semplice), è limitando la frequenza .
Cioè non più di 5 tentativi di accesso in un minuto. O 50. O anche 500.
Questo può anche essere visto come un meccanismo di blocco automatico rilasciato, con un ritardo molto breve.
La matematica è ancora a tuo favore - puoi tapparla in ogni caso a seconda delle minacce previste) e puoi comunque lasciare il margine per consentire al vero utente di accedere.
Dopo diversi lockout, potresti voler implementare lockout più lunghi per IP, ma fai attenzione con questo approccio, poiché gli indirizzi IP di solito non si allineano con un utente specifico (IP condiviso, IP di roaming, ecc.). Quindi usalo, se devi, ma gentilmente.
Inoltre, assicurati di avvisare un amministratore, dopo diversi blocchi, consentendo ulteriori risposte manuali.