Ogni giorno il tuo sito è attaccato da centinaia di bot: alcuni rubano prezzi e contenuti, altri sovraccaricano il server con richieste, altri ancora cercano vulnerabilità. Se possiedi un negozio online su Wildberries o Ozon, gestisci landing page per campagne pubblicitarie su Facebook Ads o gestisci i siti dei clienti — questo problema ti riguarda direttamente. Un reverse proxy è la prima linea di difesa che può essere configurata senza conoscenze tecniche approfondite.
Che cos'è un reverse proxy e come si differenzia da un proxy normale
La maggior parte delle persone conosce il proxy come uno strumento per cambiare l'indirizzo IP: ci si connette a un server proxy e i siti vedono il suo indirizzo invece del tuo. Questo è chiamato proxy diretto — protegge l'utente.
Un reverse proxy funziona dall'altro lato. Si trova davanti al tuo server e riceve tutte le richieste in entrata al suo posto. Il visitatore pensa di comunicare direttamente con il tuo sito — ma in realtà prima passa attraverso il server proxy, che verifica la richiesta, filtra l'attività sospetta e solo dopo inoltra il traffico legittimo al tuo server reale.
Un'analogia semplice:
Immagina che il tuo sito sia un magazzino. Il proxy diretto è il tuo corriere, che ritira i prodotti dai fornitori in modo anonimo. Il reverse proxy è la guardia all'ingresso del magazzino: controlla chiunque voglia entrare, fa passare i clienti e ferma i ladri prima che possano raggiungere i prodotti.
La principale differenza rispetto a un proxy normale è che il tuo vero indirizzo IP del server rimane nascosto. I malintenzionati e i bot non sanno dove si trova fisicamente il tuo sito — vedono solo l'indirizzo del reverse proxy. Questo da solo taglia una parte significativa degli attacchi.
Per i proprietari di negozi online, marketer e arbitraggisti che gestiscono decine di landing page, questo è di vitale importanza: i concorrenti non potranno trovare il tuo vero hosting e attaccarlo direttamente, bypassando la protezione.
Perché i bot e gli scanner sono pericolosi per il tuo business
Molti proprietari di siti sottovalutano la minaccia dei bot, considerandola un "problema tecnico". In realtà, si tratta di perdite dirette per il business. Analizziamo scenari concreti con cui i nostri lettori si confrontano.
Parsing dei prezzi da parte dei concorrenti
Se vendi su marketplace o gestisci un tuo negozio online, i concorrenti possono avviare un parser che ogni 15-30 minuti estrae i tuoi prezzi e automaticamente imposta i propri a 1-2% in meno. Perdi vendite senza capire il perché. I bot parser sovraccaricano anche il server: centinaia di richieste al minuto rallentano il sito per i veri acquirenti, il che influisce direttamente sulla conversione.
Click fraud (frode sui clic)
Gli arbitraggisti e i marketer che lavorano con Facebook Ads e Google Ads si trovano regolarmente a fronteggiare un aumento dei clic. I bot cliccatori cliccano sui tuoi annunci, bruciando il budget senza alcuna conversione. Secondo le ricerche, fino al 20-30% del traffico pubblicitario in alcune nicchie è composto da bot. Un reverse proxy con le giuste regole aiuta a identificare e bloccare tali fonti.
Scanner di vulnerabilità
Scanner automatici come Shodan, Masscan e centinaia di strumenti meno noti esplorano costantemente l'intero internet alla ricerca di siti non protetti. Controllano versioni obsolete di CMS, porte aperte, password standard. Se il tuo sito è su WordPress o qualsiasi altra piattaforma popolare, è sicuramente già nei loro database. Senza protezione, è solo una questione di tempo prima che venga trovata una vulnerabilità.
Attacchi DDoS e sovraccarico del server
I concorrenti o semplicemente i malintenzionati possono organizzare un attacco che metterà il tuo sito offline nel momento meno opportuno — ad esempio, durante una svendita o una campagna pubblicitaria attiva. Anche un piccolo DDoS di alcune migliaia di richieste al secondo può "far crollare" un hosting economico.
Statistiche reali:
Secondo Imperva, oltre il 47% di tutto il traffico internet è generato da bot. Di questi, circa il 30% sono bot dannosi. Se il tuo sito riceve 1000 visitatori al giorno, circa 300 di essi sono script automatici che sovraccaricano il server e distorcono l'analisi.
Come un reverse proxy protegge il sito: meccanismo di funzionamento
Un reverse proxy protegge il sito su più livelli. Comprendere questi livelli ti aiuterà a configurare correttamente il sistema e a non perdere passaggi importanti.
Livello 1 — Nascondere il vero IP
Non appena reindirizzi il traffico attraverso un reverse proxy, il tuo vero indirizzo IP del server smette di essere pubblico. I bot e gli attaccanti non possono contattare direttamente il server — si scontrano con il proxy. Questo è particolarmente importante per la protezione contro i DDoS: anche se un malintenzionato conosce il dominio del tuo sito, non potrà attaccare il server bypassando la protezione.
Livello 2 — Analisi e filtraggio delle richieste
Ogni richiesta in entrata viene controllata in base a diversi parametri: User-Agent (quale browser/bot sta effettuando la richiesta), frequenza delle richieste da un IP, geolocalizzazione, modelli comportamentali. I bot, di solito, effettuano richieste troppo rapidamente, utilizzano stringhe User-Agent non standard o provengono da indirizzi IP noti dei data center. Un reverse proxy è in grado di monitorare e bloccare tutto ciò.
Livello 3 — Rate limiting (limitazione della frequenza delle richieste)
Una persona reale non può visualizzare 500 pagine di un sito in un minuto. Un reverse proxy consente di impostare limiti: ad esempio, non più di 60 richieste al minuto da un IP. Se qualcuno supera il limite, riceve un blocco temporaneo o un controllo CAPTCHA. Questo ferma efficacemente la maggior parte dei parser e degli scanner senza danneggiare i visitatori normali.
Livello 4 — Caching e riduzione del carico
Un reverse proxy memorizza nella cache i contenuti statici (immagini, CSS, JavaScript) e li fornisce direttamente, senza contattare il tuo server. Di conseguenza, anche se i bot riescono a superare i filtri, ricevono pagine memorizzate nella cache — il carico sul server reale è minimo. Inoltre, questo accelera il sito per i visitatori reali, il che influisce positivamente su SEO e conversione.
Livello 5 — Terminazione SSL/TLS
Un reverse proxy si occupa della crittografia del traffico. Il tuo server funziona più velocemente, poiché non spende risorse per crittografare ogni richiesta. E i visitatori vedono una connessione sicura HTTPS — questo è importante sia per la fiducia che per il posizionamento su Google.
Panoramica delle soluzioni: Cloudflare, Nginx, Caddy — cosa scegliere
Esistono diverse soluzioni popolari per organizzare un reverse proxy. La scelta dipende dal tuo livello tecnico, budget e scala del compito.
| Soluzione | Difficoltà | Costo | Per chi | Protezione dai bot |
|---|---|---|---|---|
| Cloudflare | Bassa | Gratuito / da $20/mese | Tutti, soprattutto i principianti | ⭐⭐⭐⭐⭐ |
| Nginx | Media | Gratuito (serve un server) | Utenti tecnici | ⭐⭐⭐⭐ |
| Caddy | Bassa–media | Gratuito (serve un server) | Sviluppatori, startup | ⭐⭐⭐ |
| AWS CloudFront | Alta | In base all'uso | Settore aziendale | ⭐⭐⭐⭐⭐ |
| HAProxy | Alta | Gratuito (serve un server) | Progetti ad alto carico | ⭐⭐⭐⭐ |
Per la maggior parte dei proprietari di siti, marketer e arbitraggisti che non vogliono occuparsi delle impostazioni del server, Cloudflare è la scelta ottimale. Il piano gratuito copre il 90% delle esigenze di protezione da bot e scanner. Inizieremo proprio da qui con la guida passo passo.
Configurazione di Cloudflare come reverse proxy: passo dopo passo
Cloudflare è un servizio cloud che diventa un reverse proxy per il tuo sito dopo una semplice modifica dei server DNS. Nessuna programmazione, nessun accesso al server — solo impostazioni nel browser.
Passo 1 — Registrazione e aggiunta del sito
Vai su cloudflare.com e crea un account. Dopo aver effettuato l'accesso, fai clic sul pulsante "Add a Site" e inserisci il dominio del tuo sito (ad esempio, myshop.ru). Scegli il piano gratuito Free — per iniziare è più che sufficiente.
Cloudflare scansionerà automaticamente i tuoi record DNS e mostrerà l'elenco. Controlla che tutti i record siano presenti (di solito si tratta di un record A con l'IP del server e record MX per la posta). Fai clic su "Continue".
Passo 2 — Modifica dei server DNS presso il registrar del dominio
Cloudflare ti fornirà due indirizzi nameserver — qualcosa come alex.ns.cloudflare.com e diana.ns.cloudflare.com. Accedi al pannello di controllo del tuo registrar di dominio (RU-CENTER, Reg.ru, Namecheap, ecc.) e sostituisci gli attuali nameserver con questi due indirizzi.
L'aggiornamento dei DNS richiede da 15 minuti a 48 ore. Non appena tutto sarà aggiornato, tutto il traffico verso il tuo sito inizierà a passare attraverso i server di Cloudflare — il reverse proxy inizierà a funzionare automaticamente.
Passo 3 — Attivazione della modalità "Under Attack" se necessario
Nel pannello di Cloudflare, vai alla sezione Security → Overview. Qui puoi vedere il livello di protezione (Security Level). Per la maggior parte dei siti, il livello "Medium" è adeguato. Se il sito è sotto attacco attivo, passa temporaneamente alla "Under Attack Mode": tutti i visitatori dovranno superare un controllo JS, che i bot di solito non superano.
Passo 4 — Configurazione della modalità Bot Fight
Vai a Security → Bots. Attiva l'interruttore "Bot Fight Mode" — questa è una protezione di base contro i bot automatici, disponibile gratuitamente. Cloudflare identifica e blocca automaticamente il traffico proveniente da bot dannosi noti, utilizzando un database di miliardi di richieste.
Nei piani a pagamento (Pro e superiori) è disponibile il Super Bot Fight Mode con impostazioni più dettagliate: puoi configurare separatamente il comportamento per i bot di ricerca (Googlebot, Yandexbot devono essere autorizzati!), per i bot verificati (monitoraggio uptime) e per richieste automatiche sospette.
Passo 5 — Creazione di regole del firewall (Firewall Rules)
Vai a Security → WAF → Firewall Rules e crea regole per le tue esigenze. Ecco alcuni esempi di regole che vale la pena aggiungere subito:
Esempio di regola 1 — Blocco di User-Agent vuoti:
Condizione: http.user_agent eq "" → Azione: Block. I veri browser trasmettono sempre un User-Agent. Un User-Agent vuoto è quasi sempre un bot.
Esempio di regola 2 — Blocco di scanner noti:
Condizione: http.user_agent contains "sqlmap" or http.user_agent contains "nikto" or http.user_agent contains "nmap" → Azione: Block. Questi sono strumenti di ricerca di vulnerabilità.
Esempio di regola 3 — Geoblocco (se necessario):
Condizione: ip.geoip.country in {"CN" "KP" "IR"} → Azione: Challenge (CAPTCHA). Se la tua attività opera solo in Russia, puoi bloccare i paesi da cui proviene la maggior parte degli attacchi.
Passo 6 — Configurazione del Rate Limiting
Nella sezione Security → WAF → Rate limiting rules crea una regola di limitazione della frequenza delle richieste. Ad esempio: non più di 100 richieste in 1 minuto da un indirizzo IP. Se il limite viene superato, mostra CAPTCHA o blocca temporaneamente. Questo ferma la maggior parte dei parser che cercano di raccogliere rapidamente tutte le pagine del tuo sito.
Configurazione del reverse proxy Nginx: configurazione di base
Se hai un server VPS (ad esempio, su Timeweb, Selectel o DigitalOcean), puoi configurare Nginx come reverse proxy. Questo offre maggiore controllo e flessibilità, anche se richiede competenze di base nell'uso della riga di comando.
Schema tipico: hai un server principale con un'applicazione (ad esempio, un negozio online sulla porta 8080) e un server separato o lo stesso server con Nginx sulla porta 80/443, che riceve tutto il traffico e lo inoltra all'applicazione.
La configurazione di base di Nginx come reverse proxy con protezione dai bot appare così:
server {
listen 80;
server_name mysite.ru www.mysite.ru;
# Reindirizzamento a HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name mysite.ru www.mysite.ru;
ssl_certificate /etc/letsencrypt/live/mysite.ru/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mysite.ru/privkey.pem;
# Blocco di User-Agent vuoti (bot senza UA)
if ($http_user_agent = "") {
return 403;
}
# Blocco di scanner noti per User-Agent
if ($http_user_agent ~* (sqlmap|nikto|nmap|masscan|zgrab|python-requests)) {
return 403;
}
# Rate limiting — applichiamo la zona di limitazione
limit_req zone=one burst=20 nodelay;
# Inoltro delle richieste al server reale
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Nascondiamo le informazioni sul server reale
proxy_hide_header X-Powered-By;
proxy_hide_header Server;
}
}
# Definizione della zona di Rate Limiting (aggiungere nel blocco http)
# limit_req_zone $binary_remote_addr zone=one:10m rate=60r/m;
Fai attenzione alla direttiva proxy_hide_header — essa nasconde gli header che rivelano informazioni sul tuo server reale e sul CMS. Questo complica il lavoro degli scanner di vulnerabilità: non sanno esattamente cosa cercare.
La zona limit_req_zone limita ogni indirizzo IP a 60 richieste al minuto. Il parametro burst=20 consente picchi temporanei (un utente reale può aprire rapidamente più pagine), ma un carico elevato prolungato viene bloccato.
Importante per gli arbitraggisti e i marketer:
Se utilizzi proxy residenziali per controllare come appaiono le tue landing page da diverse regioni, assicurati che i tuoi proxy non vengano bloccati. Aggiungi gli indirizzi IP dei tuoi server proxy nella whitelist nelle impostazioni di Cloudflare o Nginx.
Regole di blocco per bot e scanner: checklist
Dopo la configurazione di base del reverse proxy, utilizza questa checklist per assicurarti che la protezione sia impostata in modo completo. Ogni punto rappresenta un vettore di attacco separato che deve essere chiuso.
✅ Protezione di base (obbligatoria per tutti)
- Attivato Bot Fight Mode in Cloudflare (o equivalente in un'altra soluzione)
- Configurato Rate Limiting: non più di 60-100 richieste al minuto da un IP
- Bloccate le richieste con User-Agent vuoti
- Bloccati scanner noti: sqlmap, nikto, nmap, masscan
- Nascosti gli header Server e X-Powered-By (non mostriamo la versione del server e del CMS)
- Configurato HTTPS, HTTP reindirizza automaticamente a HTTPS
- Il vero IP del server non è visibile in database pubblici (Shodan, Censys)
✅ Protezione avanzata (per siti attivamente attaccati)
- Configurato Honeypot — pagina nascosta visibile solo ai bot (gli utenti reali non ci accedono). Gli IP che visitano il honeypot vengono bloccati automaticamente
- Attivata la verifica dell'integrità del browser (Browser Integrity Check in Cloudflare)
- Configurato CAPTCHA per il traffico sospetto (non per tutti — solo per i sospetti)
- Geoblocco dei paesi da cui non ci si aspetta traffico legittimo
- Monitoraggio dei log: impostati avvisi in caso di aumento improvviso degli errori 403/429
- Blocco degli intervalli IP dei principali fornitori di cloud (AWS, Azure, GCP) — la maggior parte dei bot opera dai cloud
- Configurato robots.txt con divieto per bot aggressivi
✅ Protezione di pagine specifiche
- Pagina di accesso (/admin, /wp-admin, /login) — limitazione rigida della frequenza (5-10 tentativi al minuto) e autenticazione a due fattori
- API-endpoint — autorizzazione obbligatoria tramite API-key o token
- Pagine con prezzi — controlli aggiuntivi per richieste frequenti (protezione contro il parsing)
- Modulo di registrazione/richiesta — CAPTCHA o trappola honeypot invisibile per bot
Non bloccare i bot utili!
Googlebot e Yandexbot devono essere sempre autorizzati — indicizzano il tuo sito. In Cloudflare vengono automaticamente classificati come "Verified Bots" e non vengono bloccati con le impostazioni corrette. Controlla questo nella sezione Security → Bots → Bot Analytics.
Proxy per monitoraggio: come controllare la protezione del tuo sito
Dopo aver configurato il reverse proxy, è importante assicurarsi che la protezione funzioni correttamente e non blocchi gli utenti reali. Qui entrano in gioco i normali proxy — ora sei tu a diventare un "utente esterno" e a controllare il comportamento del sito.
Perché i marketer e gli arbitraggisti devono controllare i propri siti tramite proxy
Immagina la situazione: hai impostato la protezione dai bot, hai attivato il geoblocco e all'improvviso noti che la conversione è calata. Potresti aver bloccato accidentalmente utenti reali da determinate regioni o dispositivi. Puoi verificarlo accedendo al sito tramite proxy da diversi paesi e con diversi tipi di connessioni.
Per tali compiti, i proxy mobili sono ideali — simulano una connessione da un vero dispositivo mobile tramite un operatore di rete. Se le tue regole di blocco consentono il traffico mobile correttamente, significa che gli utenti normali con smartphone non sono stati danneggiati dalla protezione.
Scenari pratici di verifica
Scenario 1 — Verifica della geodisponibilità. Hai avviato una pubblicità su Facebook Ads per un pubblico di diverse regioni della Russia. Controlla tramite proxy con IP da Novosibirsk, Ekaterinburg e Krasnodar che la landing page si apra correttamente, non mostri CAPTCHA e si carichi rapidamente.
Scenario 2 — Test del Rate Limiting. Apri più schede tramite un proxy e passa rapidamente tra le pagine. Se ricevi un blocco durante un comportamento normale, il limite è troppo basso e deve essere aumentato.
Scenario 3 — Verifica da diversi tipi di IP. Prova ad accedere tramite un proxy di data center (simulazione di un bot/server) — se la tua protezione funziona, tale richiesta dovrebbe ricevere un CAPTCHA o un blocco. Poi accedi tramite un proxy residenziale (simulazione di un normale utente domestico) — l'accesso dovrebbe essere libero.
Scenario 4 — Verifica da parte dei concorrenti. Se vuoi controllare quanto sia difficile estrarre dati dal tuo sito, prova a farlo tu stesso tramite uno strumento semplice. Se il parser riceve un blocco già dopo 10-20 richieste, la protezione funziona. Se raccoglie dati senza ostacoli, è necessario inasprire le regole.
Monitoraggio dell'efficacia della protezione
In Cloudflare, vai alla sezione Security → Overview — qui puoi vedere grafici delle richieste bloccate, tipi di minacce e geografia degli attacchi. Fai attenzione a:
- Aumento improvviso delle richieste bloccate — segno di un attacco attivo o di scraping
- Alto percentuale di traffico da un solo paese — potrebbe essere utile aggiungere un geoblocco
- Aumento degli errori 403/429 nei log — controlla se gli utenti reali vengono bloccati
- Richieste regolari a /admin, /wp-login.php — tentativi di hacking, rinforza la protezione di questi percorsi
Conclusione: il reverse proxy non è un'opzione, ma una necessità
Il reverse proxy ha smesso di essere uno strumento solo per grandi aziende. Oggi anche un piccolo negozio online, una landing page per una campagna di arbitraggio o un sito di un'agenzia SMM ha bisogno di una protezione di base contro bot, scanner e parser dei concorrenti.
Le conclusioni chiave di questa guida: Cloudflare è l'inizio più veloce senza conoscenze tecniche, Nginx offre il massimo controllo se hai un server tuo. In entrambi i casi, la protezione di base può essere configurata in 30-60 minuti e chiude l'80-90% delle minacce tipiche. Non dimenticare di controllare che i bot utili (Googlebot, Yandexbot) rimangano nella whitelist e che gli utenti reali non soffrano a causa di regole troppo aggressive.
Un punto separato per chi utilizza proxy nel proprio lavoro: se stai controllando campagne pubblicitarie, monitorando i concorrenti o testando l'accessibilità dei tuoi siti da diverse regioni — per questi compiti, i proxy residenziali sono i più adatti. Hanno indirizzi IP di veri utenti domestici, quindi passano attraverso la maggior parte dei sistemi di protezione proprio come i visitatori normali e forniscono un quadro obiettivo di ciò che vede il tuo pubblico.