Torna agli aggiornamenti
New releaseJul 24, 2026

radmin-vpn-linux v1.0.0-rc8

Esegui Radmin VPN su Linux tramite Wine — driver personalizzato, bridge TAP, zero perdita di pacchetti

Condividi

Radmin VPN per Linux

Esegui Radmin VPN su Linux tramite Wine. Unisciti a reti VPN, vedi i peer, gioca — tutto senza una VM Windows.

Non l'ho creato perché fosse più facile di una VM. L'ho creato perché pensavo fosse più facile di una VM.

Codice assistito dall'IA. Sviluppato in collaborazione tra un umano e Claude (Anthropic). Il driver, gli hook e il bridge sono stati scritti con un esteso reverse engineering assistito dall'IA del protocollo driver non documentato di Radmin VPN usando Ghidra. Funziona, ma senza garanzie. Non affiliato a Famatech. Radmin VPN è proprietario — scaricalo tu stesso da radmin-vpn.com. Usalo a tuo rischio.

Come funziona

Il servizio Windows di Radmin VPN comunica con un driver miniport NDIS per la sua scheda di rete virtuale. Wine non supporta NDIS, quindi sostituiamo il driver con una nostra implementazione che fa da bridge verso un dispositivo TAP Linux. Una DLL di hook gestisce i problemi di compatibilità con Wine (nomi degli adapter, permessi del registro). Il risultato è un client Radmin VPN completamente funzionante che gira nativamente sotto Wine.

App Linux ← TAP (radminvpn0) ← tap_bridge ← FIFO ← rvpnnetmp.sys (driver Wine) ← RvControlSvc.exe

Avvio rapido (AppImage, consigliato)

Prendi RadminVPN-Linux-x86_64.AppImage dall'ultima release. Niente da installare — Wine è incluso.

Release candidate (es. v1.0.0-rc1) sono pubblicate come pre-release di GitHub. Il link latest sopra punta sempre alla build stabile più recente, quindi le pre-release non appariranno lì — prendile dall'elenco completo delle release.

chmod +x RadminVPN-Linux-x86_64.AppImage
./RadminVPN-Linux-x86_64.AppImage

Al primo avvio scarica il programma di installazione di Radmin VPN contro cui è validato (oppure passa il tuo con --installer). Si apre un terminale con l'avanzamento e serve una richiesta di password sudo per la configurazione TAP.

Lo stato persistente (wineprefix, MAC, log) vive in ~/.local/share/radmin-vpn-linux/.

Radmin si chiude da solo? Il suo aggiornatore sta installando una build più recente all'interno del prefix in esecuzione. Fai l'aggiornamento in modo controllato invece — mantiene il tuo prefix e il tuo ID Radmin:

./RadminVPN-Linux-x86_64.AppImage --update

Poi disattiva "Aggiornamenti automatici" nelle impostazioni di Radmin così smette di provarci. Dettagli in L'aggiornatore automatico di Radmin.

Prerequisiti (build da sorgente / non-AppImage)

  • Wine >= 11.0 (testato su Wine 11.5 Arch Linux e su Wine 11.6 Ubuntu 24.04)
  • mingw-w64 cross-compilatori (i686-w64-mingw32-gcc, x86_64-w64-mingw32-gcc) — per compilare da sorgente
  • iconv (glibc) — per il parsing dei log del servizio
  • sudo — per la creazione del dispositivo TAP e il routing
  • Supporto kernel TUN/TAP — di solito integrato, verifica con modprobe tun
  • Programma di installazione di Radmin VPN — scaricato automaticamente se assente. La versione contro cui questo progetto è validato è fissata in un unico punto, RADMIN_VERSION in lib.sh (attualmente 2.1.4951.1; anche 2.0.4899.9 funziona). Radmin VPN 1.4 non è supportato — si registra e apre l'adapter ma non finisce mai la connessione sotto lo shim Wine, lasciando la GUI bloccata su "Connessione...".

Arch Linux

sudo pacman -S wine mingw-w64-gcc

Ubuntu/Debian

sudo apt install wine64 wine32 gcc-mingw-w64

Avvio rapido da sorgente

git clone https://github.com/baptisterajaut/radmin-vpn-linux.git
cd radmin-vpn-linux

