Oggi, le tecnologie VPN e proxy sono sempre più richieste. Gli utenti le utilizzano per accedere a Internet in modo sicuro, aggirare la censura e proteggersi dalle minacce esterne. Quando ci si connette a un server di questo tipo, tutto il traffico passa attraverso un tunnel crittografato e il server diventa il gateway per la rete.
I protocolli classici come OpenVPN o WireGuard offrono buone prestazioni in condizioni stabili, ma spesso subiscono cali di velocità su connessioni scadenti con elevata perdita di pacchetti (reti mobili, Wi-Fi pubblici, paesi con censura rigida). È qui che entrano in gioco protocolli moderni come Hysteria2 e TUIC. Basati su QUIC, offrono alta velocità, bassa latenza ed efficace offuscamento del traffico, proprio come il normale HTTPS (HTTP/3).
Hysteria2 utilizza l'algoritmo "Brutal", che sfrutta in modo aggressivo la larghezza di banda disponibile. TUIC (versione 5) è caratterizzato da un overhead minimo, un eccellente supporto UDP e la creazione di connessioni 0-RTT.
In questo articolo, illustreremo la procedura per configurare il server su Ubuntu/Debian e per connettersi da Windows.
Cosa ti servirà: un VPS con Ubuntu 22.04/24.04 o Debian 12, accesso root e l'indirizzo IP del server. Non è richiesto un dominio.
Connessione al server
Windows (PuTTY): apri PuTTY, inserisci YOUR_SERVER_IP come host, 22 come porta e accedi come root con la password che hai ricevuto via email dal tuo provider VPS.
Linux/macOS (terminale):
ssh root@YOUR_SERVER_IP
Tutti i comandi seguenti vengono eseguiti sul server, nella stessa sessione.
Preparazione del server (Ubuntu / Debian)
Abilita l'inoltro IP
Ciò consente al server di inoltrare i pacchetti del client verso Internet.
nano /etc/sysctl.conf
Inserisci o crea una password (utilizza solo lettere e numeri inglesi, senza spazi).
Individua e decommenta (rimuovi il # all'inizio) oppure aggiungi la seguente riga:
net.ipv4.ip_forward=1
Salva il file (Ctrl+O, Invio) ed esci (Ctrl+X). Applica le modifiche senza riavviare il computer:
sysctl -p
Configurazione NAT (masquerading)
Questa impostazione consente ai client di accedere a Internet tramite il tuo server utilizzando il suo indirizzo IP.
Scopri il nome della tua interfaccia di rete esterna (quella rivolta verso Internet):
ip link show
Solitamente si tratta di eth0, ens3 o enp1s0. Copialo o memorizzalo, quindi aggiungi la regola di masquerading a iptables: sostituisci eth0 con il nome della tua interfaccia.
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Salvataggio delle regole iptables
Per evitare che le regole vengano reimpostate dopo il riavvio del server, è necessario salvarle.
apt update
apt install iptables-persistent -y
netfilter-persistent save
Durante l'installazione potrebbe apparire una richiesta di salvare le regole IPv4/IPv6 correnti: rispondi "Sì" in entrambi i casi.
Configurazione del firewall (UFW)
Apriamo subito tutte le porte necessarie, quindi non c'è bisogno di tornare su questo passaggio in seguito: la porta 22 per SSH (saltando questo passaggio non potrete accedere al server), la porta 443/udp per Hysteria2 e la porta 8443/udp per TUIC.
apt install ufw -y
ufw allow 22/tcp
ufw allow 443/udp
ufw allow 8443/udp
ufw --force enable
ufw status
L'output di ufw status dovrebbe elencare tutte e tre le regole come attive.
Isteria2
Installazione del server Hysteria2
chmod +x hysteria-linux-amd64
mv hysteria-linux-amd64 /usr/local/bin/hysteria
hysteria version
Assicurati che l'output della versione non presenti errori: questo conferma che il file binario funziona correttamente.
Creazione di un certificato SSL autofirmato
Abbiamo bisogno delle nostre chiavi di crittografia per proteggere il traffico tra il tuo computer e il server. Poiché non disponiamo di un dominio, genereremo un certificato autofirmato valido per 365 giorni. Per questo motivo, in seguito dovrai abilitare l'opzione "Salta la verifica del certificato" nel client.
mkdir -p /etc/hysteria
chmod 755 /etc/hysteria
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/hysteria/private.key \
-out /etc/hysteria/cert.crt \
-subj "/CN=YOUR_SERVER_IP"
ls -la /etc/hysteria/
Sia cert.crt che private.key devono essere elencati.
Creazione del file di configurazione
nano /etc/hysteria/config.yaml
Incolla quanto segue, sostituendo YOUR_PASSWORD con la tua password (solo lettere e numeri inglesi, senza spazi):
listen: :443
tls:
cert: /etc/hysteria/cert.crt
key: /etc/hysteria/private.key
auth:
type: password
password: "YOUR_PASSWORD"
masquerade:
type: proxy
proxy:
url: https://cloudflare.com
rewriteHost: true
Il blocco di mascheramento fa sì che il server appaia come un normale sito web se qualcuno apre il suo indirizzo IP in un browser, anziché rivelare i segni di un proxy.
Salva (Ctrl+O, Invio) ed esci (Ctrl+X).
Impostazione dell'avvio automatico
nano /etc/systemd/system/hysteria.service
Il file di unità systemd per l'avvio automatico di Hysteria2.
[Unit]
Description=Hysteria2 Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/hysteria server --config /etc/hysteria/config.yaml
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now hysteria.service
systemctl status hysteria.service
Lo stato dovrebbe mostrare attivo (in esecuzione). Se la console è "bloccata" sulla visualizzazione del registro, premere Q per uscire.
TUIC v5
Download e installazione di TUIC
mkdir -p /usr/local/sbin/tuic
Verifica le versioni disponibili:
curl -s https://api.github.com/repos/tuic-protocol/tuic/releases | grep -Po '"tag_name": "\K[^"]*' | head -10
Scarica il file binario del server: sostituisci il numero di versione corrente a 1.0.0:
wget https://github.com/tuic-protocol/tuic/releases/download/1.0.0/tuic-server-1.0.0-x86_64-unknown-linux-gnu \
-O /usr/local/sbin/tuic/tuic-server
chmod +x /usr/local/sbin/tuic/tuic-server
/usr/local/sbin/tuic/tuic-server --version
Creazione di un certificato autofirmato per TUIC
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /usr/local/sbin/tuic/privkey.pem \
-out /usr/local/sbin/tuic/fullchain.pem \
-subj "/CN=YOUR_SERVER_IP"
ls -la /usr/local/sbin/tuic/
Generazione di un UUID
apt install uuid-runtime -y
uuidgen
Copia l'UUID risultante: ti servirà sia nella configurazione del server riportata di seguito, sia nelle impostazioni del client.
Creazione del file di configurazione
Il file config.json completo per il server TUIC:
nano /usr/local/sbin/tuic/config.json
{
"server": "[::]:8443",
"users": {
"YOUR_UUID": "YOUR_TUIC_PASSWORD"
},
"certificate": "/usr/local/sbin/tuic/fullchain.pem",
"private_key": "/usr/local/sbin/tuic/privkey.pem",
"congestion_control": "bbr",
"alpn": ["h3"],
"log_level": "warn"
}
Qui utilizziamo la porta 8443 perché la 443 è già occupata da Hysteria2. Sostituisci YOUR_UUID con il valore ottenuto al passaggio 4.3 e YOUR_TUIC_PASSWORD con la tua password.
Salva (Ctrl+O, Invio) ed esci (Ctrl+X).
Prova di un avviamento manuale
/usr/local/sbin/tuic/tuic-server -c /usr/local/sbin/tuic/config.json
Se non vengono visualizzati errori, la configurazione è valida. Interrompi il processo con Ctrl+C e procedi con la configurazione dell'avvio automatico.
Impostazione dell'avvio automatico
nano /etc/systemd/system/tuic-server.service
[Unit]
Description=TUIC Server
After=network.target nss-lookup.target
[Service]
User=root
WorkingDirectory=/usr/local/sbin/tuic
ExecStart=/usr/local/sbin/tuic/tuic-server -c config.json
Restart=on-failure
RestartPreventExitStatus=1
RestartSec=5
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now tuic-server.service
systemctl status tuic-server.service
Lo stato dovrebbe indicare attivo (in esecuzione).
Ora due dei protocolli moderni migliori e più veloci sono in esecuzione in parallelo sul server, entrambi mascherati da normale traffico QUIC/HTTPS: Hysteria2 sulla porta standard 443/udp e TUIC v5 sulla porta 8443/udp.
Connessione da Windows
Installazione di Hiddify
Scarica e installa Hiddify per Windows dal sito web ufficiale: https://hiddify.com. Segui le istruzioni del programma di installazione cliccando su "Avanti" / "Installa". Se viene visualizzata la finestra di dialogo SmartScreen di Windows, seleziona "Ulteriori informazioni" → "Esegui comunque".
Profilo Hysteria2
Fai clic su + (Nuovo profilo) → "Inserimento manuale" → protocollo Hysteria2 e compila:
|
Settore |
Valore |
|
Nome del profilo |
Il mio server Hysteria2 |
|
Indirizzo |
IL TUO_INDIRIZZO_IP_SERVER |
|
Porto |
443 |
|
Password |
la password dal passaggio 3.3 |
|
SNI |
IL TUO_INDIRIZZO_IP_SERVER |
|
Salta la verifica del certificato |
On |
L'opzione "Ignora verifica certificato" deve essere abilitata perché il certificato è autofirmato e non proviene da un'autorità di certificazione attendibile.
Profilo TUIC v5
Fai clic su + (Nuovo profilo) → "Inserimento manuale" → protocollo TUIC e compila:
|
Settore |
Valore |
|
Nome del profilo |
Il mio server TUIC |
|
Indirizzo |
IL TUO_INDIRIZZO_IP_SERVER |
|
Porto |
8443 |
|
UUID |
l'UUID dal passaggio 4.3 |
|
Password |
la password dal passaggio 4.4 |
|
Controllo della congestione |
BBR |
|
SNI |
IL TUO_INDIRIZZO_IP_SERVER |
|
Salta la verifica del certificato |
On |
Connessione e verifica
Seleziona un profilo, quindi fai clic sul grande pulsante rotondo "Connetti". Lo stato dovrebbe cambiare in "Connesso".
Per verificare che il traffico venga effettivamente instradato attraverso il tuo server, apri un qualsiasi servizio di verifica IP nel tuo browser: l'indirizzo visualizzato dovrebbe corrispondere a YOUR_SERVER_IP.
Conclusione
Completando questa guida, avrete due protocolli di nuova generazione ad alta velocità in esecuzione in parallelo sul vostro server: Hysteria2 sulla porta 443/UDP e TUIC v5 sulla porta 8443/UDP. Entrambi i protocolli mascherano il traffico trasmesso come una normale connessione QUIC crittografata (HTTP/3), garantendo una connessione stabile anche su canali estremamente instabili.
I profili configurati possono essere utilizzati non solo su Windows, ma anche importati nell'app mobile Hiddify per Android o iOS con impostazioni simili.
In caso di difficoltà di connessione, verificare innanzitutto lo stato dei servizi utilizzando il comando `systemctl status hysteria.service` (o `tuic-server.service`), assicurarsi che le regole del firewall siano attive (`ufw status`) e ricontrollare che l'indirizzo IP, l'UUID e le password siano inseriti correttamente. Nota: i certificati autofirmati emessi sono validi per 365 giorni, quindi dopo esattamente un anno dovranno essere rinnovati utilizzando lo stesso comando `openssl req`.