Torna agli aggiornamenti
UpdatedAug 2, 2026

Setup IPsec VPN — Updated!

Configurazione automatizzata del server VPN IPsec con supporto IPsec/L2TP, Cisco IPsec e IKEv2. Include script di supporto per la gestione di utenti e certificati e genera profili per client iOS, macOS, Android e Windows.

Condividi

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

Script di configurazione automatica del server VPN IPsec

Build Status GitHub Stars Docker Stars Docker Pulls

Configura il tuo server VPN IPsec in pochi minuti, con IPsec/L2TP, Cisco IPsec e IKEv2.

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

Useremo Libreswan come server IPsec e xl2tpd come provider L2TP.

Caratteristiche:

  • Configurazione del server VPN IPsec completamente automatizzata, nessun input richiesto all'utente
  • Supporta IKEv2 con cifrari forti e veloci (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 script di supporto per gestire utenti e certificati VPN

Disponibile anche:

Avvio rapido

Per prima cosa, prepara il tuo server Linux* con un'installazione di un sistema operativo supportato.

Usa questo comando one-liner per configurare un server VPN IPsec:```bash wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh

I tuoi dati di accesso VPN verranno generati casualmente e visualizzati al termine.

> [!TIP]
> Facoltativamente, installa [WireGuard](https://github.com/hwdsl2/wireguard-install), [OpenVPN](https://github.com/hwdsl2/openvpn-install) e/o [Headscale](https://github.com/hwdsl2/headscale-install) sullo stesso server.

<details>
<summary>
Guarda lo script in azione (registrazione del terminale).
</summary>

**Nota:** Questa registrazione è solo a scopo dimostrativo. Le credenziali VPN in questa registrazione **NON** sono valide.

<p align="center"><img src="https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/docs/images/script-demo.svg"></p>
</details>
<details>
<summary>
Clicca qui se non riesci a scaricare.
</summary>

Puoi anche usare `curl` per scaricare:```bash
curl -fsSL https://get.vpnsetup.net -o vpn.sh && sudo sh vpn.sh

Alternative URL di configurazione:```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/vpnsetup.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/vpnsetup.sh

Se non riesci a scaricare il file, apri [vpnsetup.sh](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/vpnsetup.sh), quindi fai clic sul pulsante `Raw` sulla destra. Premi `Ctrl/Cmd+A` per selezionare tutto, `Ctrl/Cmd+C` per copiare, quindi incolla nel tuo editor preferito.
</details>

È disponibile anche un'[immagine Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) precompilata. Per altre opzioni e configurazione del client, leggi le sezioni seguenti.

\* Un server cloud, un server virtuale privato (VPS) o un server dedicato.

## Community

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

## Requisiti

Un server cloud, un server virtuale privato (VPS) o un server dedicato, con un'installazione di:

- Ubuntu 26.04, 24.04 o 22.04
- Debian 13, 12 o 11
- CentOS Stream 10 o 9
- Rocky Linux o AlmaLinux
- Oracle Linux

<details>
<summary>
Altre distribuzioni Linux supportate.
</summary>

- Raspberry Pi OS (Raspbian)
- Kali Linux
- Alpine Linux
- Red Hat Enterprise Linux (RHEL)
</details>

Questo include anche VM Linux nei cloud pubblici, come [DigitalOcean](https://blog.ls20.com/digitalocean), [Vultr](https://blog.ls20.com/vultr), [Linode](https://blog.ls20.com/linode), [OVH](https://www.ovhcloud.com/en/vps/) e [Microsoft Azure](https://azure.microsoft.com). Gli utenti di cloud pubblici possono anche eseguire la distribuzione utilizzando [user data](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#vpnsetup).

Distribuzione rapida su:

[![Deploy to Linode](https://assets.kitploit.com/production/public/readmes/647/14c2143c20d7c521b606f90a0cf1610d8bd96b3f6516f422d8ca848b879bb6fc.png)](https://cloud.linode.com/stackscripts/37239) &nbsp;[![Deploy to Azure](https://assets.kitploit.com/production/public/readmes/647/79c45f89c80fa35c65259790605f75fe6b65db10aacefa870a55784152a9d31e.png)](azure/README.md)

[**&raquo; Voglio eseguire il mio VPN ma non ho un server per questo**](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#gettingavps)

Per server con firewall esterno (ad es. [EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)/[GCE](https://cloud.google.com/vpc/docs/firewalls)), aprire le porte UDP 500 e 4500 per il VPN.

È disponibile anche un'[immagine Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) precompilata. Gli utenti avanzati possono installare su un [Raspberry Pi](https://www.raspberrypi.com). [[1]](https://elasticbyte.net/posts/setting-up-a-native-cisco-ipsec-vpn-server-using-a-raspberry-pi/) [[2]](https://www.stewright.me/2018/07/create-a-raspberry-pi-vpn-server-using-l2tpipsec/)

> [!WARNING]
> **NON** eseguire questi script sul tuo PC o Mac! Devono essere usati solo su un server!

## Installazione

Per prima cosa, aggiorna il tuo server con `sudo apt-get update && sudo apt-get dist-upgrade` (Ubuntu/Debian) o `sudo yum update` e riavvia. Questo è facoltativo, ma consigliato.

Per installare il VPN, scegli una delle seguenti opzioni:

**Opzione 1:** Lascia che lo script generi credenziali VPN casuali per te (verranno visualizzate al termine).```bash
wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh

Opzione 2: Modifica lo script e fornisci le tue credenziali VPN.```bash wget https://get.vpnsetup.net -O vpn.sh nano -w vpn.sh [Replace with your own values: YOUR_IPSEC_PSK, YOUR_USERNAME and YOUR_PASSWORD] sudo sh vpn.sh

> [!NOTE]
> Una PSK IPsec sicura dovrebbe essere composta da almeno 20 caratteri casuali.

Categorie