Su WordPress non scrivi codice server: il plugin Korzen Bot Protection fa il lavoro del tag e della chiamata. Carica il tag sulle tue pagine e sulla pagina di login, e chiede a Bot Protection prima di un login, di una registrazione (quella di WordPress e quella di WooCommerce) e di un checkout di WooCommerce, quello classico e quello a blocchi. Quando Bot Protection è lento (oltre 200 ms), non raggiungibile o risponde qualcosa di inatteso, il visitatore passa. Richiede WordPress 6.5 e PHP 8.2 o successivi.
Installare
Il plugin non è ancora nella directory di WordPress.org: scrivici per avere lo zip. In WordPress, apri Plugin > Aggiungi nuovo plugin > Carica plugin, scegli lo zip e attivalo.
Impostazioni
Apri Impostazioni > Korzen Bot Protection e incolla le due chiavi della pagina Set-up: la site key (YOUR_SITE_KEY), che il tag porta con sé, e una API key, che invia il tuo server. Una volta salvata, la API key non viene più mostrata. Per tenerla fuori dal database, definiscila invece in wp-config.php e lascia il campo vuoto:
// wp-config.php, above "That's all, stop editing!" define( 'KORZEN_API_KEY', 'your API key' );
Altre due impostazioni:
- Modalità. Monitor chiede e lascia passare tutti, qualunque sia la risposta: parti da qui e segui le decisioni nella tua dashboard. Block applica la
actiondella risposta, che restaallowfinché non attivi il block mode anche nella pagina Set-up (vedi monitor mode e block mode). - IP del visitatore. Dietro un load balancer, un proxy o Cloudflare, ogni visitatore sembra venire da lì. Scegli l'ultima voce di X-Forwarded-For dietro il tuo load balancer o proxy, o CF-Connecting-IP quando il tuo server riceve traffico solo da Cloudflare; altrimenti lascia la connessione.
Cosa protegge
- Login: la pagina di login e il login di Il mio account di WooCommerce. Bot Protection viene interpellato dopo che WordPress ha controllato la password, giusta o sbagliata, così un rifiuto non dice nulla a un bot sulla password. I login delle app, via XML-RPC e REST API, non vengono interpellati: lì non è girato nessun tag.
- Registrazione: la pagina di registrazione di WordPress e la registrazione di Il mio account di WooCommerce.
- Checkout: il checkout classico di WooCommerce e il suo checkout a blocchi.
Ognuno compare nella tua dashboard come /login, /signup o /checkout, quali che siano gli indirizzi del tuo sito.
Cosa vede il visitatore
In block mode, un visitatore che Bot Protection blocca riceve il solito errore del modulo, che dice che la richiesta non è stata completata, senza dire perché. Un visitatore su cui ha dei dubbi (challenge) riceve un link alla pagina di challenge, una breve verifica che lo riporta allo stesso modulo; lo invia di nuovo e prosegue.
Cosa invia e cosa conserva
Prima di ogni azione protetta, il tuo server invia a Bot Protection l'IP del visitatore, lo User-Agent, gli header che elenca la chiamata, il token _kz del tag, il metodo e il nome dell'azione: mai la password, l'email o l'ordine. Il plugin conserva solo le sue impostazioni, in un'opzione di WordPress, ed eliminare il plugin le rimuove.