Torna agli aggiornamenti
UpdatedAug 8, 2026

Docker IPsec VPN Server — Updated!

Server VPN IPsec basato su Docker con supporto per IPsec/L2TP, Cisco IPsec e IKEv2, generazione automatica delle credenziali e configurazione client multi-piattaforma.

Condividi

English | 简体中文 | 繁體中文 | Русский

Server VPN IPsec su Docker

Build Status GitHub Stars Docker Stars Docker Pulls

Immagine Docker per eseguire un server VPN IPsec, con IPsec/L2TP, Cisco IPsec e IKEv2.

Basata su Alpine 3.23 o Debian 12 con Libreswan (software VPN IPsec) e xl2tpd (demone L2TP).

Una VPN IPsec cifra il tuo traffico di rete, in modo che nessuno tra te e il server VPN possa intercettare i tuoi dati mentre viaggiano su Internet. Questo è particolarmente utile quando si utilizzano reti non sicure, ad esempio in caffè, aeroporti o camere d'albergo.

Caratteristiche:

  • Genera automaticamente le credenziali VPN e la configurazione IKEv2 al primo avvio
  • Supporta IKEv2 con cifrari forti e veloci (ad es. AES-GCM)
  • Genera profili VPN per configurare automaticamente dispositivi iOS, macOS e Android
  • Supporta Windows, macOS, iOS, Android, Chrome OS e Linux come client VPN
  • Include uno script di supporto per gestire utenti e certificati IKEv2
  • Compilata e pubblicata automaticamente tramite GitHub Actions
  • Dati persistenti tramite un volume Docker
  • Multi-arch: linux/amd64, linux/arm64, linux/arm/v7

Disponibili anche:

📘 Interessato all'AI self-hosted? The Self-Hosted AI Builder’s Guide è una guida pratica per costruire, proteggere e gestire il tuo stack AI privato.

Avvio rapido

Usa questo comando per configurare un server VPN IPsec su Docker:

docker run \
    --name ipsec-vpn-server \
    --restart=always \
    -v ikev2-vpn-data:/etc/ipsec.d \
    -v /lib/modules:/lib/modules:ro \
    -p 500:500/udp \
    -p 4500:4500/udp \
    -d --privileged \
    hwdsl2/ipsec-vpn-server

I dettagli di accesso VPN verranno generati casualmente. Consulta Recupera i dettagli di accesso VPN.

In alternativa, puoi configurare una VPN IPsec senza Docker. Per saperne di più su come utilizzare questa immagine, leggi le sezioni seguenti.

Community

Requisiti

  • Un server Linux con un indirizzo IP pubblico o un nome DNS
  • Docker installato
  • Porte VPN aperte nel firewall (UDP 500 e 4500)
  • Puoi anche usare Podman per eseguire questa immagine, dopo aver creato un alias per docker

Nota: Gli utenti avanzati possono usare questa immagine su macOS con Docker for Mac. Prima di usare la modalità IPsec/L2TP, potrebbe essere necessario riavviare il container una volta con docker restart ipsec-vpn-server. Questa immagine non supporta Docker for Windows.

Download

Ottieni la build attendibile dal registro Docker Hub:

docker pull hwdsl2/ipsec-vpn-server

In alternativa, puoi scaricare da Quay.io:

docker pull quay.io/hwdsl2/ipsec-vpn-server
docker image tag quay.io/hwdsl2/ipsec-vpn-server hwdsl2/ipsec-vpn-server

Piattaforme supportate: linux/amd64, linux/arm64 e linux/arm/v7.

Gli utenti avanzati possono compilare dal codice sorgente su GitHub.

Confronto delle immagini

Sono disponibili due immagini precompilate. L'immagine predefinita basata su Alpine è di soli ~19 MB.

Basata su AlpineBasata su Debian
Nome immaginehwdsl2/ipsec-vpn-serverhwdsl2/ipsec-vpn-server:debian
Dimensione compressa~ 19 MB~ 62 MB
Immagine di baseAlpine Linux 3.23Debian Linux 12
Piattaformeamd64, arm64, arm/v7amd64, arm64, arm/v7
Versione Libreswan5.4.15.4.1
IPsec/L2TP✅✅
Cisco IPsec✅✅
IKEv2✅✅

Nota: Per utilizzare l'immagine basata su Debian, sostituisci ogni hwdsl2/ipsec-vpn-server con hwdsl2/ipsec-vpn-server:debian in questo README. Queste immagini non sono attualmente compatibili con i sistemi Synology NAS.

Voglio usare la versione precedente di Libreswan 4.

In genere si consiglia di utilizzare l'ultima versione di Libreswan 5, che è la versione predefinita in questo progetto. Tuttavia, se vuoi usare la versione precedente di Libreswan 4, puoi compilare l'immagine Docker dal codice sorgente:

git clone https://github.com/hwdsl2/docker-ipsec-vpn-server
cd docker-ipsec-vpn-server
# Specify Libreswan version 4
sed -i 's/SWAN_VER=5\..*/SWAN_VER=4.15/' Dockerfile Dockerfile.debian
# To build Alpine-based image
docker build -t hwdsl2/ipsec-vpn-server .
# To build Debian-based image
docker build -f Dockerfile.debian -t hwdsl2/ipsec-vpn-server:debian .

Come usare questa immagine

Variabili d'ambiente

Nota: Tutte le variabili di questa immagine sono opzionali, il che significa che non devi inserire alcuna variabile e puoi avere un server VPN IPsec pronto all'uso! Per farlo, crea un file env vuoto usando touch vpn.env e passa alla sezione successiva.

Questa immagine Docker utilizza le seguenti variabili, che possono essere dichiarate in un file env (vedi esempio):

VPN_IPSEC_PSK=your_ipsec_pre_shared_key
VPN_USER=your_vpn_username
VPN_PASSWORD=your_vpn_password

Questo creerà un account utente per l'accesso VPN, che può essere utilizzato dai tuoi molteplici dispositivi*. La PSK IPsec (chiave pre-condivisa) è specificata dalla variabile d'ambiente VPN_IPSEC_PSK. Il nome utente VPN è definito in VPN_USER, e la password VPN è specificata da VPN_PASSWORD.

Categorie