Evita il blocco dell'indirizzo IP del tuo server
Su alcune reti, l'indirizzo IP di un server VPN viene bloccato dopo poche ore di utilizzo. Con alcune modifiche puoi renderlo molto più difficile da individuare. Inizia con un secondo indirizzo IP per il traffico in uscita: ti aiuterà anche a capire come la rete rileva il tuo server.
Come una rete rileva un server VPN
Una rete può riconoscere la connessione stessa: l'impronta del traffico o la risposta del server a una scansione. La modalità Cloak Mode non lascia quasi nulla da identificare. È già supportata dal tuo server e ogni utente può attivarla direttamente nell'app.
Oppure può monitorare la destinazione del traffico. Alcuni paesi usano sistemi di reputazione: se molti utenti accedono a banche locali, servizi statali o siti nazionali dallo stesso IP estero, quell'indirizzo viene classificato come VPN o proxy e inserito in una blocklist.
Oppure qualcuno lo segnala direttamente. Una chiave di accesso non è crittografata: chiunque ne possieda una può risalire all'indirizzo del server. Condividi le tue chiavi con il minor numero di persone possibile.
Usa un IP per connetterti e un altro per navigare
Assegna al server due indirizzi IP pubblici, ciascuno con uno scopo preciso:
- L'IP di connessione è l'indirizzo a cui si collegano le app dei tuoi utenti, contenuto nelle loro chiavi di accesso.
- L'IP in uscita è l'indirizzo da cui parte il traffico del server verso i siti web, ed è l'unico visibile dall'esterno.
I siti web possono segnalare solo l'indirizzo che vedono: se un IP viene bloccato, è solo quello in uscita, mentre gli utenti continuano a connettersi senza problemi all'altro. Puoi sostituire l'IP in uscita bloccato senza dover inviare una nuova chiave a nessuno, perché non compare in nessuna chiave.
VpnHood! SERVER non ha un'impostazione per l'IP in uscita. Si collega ai siti web come qualsiasi altro programma, lasciando al sistema operativo la scelta dell'indirizzo da cui instradare il traffico. Imposti l'IP in uscita nel sistema operativo e l'IP di connessione in VpnHood.
Aggiungi un secondo indirizzo IP
Richiedi un indirizzo IPv4 aggiuntivo al tuo provider di hosting e configuralo sul server seguendo la sua guida. Fuori da Docker puoi lasciare fare al server: configurerà in automatico l'indirizzo su cui è impostato per l'ascolto.
Mantieni l'indirizzo principale del server come IP in uscita e usa quello nuovo come IP di connessione. Il sistema operativo invia già il traffico dall'indirizzo principale, riducendo le modifiche necessarie; inoltre, se l'indirizzo principale non è più raggiungibile dagli utenti, può comunque continuare a svolgere questo ruolo.
Imposta l'IP in uscita
Questo comando mostra l'indirizzo da cui il server invia il traffico: è quello indicato dopo src.
ip route get 1.1.1.1
L'output, con 198.51.100.20 come IP in uscita
1.1.1.1 via 198.51.100.1 dev eth0 src 198.51.100.20 uid 0
cache
Se mostra il nuovo indirizzo invece di quello principale, la configurazione è invertita. La soluzione più semplice è scambiare i ruoli: usa l'indirizzo visualizzato come IP in uscita e l'altro come IP di connessione.
In Docker, il server condivide la rete dell'host, quindi si applicano le impostazioni dell'host.
Sui cloud in cui la macchina dispone solo di indirizzi privati (come AWS, Google Cloud, Azure o Oracle Cloud), ogni IP pubblico è associato a uno privato. Usa gli indirizzi privati sulla macchina e ovunque il server resti in ascolto, e l'IP pubblico di connessione all'interno delle chiavi.
Configura il server per usare l'IP di connessione
Imposta VpnHood! SERVER in modo che ascolti solo sull'IP di connessione e inserisca solo questo indirizzo nelle chiavi di accesso. In questo modo l'IP in uscita non risponderà come server VPN, nemmeno se sottoposto a scansione.
Configura entrambi manualmente: se lasciato a sé, sia su server gestiti che standalone, il server rileva l'indirizzo dal traffico in uscita, finendo per usare l'IP in uscita. Consulta Configura gli indirizzi IP del server per scoprire come fare.
Le chiavi già distribuite contengono il vecchio indirizzo. Mantieni il server in ascolto su di esso per qualche giorno, così le app scaricheranno automaticamente la nuova chiave, poi rimuovilo: fino ad allora, l'IP in uscita risponderà ancora come server VPN.
Verifica il risultato
Connettiti da un dispositivo e verifica il tuo indirizzo IP su un qualsiasi sito che lo mostri. Dovresti visualizzare l'IP in uscita.
Se l'IP di connessione rimane raggiungibile, la rete rilevava il tuo server monitorando la destinazione del suo traffico. Se invece viene bloccato nel giro di poche ore, la rete riconosce la connessione stessa: chiedi ai tuoi utenti di attivare Cloak Mode e assegna un nome di dominio al server.
Connettiti tramite un nome di dominio
Per impostazione predefinita, il server utilizza un certificato autofirmato con un nome fittizio. Assegnagli un nome di dominio di tua proprietà, con un certificato emesso da un'autorità di certificazione come Let's Encrypt, e la connessione sembrerà una normale visita a un sito web.
Un dominio è utile anche nel caso in cui l'IP di connessione venga comunque bloccato. Le chiavi includeranno il dominio e le app lo utilizzeranno per connettersi: così potrai spostare il server su un nuovo indirizzo, indirizzarvi il dominio e mantenere tutte le chiavi funzionanti.
Connettiti tramite un nome di dominio spiega la procedura per un server gestito e per uno autonomo.
Configura il server dietro un proxy inverso
Se la tua configurazione lo consente, puoi posizionare il server dietro un proxy inverso o una CDN come Cloudflare, così che gli utenti si connettano al proxy anziché all'indirizzo IP del server. La disponibilità e l'efficacia dipendono dal Paese e dalla rete.
Escludi dal server i siti locali dei tuoi utenti
Chiedi ai tuoi utenti di attivare Escludi il mio Paese nell'app. In questo modo, i siti locali (come banche e servizi istituzionali) verranno aperti direttamente senza passare dal server, evitando i comportamenti che fanno bloccare un indirizzo estero.