Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Strumenti/GitLabGitLab/hwdsl2/docker-ipsec-vpn-server
Strumenti di Crittografia/DecrittografiaSicurezza di Rete
GitLabhwdsl2/docker-ipsec-vpn-server

Docker IPsec VPN Server

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

Vedi Repository

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
894 giorni faNon ancora revisionato
[English](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README.md) | [简体中文](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-zh.md) | [繁體中文](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-zh-Hant.md) | [Русский](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-ru.md)

# Server VPN IPsec su Docker

[![Build Status](https://github.com/hwdsl2/docker-ipsec-vpn-server/actions/workflows/main-alpine.yml/badge.svg)](https://github.com/hwdsl2/docker-ipsec-vpn-server/actions/workflows/main-alpine.yml) [![GitHub Stars](https://raw.githubusercontent.com/hwdsl2/badges/main/img/github-stars-docker-ipsec-vpn-server.svg)](https://github.com/hwdsl2/docker-ipsec-vpn-server/stargazers) [![Docker Stars](https://raw.githubusercontent.com/hwdsl2/badges/main/img/docker-stars-ipsec-vpn-server.svg)](https://hub.docker.com/r/hwdsl2/ipsec-vpn-server/) [![Docker Pulls](https://raw.githubusercontent.com/hwdsl2/badges/main/img/docker-pulls-ipsec-vpn-server.svg)](https://hub.docker.com/r/hwdsl2/ipsec-vpn-server/)

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](https://libreswan.org) (software VPN IPsec) e [xl2tpd](https://github.com/xelerance/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](https://github.com/hwdsl2/docker-ipsec-vpn-server/actions)
- Dati persistenti tramite un volume Docker
- Multi-arch: `linux/amd64`, `linux/arm64`, `linux/arm/v7`

**Disponibili anche:**

- VPN: [IPsec senza Docker](https://github.com/hwdsl2/setup-ipsec-vpn), [WireGuard](https://github.com/hwdsl2/docker-wireguard), [OpenVPN](https://github.com/hwdsl2/docker-openvpn), [Headscale](https://github.com/hwdsl2/docker-headscale)
- AI: [Self-Hosted AI Stack](https://github.com/hwdsl2/self-hosted-ai-stack) per LLM locali, chat, RAG, voce e strumenti AI

> 📘 Interessato all'AI self-hosted? [The Self-Hosted AI Builder’s Guide](https://books2read.com/aiguide?store=amazon) è 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:

```bash
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](#retrieve-vpn-login-details).

In alternativa, puoi [configurare una VPN IPsec senza Docker](https://github.com/hwdsl2/setup-ipsec-vpn). Per saperne di più su come utilizzare questa immagine, leggi le sezioni seguenti.

## Community

- 📬 [Ricevi aggiornamenti sul progetto e guide di deployment gratuite](https://selfhostedstack.beehiiv.com/subscribe?utm_campaign=vpn) (1–2 email al mese)
- 💬 Unisciti alla community [r/selfhostedstack](https://www.reddit.com/r/selfhostedstack/) per le discussioni
- ⭐ Metti una stella al repository se lo trovi utile — aiuta gli altri a scoprirlo

## 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](https://docs.podman.io) 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](https://docs.docker.com/desktop/setup/install/mac-install/). 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](https://hub.docker.com/r/hwdsl2/ipsec-vpn-server/):

```bash
docker pull hwdsl2/ipsec-vpn-server
```

In alternativa, puoi scaricare da [Quay.io](https://quay.io/repository/hwdsl2/ipsec-vpn-server):

```bash
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](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#build-from-source-code) su GitHub.

### Confronto delle immagini

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

|                   | Basata su Alpine         | Basata su Debian               |
| ----------------- | ------------------------ | ------------------------------ |
| Nome immagine     | hwdsl2/ipsec-vpn-server  | hwdsl2/ipsec-vpn-server:debian |
| Dimensione compressa | ~ 19 MB               | ~ 62 MB                        |
| Immagine di base  | Alpine Linux 3.23        | Debian Linux 12                |
| Piattaforme       | amd64, arm64, arm/v7     | amd64, arm64, arm/v7           |
| Versione Libreswan | 5.4.1                   | 5.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.

<details>
<summary>
Voglio usare la versione precedente di Libreswan 4.
</summary>

In genere si consiglia di utilizzare l'ultima versione di [Libreswan](https://libreswan.org/) 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:

```bash
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 .
```
</details>

## 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](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/vpn.env.example)):

```
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[\*](#important-notes). 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`.

Sono supportati utenti VPN aggiuntivi, e possono essere opzionalmente dichiarati nel tuo file `env` in questo modo. I nomi utente e le password devono essere separati da spazi, e i nomi utente non possono contenere duplicati. Tutti gli utenti VPN condivideranno la stessa PSK IPsec.

```
VPN_ADDL_USERS=additional_username_1 additional_username_2
VPN_ADDL_PASSWORDS=additional_password_1 additional_password_2
```

Le variabili sopra riportate sono valide solo per le modalità IPsec/L2TP e IPsec/XAuth ("Cisco IPsec"). Per IKEv2, consulta [Configurare e utilizzare la VPN IKEv2](#configure-and-use-ikev2-vpn).

> [!IMPORTANT]
> Nel tuo file `env`, scrivi i valori senza virgolette o spazi attorno al `=`. I valori non devono contenere `\`, `"` o `'`. Una PSK IPsec sicura dovrebbe essere composta da almeno 20 caratteri casuali.

**Nota:** Se modifichi il file `env` dopo che il container Docker è già stato creato, devi rimuovere e ricreare il container affinché le modifiche abbiano effetto. Consulta [Aggiornare l'immagine Docker](#update-docker-image).

### Variabili d'ambiente aggiuntive

Gli utenti avanzati possono facoltativamente specificare un nome DNS, un nome client e/o server DNS personalizzati.

<details>
<summary>
Scopri come specificare un nome DNS, un nome client e/o server DNS personalizzati.
</summary>

Gli utenti avanzati possono facoltativamente specificare un nome DNS per l'indirizzo del server IKEv2. Il nome DNS deve essere un nome di dominio completamente qualificato (FQDN). Esempio:

```
VPN_DNS_NAME=vpn.example.com
```

Puoi specificare un nome per il primo client IKEv2. Usa una sola parola, senza caratteri speciali eccetto `-` e `_`. Il valore predefinito è `vpnclient` se non specificato.

```
VPN_CLIENT_NAME=your_client_name
```

Per impostazione predefinita, i client sono impostati per utilizzare [Google Public DNS](https://developers.google.com/speed/public-dns/) quando la VPN è attiva. È possibile specificare server DNS personalizzati per tutte le modalità VPN. Esempio:

```
VPN_DNS_SRV1=1.1.1.1
VPN_DNS_SRV2=1.0.0.1
```

Per maggiori dettagli e un elenco di alcuni provider DNS pubblici popolari, consulta [Usare server DNS alternativi](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md).

Per impostazione predefinita, non è richiesta alcuna password quando si importa la configurazione del client IKEv2. Puoi scegliere di proteggere i file di configurazione del client utilizzando una password casuale.

```
VPN_PROTECT_CONFIG=yes
```

**Nota:** Le variabili sopra non hanno effetto per la modalità IKEv2, se IKEv2 è già configurato nel container Docker. In questo caso, puoi rimuovere IKEv2 e configurarlo nuovamente utilizzando opzioni personalizzate. Fai riferimento a [Configure and use IKEv2 VPN](#configure-and-use-ikev2-vpn).
</details>

### Avvia il server VPN IPsec

Crea un nuovo container Docker da questa immagine (sostituisci `./vpn.env` con il tuo file `env`):

```bash
docker run \
    --name ipsec-vpn-server \
    --env-file ./vpn.env \
    --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
```

In questo comando, utilizziamo l'opzione `-v` di `docker run` per creare un nuovo [volume Docker](https://docs.docker.com/storage/volumes/) chiamato `ikev2-vpn-data`, e montarlo in `/etc/ipsec.d` nel container. I dati relativi a IKEv2 come certificati e chiavi persisteranno nel volume, e successivamente quando dovrai ricreare il container Docker, basterà specificare nuovamente lo stesso volume.

Si consiglia di abilitare IKEv2 quando si utilizza questa immagine. Tuttavia, se preferisci non abilitare IKEv2 e utilizzare solo le modalità IPsec/L2TP e IPsec/XAuth ("Cisco IPsec") per connetterti alla VPN, rimuovi la prima opzione `-v` dal comando `docker run` sopra.

**Nota:** Gli utenti avanzati possono anche [eseguire senza modalità privilegiata](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#run-without-privileged-mode).

### Recuperare i dettagli di accesso alla VPN

Se non hai specificato un file `env` nel comando `docker run` sopra, `VPN_USER` sarà impostato per impostazione predefinita su `vpnuser` e sia `VPN_IPSEC_PSK` che `VPN_PASSWORD` saranno generati casualmente. Per recuperarli, visualizza i log del container:

```bash
docker logs ipsec-vpn-server
```

Cerca queste righe nell'output:

```
Connect to your new VPN with these details:

Server IP: your_vpn_server_ip
IPsec PSK: your_ipsec_pre_shared_key
Username: your_vpn_username
Password: your_vpn_password
```

L'output includerà anche i dettagli per la modalità IKEv2, se abilitata.

(Facoltativo) Eseguire il backup dei dettagli di accesso VPN generati (se presenti) nella directory corrente:

```bash
docker cp ipsec-vpn-server:/etc/ipsec.d/vpn-gen.env ./
```

## Utilizzo di docker-compose

```bash
cp vpn.env.example vpn.env
# Edit vpn.env if needed, then:
docker compose up -d
docker logs ipsec-vpn-server
```

Esempio `docker-compose.yml` (già incluso):

```yaml
volumes:
  ikev2-vpn-data:

services:
  vpn:
    image: hwdsl2/ipsec-vpn-server
    restart: always
    env_file:
      - ./vpn.env
    ports:
      - "500:500/udp"
      - "4500:4500/udp"
    privileged: true
    hostname: ipsec-vpn-server
    container_name: ipsec-vpn-server
    volumes:
      - ikev2-vpn-data:/etc/ipsec.d
      - /lib/modules:/lib/modules:ro
```

## Passaggi successivi

*Leggi questo documento in altre lingue: [English](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README.md#next-steps), [简体中文](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-zh.md#下一步), [繁體中文](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-zh-Hant.md#下一步), [Русский](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/README-ru.md#следующие-шаги).*

Configura il tuo computer o dispositivo per utilizzare la VPN. Fai riferimento a:

**[Configurare e utilizzare la VPN IKEv2 (consigliato)](#configure-and-use-ikev2-vpn)**

**[Configurare i client VPN IPsec/L2TP](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients.md)**

**[Configurare i client VPN IPsec/XAuth ("Cisco IPsec")](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-xauth.md)**

**Leggi il [📘 libro sulla VPN](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/vpn-book.md) per accedere a [contenuti extra](https://ko-fi.com/post/Support-this-project-and-get-access-to-supporter-o-O5O7FVF8J).**

Goditi la tua VPN personale! :sparkles::tada::rocket::sparkles:

## Note importanti

**Utenti Windows**: Per la modalità IPsec/L2TP, è necessaria una [modifica una tantum del registro](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients.md#windows-error-809) se il server o il client VPN si trova dietro un NAT (ad esempio un router domestico).

Lo stesso account VPN può essere utilizzato da più dispositivi. Tuttavia, a causa di una limitazione di IPsec/L2TP, se desideri connettere più dispositivi dietro lo stesso NAT (ad esempio un router domestico), devi utilizzare la modalità [IKEv2](#configure-and-use-ikev2-vpn) o [IPsec/XAuth](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/clients-xauth.md).

Se desideri aggiungere, modificare o rimuovere account utente VPN, aggiorna prima il tuo file `env`, poi devi rimuovere e ricreare il container Docker seguendo le istruzioni della [sezione successiva](#update-docker-image). Gli utenti avanzati possono eseguire il [bind mount](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#bind-mount-the-env-file) del file `env`.

Per i server con un firewall esterno (ad esempio [EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)/[GCE](https://cloud.google.com/vpc/docs/firewalls)), apri le porte UDP 500 e 4500 per la VPN. Utenti Aliyun, vedere [#433](https://github.com/hwdsl2/setup-ipsec-vpn/issues/433).

I client sono impostati per utilizzare [Google Public DNS](https://developers.google.com/speed/public-dns/) quando la VPN è attiva. Se si preferisce un altro provider DNS, leggi [questa sezione](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#use-alternative-dns-servers).

## Aggiornare l'immagine Docker

Per aggiornare l'immagine e il container Docker, prima [scarica](#download) l'ultima versione:

```bash
docker pull hwdsl2/ipsec-vpn-server
```

Se l'immagine Docker è già aggiornata, dovresti vedere:

```
Status: Image is up to date for hwdsl2/ipsec-vpn-server:latest
```

Altrimenti, scaricherà l'ultima versione. Per aggiornare il tuo container Docker, annota prima i tuoi [dettagli di accesso VPN](#retrieve-vpn-login-details). Poi rimuovi il container Docker con `docker rm -f ipsec-vpn-server`. Infine, ricrealo seguendo le istruzioni di [Come usare questa immagine](#how-to-use-this-image).

## Configurare e usare la VPN IKEv2

La modalità IKEv2 presenta miglioramenti rispetto a IPsec/L2TP e IPsec/XAuth ("Cisco IPsec"), e non richiede una PSK IPsec, un nome utente o una password. Leggi di più [qui](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/ikev2-howto.md).

Per prima cosa, controlla i log del container per visualizzare i dettagli di IKEv2:

```bash
docker logs ipsec-vpn-server
```

**Nota:** Se non riesci a trovare i dettagli IKEv2, IKEv2 potrebbe non essere abilitato nel container. Prova ad aggiornare l'immagine Docker e il container usando le istruzioni della sezione [Update Docker image](#update-docker-image).

Durante la configurazione di IKEv2, viene creato un client IKEv2 (con nome predefinito `vpnclient`), con la sua configurazione esportata in `/etc/ipsec.d` **all'interno del container**. Per copiare i file di configurazione sull'host Docker:

```bash
# Check contents of /etc/ipsec.d in the container
docker exec -it ipsec-vpn-server ls -l /etc/ipsec.d
# Example: Copy a client config file from the container
# to the current directory on the Docker host
docker cp ipsec-vpn-server:/etc/ipsec.d/vpnclient.p12 ./
```

**Passaggi successivi:** [Configura i tuoi dispositivi](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/ikev2-howto.md) per utilizzare la VPN IKEv2.

<details>
<summary>
Scopri come gestire i client IKEv2.
</summary>

Puoi gestire i client IKEv2 utilizzando lo script di supporto. Vedi gli esempi di seguito. Per personalizzare le opzioni del client, esegui lo script senza argomenti.

```bash
# Add a new client (using default options)
docker exec -it ipsec-vpn-server ikev2.sh --addclient [client name]
# Export configuration for an existing client
docker exec -it ipsec-vpn-server ikev2.sh --exportclient [client name]
# List existing clients
docker exec -it ipsec-vpn-server ikev2.sh --listclients
# Show usage
docker exec -it ipsec-vpn-server ikev2.sh -h
```

**Nota:** Se si incontra l'errore "executable file not found", sostituire `ikev2.sh` sopra con `/opt/src/ikev2.sh`.
</details>
<details>
<summary>
Scopri come cambiare l'indirizzo del server IKEv2.
</summary>

In determinate circostanze, potrebbe essere necessario cambiare l'indirizzo del server IKEv2. Ad esempio, per passare all'uso di un nome DNS, o dopo che l'IP del server è cambiato. Per cambiare l'indirizzo del server IKEv2, prima [aprire una shell bash all'interno del container](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#bash-shell-inside-container), poi [seguire queste istruzioni](https://github.com/hwdsl2/setup-ipsec-vpn/blob/master/docs/ikev2-howto.md#change-ikev2-server-address). Si noti che i log del container non mostreranno il nuovo indirizzo del server IKEv2 finché non si riavvia il container Docker.
</details>
<details>
<summary>
Rimuovere IKEv2 e configurarlo di nuovo utilizzando opzioni personalizzate.
</summary>

In determinate circostanze, potrebbe essere necessario rimuovere IKEv2 e configurarlo di nuovo utilizzando opzioni personalizzate.

**Attenzione:** Tutta la configurazione IKEv2, inclusi certificati e chiavi, sarà **eliminata permanentemente**. Questa operazione **non può essere annullata**!

**Opzione 1:** Rimuovere IKEv2 e configurarlo di nuovo utilizzando lo script di supporto.

Si noti che questo sovrascriverà le variabili specificate nel file `env`, come `VPN_DNS_NAME` e `VPN_CLIENT_NAME`, e i log del container non mostreranno più informazioni aggiornate per IKEv2.

```bash
# Remove IKEv2 and delete all IKEv2 configuration
docker exec -it ipsec-vpn-server ikev2.sh --removeikev2
# Set up IKEv2 again using custom options
docker exec -it ipsec-vpn-server ikev2.sh
```

**Opzione 2:** Rimuovi `ikev2-vpn-data` e ricrea il container.

1. Annota tutti i tuoi [dettagli di accesso VPN](#retrieve-vpn-login-details).
1. Rimuovi il container Docker: `docker rm -f ipsec-vpn-server`.
1. Rimuovi il volume `ikev2-vpn-data`: `docker volume rm ikev2-vpn-data`.
1. Aggiorna il tuo file `env` e aggiungi opzioni IKEv2 personalizzate come `VPN_DNS_NAME` e `VPN_CLIENT_NAME`, quindi ricrea il container. Fai riferimento a [Come usare questa immagine](#how-to-use-this-image).
</details>

## Utilizzo avanzato

Vedi [Utilizzo avanzato](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md).

- [Usare server DNS alternativi](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#use-alternative-dns-servers)
- [Eseguire senza modalità privilegiata](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#run-without-privileged-mode)
- [Selezionare le modalità VPN](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#select-vpn-modes)
- [Abilitare la perfect forward secrecy IKEv2](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#enable-ikev2-perfect-forward-secrecy)
- [Accedere ad altri container sull'host Docker](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#access-other-containers-on-the-docker-host)
- [Specificare l'IP pubblico del server VPN](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#specify-vpn-servers-public-ip)
- [Assegnare IP statici ai client VPN](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#assign-static-ips-to-vpn-clients)
- [Personalizzare le subnet VPN](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#customize-vpn-subnets)
- [Supporto IPv6](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#ipv6-support)
- [Split tunneling](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#split-tunneling)
- [Informazioni sulla modalità host network](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#about-host-network-mode)
- [Abilitare i log di Libreswan](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#enable-libreswan-logs)
- [Controllare lo stato del server](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#check-server-status)
- [Compilare dal codice sorgente](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#build-from-source-code)
- [Shell Bash all'interno del container](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#bash-shell-inside-container)
- [Eseguire il bind mount del file env](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#bind-mount-the-env-file)
- [Distribuire il controllo della congestione Google BBR](https://gitlab.com/hwdsl2/docker-ipsec-vpn-server/-/blob/master/docs/advanced-usage.md#deploy-google-bbr-congestion-control)

## Dettagli tecnici

Ci sono due servizi in esecuzione: `Libreswan (pluto)` per la VPN IPsec, e `xl2tpd` per il supporto L2TP.

La configurazione IPsec predefinita supporta:

* IPsec/L2TP con PSK
* IKEv1 con PSK e XAuth ("Cisco IPsec")
* IKEv2

Porte richieste: `500/udp` e `4500/udp` (IPsec)

## Licenza

**Nota:** I componenti software all'interno dell'immagine precompilata (come Libreswan e xl2tpd) sono soggetti alle rispettive licenze scelte dai rispettivi titolari dei diritti d'autore. Come per qualsiasi utilizzo di un'immagine precompilata, è responsabilità dell'utente dell'immagine assicurarsi che qualsiasi uso di questa immagine sia conforme a tutte le licenze pertinenti per tutto il software in essa contenuto.

Copyright (C) 2016-2026 [Lin Song](https://github.com/hwdsl2) [![View my profile on LinkedIn](https://assets.kitploit.com/production/public/readmes/648/0dc41eea05dcee104e4963528568884b531a1377d69460315bc16f61eebd4bdf.png)](https://www.linkedin.com/in/linsongui)   
Basato su [il lavoro di Thomas Sarlandie](https://github.com/sarfata/voodooprivacy) (Copyright 2012)

[![Creative Commons License](https://assets.kitploit.com/production/public/readmes/648/acde67df4b37d9df101d6555c669c258cea69750bc84ae2051ebec0970f706c8.png)](http://creativecommons.org/licenses/by-sa/3.0/)   
Quest'opera è distribuita con licenza [Creative Commons Attribution-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-sa/3.0/)   
Attribuzione richiesta: includi il mio nome in qualsiasi opera derivata e fammi sapere come l'hai migliorata!
Scarica lo strumento