VpnHood!

Esegui VpnHood! SERVER in Docker

Avvia il server come container su qualsiasi macchina Linux con Docker. Un solo comando per installarlo, gestito o standalone; il container mantiene il server attivo e sempre aggiornato.

Prima di iniziare

  • Una macchina Linux con indirizzo IP pubblico, con architettura x64 o arm64. L'immagine supporta entrambe.
  • Accesso root.
  • Docker con il relativo plugin compose. Il programma di installazione può configurarlo automaticamente su Ubuntu, Debian e distribuzioni derivate.
  • Porta TCP 443 aperta, sia nel firewall della macchina sia in quello dell'hosting provider. Il container condivide la rete dell'host, quindi il server rimane in ascolto direttamente sulla porta dell'host.

Installa un server gestito

In VpnHood! MANAGER, apri Servers, seleziona Add, assegna un nome al server e scegli Create. Tra le opzioni di installazione, seleziona Install on Linux manually by running a command. Nel comando mostrato da MANAGER, sostituisci VpnHoodServer-linux.sh con VpnHoodServer.docker.sh ed eseguilo sulla macchina. Installerà il container con le impostazioni per connettere il server a MANAGER, ponendo la stessa domanda dell'installazione standalone descritta sotto.

Per un container già creato, seleziona invece Install Manually by configuring appsettings. Salva le impostazioni mostrate da MANAGER come /opt/VpnHoodServer/storage/appsettings.json sull'host, poi riavvia il container con sudo docker restart VpnHoodServer.

Crea quindi le chiavi di accesso per i tuoi dispositivi in MANAGER, nella sezione Access Tokens.

Installa un server standalone

Esegui questo comando. Scaricherà il file compose, avvierà il container del server e ti porrà una semplice domanda.

sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh)"

Quando compare Install Docker (y/n)?, digita y per installare Docker, oppure n se è già presente sulla macchina.

Per l'installazione automatica via script senza richieste interattive, ometti -install-docker se Docker è già installato.

sudo su -c "bash <( wget -qO- https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh) -install-docker -q"

Il server memorizza impostazioni, chiavi e log in /opt/VpnHoodServer/storage sull'host, preservandoli anche in caso di rimozione o aggiornamento del container.

Crea una chiave di accesso

Esegui questo comando sulla macchina. La chiave viene generata all'interno del container del server, applicandone direttamente le impostazioni.

sudo docker exec VpnHoodServer /app/vhsupervisor gen

Ad esempio, una chiave per un unico telefono

sudo docker exec VpnHoodServer /app/vhsupervisor gen -name Phone -maxClient 1

L'output e le opzioni corrispondono a quelle di un server autonomo installato senza Docker: copia la riga sotto --- AccessKey --- e consulta Crea la tua prima chiave di accesso per scoprire come limitare una chiave.

Connettiti

Installa VpnHood! CLIENT su ogni dispositivo, inserisci la chiave e connettiti.

Avvia, arresta e controlla il server

Il container si chiama VpnHoodServer. Docker lo riavvia al riavvio della macchina e, al suo interno, il server viene riavviato automaticamente in caso di arresto anomalo.

sudo docker logs VpnHoodServer
sudo docker stop VpnHoodServer
sudo docker start VpnHoodServer

Lo stesso log viene salvato in /opt/VpnHoodServer/storage/logs/server.log sull'host.

Modifica le impostazioni

Il server legge la propria configurazione da /opt/VpnHoodServer/storage/appsettings.json. Modifica il file, quindi riavvia il container con sudo docker restart VpnHoodServer.

Se non puoi modificare un file, inserisci l'intero contenuto di appsettings.json nella variabile d'ambiente VH_APPSETTINGS. Il server la userà al posto del file.

Le guide Configura gli indirizzi IP del server e Connettiti tramite un nome di dominio illustrano le impostazioni modificate più di frequente.

Aggiornamenti

Il server si aggiorna automaticamente all'interno del container. Verifica la presenza di nuove versioni all'avvio e ogni 12 ore, riavviandosi con la versione aggiornata.

Per mantenere una versione specifica, imposta VH_AUTO_UPDATE=0 nell'ambiente del container.

Talvolta una nuova versione richiede un'immagine aggiornata. In questo caso il server mantiene la versione corrente e registra nel log Pull the latest image!. Esegui nuovamente il comando di installazione per scaricare l'immagine più recente e ricreare il container, preservando impostazioni e chiavi.

Se hai eseguito l'installazione con una versione precedente dello script, esegui nuovamente il comando di installazione. Il server passerà alla nuova immagine e il vecchio container VpnHoodUpdater verrà rimosso.

Crea il container manualmente

Se gestisci i container manualmente, questo è quello generato dal programma di installazione. Eseguilo sulla rete dell'host, esattamente come fa l'installer.

sudo docker run -d --name VpnHoodServer --network host --restart always --stop-timeout 30 -v /opt/VpnHoodServer/storage:/app/storage vpnhood/vpnhoodserver

Per passare a un'immagine più recente, scarica vpnhood/vpnhoodserver e ricrea il container.

Passaggi successivi