
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.
English | 简体中文 | 繁體中文 | 日本語 | Русский
Script di configurazione automatica del server VPN IPsec
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:
- Docker VPN: IPsec VPN, WireGuard, OpenVPN, Headscale
- AI: Self-Hosted AI Stack per LLM locali, chat, RAG, voce e strumenti AI
- 📚 Libri: The Self-Hosted AI Builder’s Guide, Privacy Tools in the Age of AI
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:
[](https://cloud.linode.com/stackscripts/37239) [](azure/README.md)
[**» 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.