Hai un wg0.conf e un client che accetta solo .ovpn, così qualcuno propone di convertire il file. Rinominarlo produce un profilo che OpenVPN non riesce ad analizzare, e una traduzione accurata campo per campo ne produce uno che viene analizzato e poi fallisce all’handshake. Il motivo non è il formato del file. WireGuard e OpenVPN sono protocolli diversi, con handshake diversi, modelli di autenticazione diversi e idee diverse su che cosa sia un peer. La conversione funziona solo nel senso che puoi farti dare un profilo OpenVPN da chi gestisce l’altro estremo.

Il file che hai descrive un peer, non un profilo di connessione

Una configurazione WireGuard è breve perché il protocollo lo è: un’interfaccia con una chiave privata e indirizzi, poi uno o più peer con una chiave pubblica, un endpoint e un elenco AllowedIPs. Non c’è alcun livello di negoziazione da configurare né alcuna suite di cifratura da scegliere.

Un profilo OpenVPN è un client per un canale di controllo basato su TLS, per questo contiene riferimenti a certificati o credenziali e direttive che descrivono come autenticarsi.

Perché un file tradotto fallisce comunque all’handshake

WireGuard inizia con un handshake basato su Noise, cifrato con le chiavi statiche dei peer, e resta silenzioso finché la chiave pubblica del peer non è già nota. OpenVPN apre una sessione TLS, verifica un certificato del server o una chiave statica, poi autentica l’utente con certificati, un nome utente e una password, o entrambi. Niente in un file WireGuard descrive questo. Un file tradotto porterebbe l’endpoint corretto e tutto il resto sbagliato.

Riusare l’indirizzo e la porta non aiuta nemmeno, perché l’altro estremo attende un pacchetto diverso.

Cosa chiedere al fornitore

Se il file WireGuard te l’ha dato un fornitore, chiedi se lo stesso account ha accesso a OpenVPN e richiedi quel profilo. Molti ce l’hanno, e arriva con le sue credenziali, non come copia modificata del primo.

Se la risposta è no, il vincolo è l’abbonamento e non il file, e nessun convertitore lo cambia.

Se il router o il client parla solo OpenVPN

Quando il dispositivo che deve connettersi supporta solo OpenVPN, controlla il supporto dei protocolli documentato dall’altro estremo prima di cercare un’altra estensione. Un router che termina OpenVPN non si convince ad accettare WireGuard importando un file. Le opzioni praticabili sono un endpoint OpenVPN lato server, oppure un altro dispositivo che parli WireGuard.

Scegli in base a chi amministra l’altro estremo, non in base a quale file ti trovi.

Se gestisci tu il server, aggiungi il protocollo

Supportare un secondo protocollo significa gestire un secondo servizio. Su un server Linux è un’istanza OpenVPN con la propria CA, certificato del server, certificati dei client e le direttive server e push, oltre a una regola del firewall per la sua porta. La voce peer esistente di WireGuard non descrive nessuno di questi oggetti. Pianifica il pool di indirizzi e le rotte spinte separatamente dagli AllowedIPs di WireGuard, perché non sono lo stesso meccanismo con due nomi.

Poi verifica dal client: il profilo si carica, la sessione TLS si completa, la rotta spinta compare e il traffico raggiunge un host raggiungibile solo tramite il tunnel.

Dove l’idea del convertitore è sicura

Tradurre i valori a mano in appunti va bene ed è spesso utile, perché l’endpoint, gli indirizzi e la chiave pubblica del peer sono solo fatti del deployment. Caricare una chiave privata su un sito che promette la conversione non va bene, dato che quella chiave è la credenziale e il servizio non ha alcun protocollo verso cui convertirla. Se ti serve lo stesso accesso da un client OpenVPN, chiedi invece una credenziale OpenVPN.

Tieni le due configurazioni una accanto all’altra e trattale come percorsi di accesso separati, perché questo sono.

Articoli correlati