# Opzione A: scarica i binari precompilati dalle GitHub Releases
mkdir -p build
TAG=$(curl -sI https://github.com/baptisterajaut/radmin-vpn-linux/releases/latest | grep -i location | grep -oP 'v[\d.]+')
curl -sL "https://github.com/baptisterajaut/radmin-vpn-linux/releases/download/${TAG}/radmin-vpn-linux-${TAG}.tar.gz" \
  | tar xz -C build/

# Opzione B: compila da sorgente
make

# Scarica il programma di installazione di Radmin VPN da https://www.radmin-vpn.com/
./run.sh --installer ~/Downloads/Radmin_VPN_*.exe

Alle esecuzioni successive, basta:

./run.sh

Flag da riga di comando

FlagDescrizione
--installer <path>Percorso del programma di installazione Radmin_VPN_*.exe (solo al primo avvio).
--no-uiEsegue il servizio senza avviare la GUI di Radmin.
--updateAggiorna Radmin alla versione fissata sul posto. Mantiene il prefix, quindi l'RID registrato con Famatech sopravvive.
--no-broadcast-routesNon aggiunge le route broadcast/multicast → TAP.
--filter-uiAvvia l'interfaccia GTK4 opzionale per il filtraggio dei pacchetti (disattivata di default).
--fix-chatApplica una patch a qwindows.dll di Qt per correggere il crash della finestra chat sotto Wine (disattivato di default).

L'aggiornatore automatico di Radmin

La GUI di Radmin può scaricare una build più recente ed eseguire il suo programma di installazione dentro il prefix attivo, il che uccide la GUI e fa fallire il servizio in esecuzione (il log della GUI mostra poi un programma di installazione sotto AppData\\Local\\Temp). Due difese: il launcher fornisce la build validata corrente così l'aggiornatore non ha nulla da spingere, e una GUI che muore non si porta più dietro il tunnel — viene riavviata una volta, poi la VPN continua a girare headless. Per aggiornare deliberatamente, usa ./run.sh --update, che prima ferma tutto. Disattivare "Aggiornamenti automatici" nelle impostazioni della GUI evita del tutto la corsa.

Sia --filter-ui che --fix-chat sono opzionali. L'interfaccia di filtro richiede il binario rvpn_filter_ui (compilato da make); la correzione chat richiede patch_qwindows_font.py e un interprete Python 3.

Modalità headless / server

Due launcher aggiuntivi eseguono Radmin VPN senza desktop locale — per un VPS o un host in datacenter. Entrambi installano e configurano esattamente come run.sh (stesso wineprefix, stesso flusso --installer al primo avvio, stesso bridge TAP); differiscono solo su come si raggiunge la GUI.

run_datacenter.sh — GUI tramite browser

Esegue la vera GUI di Radmin su un display virtuale (Xvfb) e la serve tramite VNC + noVNC, così puoi configurare le tue reti da un browser e poi lasciarla in esecuzione.

sudo apt install -y xvfb x11vnc websockify novnc   # oppure: make install-datacenter-deps
./run_datacenter.sh --installer ~/Downloads/Radmin_VPN_*.exe
FlagDefaultDescrizione
--vnc-port <n>5900Porta per il server x11vnc.
--web-port <n>6080Porta per l'endpoint web noVNC.
--vnc-password <pw>(nessuna)Password per la sessione VNC / web.
--web-bind <addr>127.0.0.1Indirizzo su cui noVNC ascolta.

Di default noVNC si lega a 127.0.0.1, quindi è raggiungibile solo tramite tunnel SSH:

ssh -L 6080:localhost:6080 your-vps    # poi apri http://localhost:6080/vnc.html

Per esporlo pubblicamente, passa --web-bind 0.0.0.0 insieme a --vnc-password — altrimenti chiunque raggiunga la porta web finisce su un desktop non autenticato e con privilegi di root. Lo script stampa un avviso ben visibile se ti leghi pubblicamente senza password.

run_vps.sh — solo servizio, GUID fisso

Avvia il servizio headless con un GUID TAP hardcoded (niente WMI Wine richiesto) e nessuna GUI. Se un enumeratore di rete personalizzato (rv_net_enum.exe, non incluso in questo repo) è presente una directory sopra, viene avviato; altrimenti il servizio gira semplicemente finché non premi Ctrl+C. Solo --installer è accettato.

Categorie