
Configuration automatisée de serveur VPN IPsec avec prise en charge d'IPsec/L2TP, d'IPsec Cisco et d'IKEv2. Inclut des scripts utilitaires pour la gestion des utilisateurs et des certificats, et génère des profils pour les clients iOS, macOS, Android et Windows.
[English](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README.md) | [简体中文](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-zh.md) | [繁體中文](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-zh-Hant.md) | [日本語](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-ja.md) | [Русский](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-ru.md) # Scripts d'installation automatique du serveur VPN IPsec [](https://github.com/hwdsl2/setup-ipsec-vpn/actions/workflows/main.yml) [](https://github.com/hwdsl2/setup-ipsec-vpn/stargazers) [](https://github.com/hwdsl2/docker-ipsec-vpn-server) [](https://github.com/hwdsl2/docker-ipsec-vpn-server) Configurez votre propre serveur VPN IPsec en quelques minutes seulement, avec IPsec/L2TP, Cisco IPsec et IKEv2. Un VPN IPsec chiffre votre trafic réseau, de sorte que personne entre vous et le serveur VPN ne puisse espionner vos données lorsqu'elles transitent par Internet. Cela est particulièrement utile lorsque vous utilisez des réseaux non sécurisés, par exemple dans des cafés, des aéroports ou des chambres d'hôtel. Nous utiliserons [Libreswan](https://libreswan.org/) comme serveur IPsec, et [xl2tpd](https://github.com/xelerance/xl2tpd) comme fournisseur L2TP. **Fonctionnalités :** - Installation entièrement automatisée du serveur VPN IPsec, aucune saisie utilisateur requise - Prend en charge IKEv2 avec des chiffrements forts et rapides (par exemple AES-GCM) - Génère des profils VPN pour configurer automatiquement les appareils iOS, macOS et Android - Prend en charge Windows, macOS, iOS, Android, Chrome OS et Linux comme clients VPN - Inclut des scripts utilitaires pour gérer les utilisateurs VPN et les certificats **Également disponible :** - VPN Docker : [IPsec VPN](https://github.com/hwdsl2/docker-ipsec-vpn-server), [WireGuard](https://github.com/hwdsl2/docker-wireguard), [OpenVPN](https://github.com/hwdsl2/docker-openvpn), [Headscale](https://github.com/hwdsl2/docker-headscale) - IA : [Self-Hosted AI Stack](https://github.com/hwdsl2/self-hosted-ai-stack) pour les LLM locaux, le chat, le RAG, la voix et les outils d'IA > 📘 Intéressé par l'auto-hébergement d'IA ? [The Self-Hosted AI Builder's Guide](https://books2read.com/aiguide?store=amazon) est un guide pratique pour construire, sécuriser et exploiter votre propre pile d'IA privée. ## Démarrage rapide Commencez avec un serveur Linux\* exécutant un [système d'exploitation pris en charge](#requirements). Utilisez cette commande unique pour configurer un serveur VPN IPsec : ```bash wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh ``` Vos identifiants de connexion VPN seront générés aléatoirement et affichés une fois terminé. **Astuce :** Installez éventuellement [WireGuard](https://github.com/hwdsl2/wireguard-install), [OpenVPN](https://github.com/hwdsl2/openvpn-install) et/ou [Headscale](https://github.com/hwdsl2/headscale-install) sur le même serveur. <details> <summary> Voir le script en action (enregistrement du terminal). </summary> **Remarque :** Cet enregistrement est uniquement à des fins de démonstration. Les identifiants VPN dans cet enregistrement ne sont **PAS** valides. <p align="center"><img src="https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/docs/images/script-demo.svg"></p> </details> <details> <summary> Cliquez ici si vous ne parvenez pas à télécharger. </summary> Vous pouvez également utiliser `curl` pour télécharger : ```bash curl -fsSL https://get.vpnsetup.net -o vpn.sh && sudo sh vpn.sh ``` URLs de configuration alternatives : ```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/vpnsetup.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/vpnsetup.sh ``` Si vous ne parvenez pas à télécharger, ouvrez [vpnsetup.sh](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/vpnsetup.sh), puis cliquez sur le bouton `Raw` à droite. Appuyez sur `Ctrl/Cmd+A` pour tout sélectionner, `Ctrl/Cmd+C` pour copier, puis collez dans votre éditeur préféré. </details> Une [image Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) préconstruite est également disponible. Pour d'autres options et la configuration des clients, lisez les sections ci-dessous. \* Un serveur cloud, un serveur privé virtuel (VPS) ou un serveur dédié. ## Communauté - 📬 [Recevez les mises à jour du projet et des guides de déploiement gratuits](https://selfhostedstack.beehiiv.com/subscribe?utm_campaign=vpn) (1–2 e-mails/mois) - 💬 Rejoignez la communauté [r/selfhostedstack](https://www.reddit.com/r/selfhostedstack/) pour discuter - ⭐ Ajoutez une étoile au dépôt si vous le trouvez utile — cela aide les autres à le découvrir ## Prérequis Un serveur cloud, un serveur privé virtuel (VPS) ou un serveur dédié, avec une installation de : - Ubuntu 26.04, 24.04 ou 22.04 - Debian 13 ou 12 - CentOS Stream 10 ou 9 - Rocky Linux ou AlmaLinux - Oracle Linux <details> <summary> Autres distributions Linux prises en charge. </summary> - Raspberry Pi OS (Raspbian) - Kali Linux - Alpine Linux - Red Hat Enterprise Linux (RHEL) </details> Cela inclut également les VM Linux dans les clouds publics, tels que [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/) et [Microsoft Azure](https://azure.microsoft.com). Les utilisateurs de cloud public peuvent également déployer en utilisant les [données utilisateur](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#vpnsetup). Déploiement rapide vers : [](https://cloud.linode.com/stackscripts/37239) [](azure/README.md) [**» Je veux exécuter mon propre VPN mais je n'ai pas de serveur pour cela**](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#gettingavps) Pour les serveurs avec un pare-feu externe (par ex. [EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)/[GCE](https://cloud.google.com/vpc/docs/firewalls)), ouvrez les ports UDP 500 et 4500 pour le VPN. Une [image Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) préconstruite est également disponible. Les utilisateurs avancés peuvent installer sur 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] > Exécutez ces scripts sur le serveur Linux qui hébergera votre VPN. Ne les exécutez pas sur votre PC ou Mac personnel. ## Installation Tout d'abord, mettez à jour votre serveur avec `sudo apt-get update && sudo apt-get dist-upgrade` (Ubuntu/Debian) ou `sudo yum update` puis redémarrez. C'est facultatif, mais recommandé. Pour installer le VPN, veuillez choisir l'une des options suivantes : **Option 1 :** Laissez le script générer des identifiants VPN aléatoires pour vous (ils seront affichés à la fin). ```bash wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh ``` **Option 2 :** Modifiez le script et fournissez vos propres identifiants 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] > Un PSK IPsec sécurisé doit être composé d'au moins 20 caractères aléatoires. **Option 3 :** Définissez vos identifiants VPN en tant que variables d'environnement. ```bash # All values MUST be placed inside 'single quotes' # DO NOT use these special characters within values: \ " ' wget https://get.vpnsetup.net -O vpn.sh sudo VPN_IPSEC_PSK='your_ipsec_pre_shared_key' \ VPN_USER='your_vpn_username' \ VPN_PASSWORD='your_vpn_password' \ sh vpn.sh ``` **Astuce :** Vous pouvez éventuellement installer [WireGuard](https://github.com/hwdsl2/wireguard-install), [OpenVPN](https://github.com/hwdsl2/openvpn-install) et/ou [Headscale](https://github.com/hwdsl2/headscale-install) sur le même serveur. Si votre serveur exécute CentOS Stream, Rocky Linux ou AlmaLinux, installez d'abord OpenVPN/WireGuard, puis installez le VPN IPsec. <details> <summary> Cliquez ici si vous ne parvenez pas à télécharger. </summary> Vous pouvez également utiliser `curl` pour télécharger. Par exemple : ```bash curl -fL https://get.vpnsetup.net -o vpn.sh sudo sh vpn.sh ``` URLs de configuration alternatives : ```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/vpnsetup.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/vpnsetup.sh ``` Si vous ne parvenez pas à télécharger, ouvrez [vpnsetup.sh](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/vpnsetup.sh), puis cliquez sur le bouton `Raw` à droite. Appuyez sur `Ctrl/Cmd+A` pour tout sélectionner, `Ctrl/Cmd+C` pour copier, puis collez dans votre éditeur préféré. </details> <details> <summary> Je souhaite installer l'ancienne version 4 de Libreswan. </summary> Il est généralement recommandé d'utiliser la dernière version de [Libreswan](https://libreswan.org/), la version 5, qui est la version par défaut de ce projet. Toutefois, si vous souhaitez installer l'ancienne version 4 de Libreswan : ```bash wget https://get.vpnsetup.net -O vpn.sh sudo VPN_SWAN_VER=4.15 sh vpn.sh ``` **Remarque :** Si la version 5 de Libreswan est déjà installée, vous devrez peut-être d'abord [désinstaller le VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/uninstall.md) avant d'installer Libreswan version 4. Vous pouvez également télécharger le [script de mise à jour](#upgrade-libreswan), le modifier pour spécifier `SWAN_VER=4.15`, puis exécuter le script. </details> ## Personnaliser les options du VPN ### Utiliser des serveurs DNS alternatifs Par défaut, les clients sont configurés pour utiliser [Google Public DNS](https://developers.google.com/speed/public-dns/) lorsque le VPN est actif. Lors de l'installation du VPN, vous pouvez éventuellement spécifier un ou plusieurs serveurs DNS personnalisés pour tous les modes VPN. Exemple : ```bash sudo VPN_DNS_SRV1=1.1.1.1 VPN_DNS_SRV2=1.0.0.1 sh vpn.sh ``` Utilisez `VPN_DNS_SRV1` pour spécifier le serveur DNS principal, et `VPN_DNS_SRV2` pour spécifier le serveur DNS secondaire (facultatif). Voici une liste de quelques fournisseurs DNS publics populaires pour votre référence. | Fournisseur | DNS principal | DNS secondaire | Remarques | | -------- | ----------- | ------------- | ----- | | [Google Public DNS](https://developers.google.com/speed/public-dns) | 8.8.8.8 | 8.8.4.4 | Par défaut dans ce projet | | [Cloudflare](https://1.1.1.1/dns/) | 1.1.1.1 | 1.0.0.1 | Voir aussi : [Cloudflare for families](https://1.1.1.1/family/) | | [Quad9](https://www.quad9.net) | 9.9.9.9 | 149.112.112.112 | Bloque les domaines malveillants | | [OpenDNS](https://www.opendns.com/home-internet-security/) | 208.67.222.222 | 208.67.220.220 | Bloque les domaines d'hameçonnage, configurable. | | [CleanBrowsing](https://cleanbrowsing.org/filters/) | 185.228.168.9 | 185.228.169.9 | [Filtres de domaines](https://cleanbrowsing.org/filters/) disponibles | | [NextDNS](https://nextdns.io/?from=bg25bwmp) | Variable | Variable | Blocage des publicités, offre gratuite disponible. [En savoir plus](https://nextdns.io/?from=bg25bwmp). | | [Control D](https://controld.com/free-dns) | Variable | Variable | Blocage des publicités, configurable. [En savoir plus](https://controld.com/free-dns). | Si vous devez modifier les serveurs DNS après la configuration du VPN, consultez [Utilisation avancée](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md). > [!NOTE] > Si IKEv2 est déjà configuré sur le serveur, les variables ci-dessus n'ont aucun effet pour le mode IKEv2. Dans ce cas, pour personnaliser les options IKEv2 telles que les serveurs DNS, vous pouvez d'abord [supprimer IKEv2](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/ikev2-howto.md#remove-ikev2), puis le configurer à nouveau en utilisant `sudo ikev2.sh`. ### Personnaliser les options IKEv2 Lors de l'installation du VPN, les utilisateurs avancés peuvent éventuellement personnaliser les options IKEv2. <details open> <summary> Option 1 : Ignorer IKEv2 pendant la configuration du VPN, puis configurer IKEv2 en utilisant des options personnalisées. </summary> Lors de l'installation du VPN, vous pouvez ignorer IKEv2 et installer uniquement les modes IPsec/L2TP et IPsec/XAuth (« Cisco IPsec ») : ```bash sudo VPN_SKIP_IKEV2=yes sh vpn.sh ``` (Facultatif) Si vous souhaitez spécifier un ou plusieurs serveurs DNS personnalisés pour les clients VPN, définissez `VPN_DNS_SRV1` et éventuellement `VPN_DNS_SRV2`. Consultez [Utiliser des serveurs DNS alternatifs](#use-alternative-dns-servers) pour plus de détails. Ensuite, exécutez le script d'assistance IKEv2 pour configurer IKEv2 de manière interactive à l'aide d'options personnalisées : ```bash sudo ikev2.sh ``` Vous pouvez personnaliser les options suivantes : le nom DNS du serveur VPN, le nom et la période de validité du premier client, le serveur DNS pour les clients VPN et la protection par mot de passe des fichiers de configuration des clients. **Remarque :** La variable `VPN_SKIP_IKEV2` n'a aucun effet si IKEv2 est déjà configuré sur le serveur. Dans ce cas, pour personnaliser les options IKEv2, vous pouvez d'abord [supprimer IKEv2](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/ikev2-howto.md#remove-ikev2), puis le configurer à nouveau à l'aide de `sudo ikev2.sh`. </details> <details> <summary> Option 2 : Personnaliser les options IKEv2 à l'aide de variables d'environnement. </summary> Lors de l'installation du VPN, vous pouvez éventuellement spécifier un nom DNS pour l'adresse du serveur IKEv2. Le nom DNS doit être un nom de domaine pleinement qualifié (FQDN). Exemple : ```bash sudo VPN_DNS_NAME='vpn.example.com' sh vpn.sh ``` De même, vous pouvez spécifier un nom pour le premier client IKEv2. La valeur par défaut est `vpnclient` si elle n'est pas spécifiée. ```bash sudo VPN_CLIENT_NAME='your_client_name' sh vpn.sh ``` Par défaut, les clients sont configurés pour utiliser [Google Public DNS](https://developers.google.com/speed/public-dns/) lorsque le VPN est actif. Vous pouvez spécifier un ou plusieurs serveurs DNS personnalisés pour tous les modes VPN. Exemple : ```bash sudo VPN_DNS_SRV1=1.1.1.1 VPN_DNS_SRV2=1.0.0.1 sh vpn.sh ``` Par défaut, aucun mot de passe n'est requis lors de l'importation de la configuration du client IKEv2. Vous pouvez choisir de protéger les fichiers de configuration du client à l'aide d'un mot de passe aléatoire. ```bash sudo VPN_PROTECT_CONFIG=yes sh vpn.sh ``` </details> <details> <summary> Pour référence : Liste des paramètres IKEv1 et IKEv2. </summary> | Paramètre IKEv1\* | Valeur par défaut | Personnaliser (variable d'environnement)\*\* | Personnaliser (interactif)\*\*\* | | --------------------------- | --------------------- | ---------------------------------------- | -------------------------------- | | Adresse du serveur (nom DNS) | - | Non, mais vous pouvez vous connecter en utilisant un nom DNS | ❌ | | Adresse du serveur (IP publique) | Détection automatique | VPN_PUBLIC_IP | ✅ | | Clé pré-partagée IPsec | Génération automatique | VPN_IPSEC_PSK | ✅ | | Nom d'utilisateur VPN | vpnuser | VPN_USER | ✅ | | Mot de passe VPN | Génération automatique | VPN_PASSWORD | ✅ | | Serveurs DNS pour les clients | Google Public DNS | VPN_DNS_SRV1, VPN_DNS_SRV2 | ✅ | | Ignorer la configuration IKEv2 | non | VPN_SKIP_IKEV2=yes | ✅ | \* Ces paramètres IKEv1 concernent les modes IPsec/L2TP et IPsec/XAuth (« Cisco IPsec »). \*\* Définissez-les comme variables d'environnement lors de l'exécution de vpn(setup).sh. | Paramètre IKEv2\* | Valeur par défaut | Personnaliser (variable d'environnement)\*\* | Personnaliser (interactif)\*\*\* | | --------------------------- | --------------------- | ---------------------------- | ----------------------------- | | Adresse du serveur (nom DNS) | - | VPN_DNS_NAME | ✅ | | Adresse du serveur (IP publique) | Détection automatique | VPN_PUBLIC_IP | ✅ | | Nom du premier client | vpnclient | VPN_CLIENT_NAME | ✅ | | Serveurs DNS pour les clients | Google Public DNS | VPN_DNS_SRV1, VPN_DNS_SRV2 | ✅ | | Protéger les fichiers de configuration client | non | VPN_PROTECT_CONFIG=yes | ✅ | | Activer/Désactiver MOBIKE | Activer si pris en charge | ❌ | ✅ | | Validité du certificat client | 10 ans (120 mois) | VPN_CLIENT_VALIDITY\*\*\*\* | ✅ | | Validité du certificat CA et serveur | 10 ans (120 mois) | ❌ | ❌ | | Nom du certificat CA | IKEv2 VPN CA | ❌ | ❌ | | Taille de la clé du certificat | 3072 bits | ❌ | ❌ | \* Ces paramètres IKEv2 concernent le mode IKEv2. \*\* Définissez-les comme variables d'environnement lors de l'exécution de vpn(setup).sh, ou lors de la configuration d'IKEv2 en mode automatique (`sudo ikev2.sh --auto`). \*\*\* Peuvent être personnalisés lors de la configuration interactive d'IKEv2 (`sudo ikev2.sh`). Reportez-vous à l'option 1 ci-dessus. \*\*\*\* Utilisez `VPN_CLIENT_VALIDITY` pour spécifier la période de validité du certificat client en mois. Doit être un entier entre 1 et 120. En plus de ces paramètres, les utilisateurs avancés peuvent également [personnaliser les sous-réseaux VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#customize-vpn-subnets) lors de la configuration du VPN. </details> ## Étapes suivantes *Lisez ceci dans d'autres langues : [English](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README.md#next-steps), [简体中文](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-zh.md#下一步), [繁體中文](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-zh-Hant.md#下一步), [日本語](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-ja.md#次のステップ), [Русский](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/README-ru.md#следующие-шаги).* Configurez votre ordinateur ou appareil pour utiliser le VPN. Veuillez vous référer à : **[Configurer les clients VPN IKEv2 (recommandé)](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/ikev2-howto.md)** **[Configurer les clients VPN IPsec/L2TP](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/clients.md)** **[Configurer les clients VPN IPsec/XAuth (« Cisco IPsec »)](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/clients-xauth.md)** **Lisez le [📘 livre VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/vpn-book.md) pour accéder au [contenu supplémentaire](https://ko-fi.com/post/Support-this-project-and-get-access-to-supporter-o-O5O7FVF8J).** Profitez de votre propre VPN ! :sparkles::tada::rocket::sparkles: ## Notes importantes **Utilisateurs Windows** : Pour le mode IPsec/L2TP, une [modification unique du registre](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/clients.md#windows-error-809) est requise si le serveur VPN ou le client se trouve derrière un NAT (par exemple, un routeur domestique). Le même compte VPN peut être utilisé par plusieurs de vos appareils. Cependant, en raison d'une limitation d'IPsec/L2TP, si vous souhaitez connecter plusieurs appareils derrière le même NAT (par exemple, un routeur domestique), vous devez utiliser le mode [IKEv2](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/ikev2-howto.md) ou [IPsec/XAuth](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/clients-xauth.md). Pour afficher ou mettre à jour les comptes utilisateurs VPN, consultez [Gérer les utilisateurs VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md). Pour les serveurs avec un pare-feu externe (par exemple [EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)/[GCE](https://cloud.google.com/vpc/docs/firewalls)), ouvrez les ports UDP 500 et 4500 pour le VPN. Utilisateurs d'Aliyun, consultez [#433](https://github.com/hwdsl2/setup-ipsec-vpn/issues/433). Les clients sont configurés pour utiliser [Google Public DNS](https://developers.google.com/speed/public-dns/) lorsque le VPN est actif. Si un autre fournisseur DNS est préféré, consultez [Utilisation avancée](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md). L'utilisation du support du noyau pourrait améliorer les performances d'IPsec/L2TP. Il est disponible sur [tous les systèmes d'exploitation pris en charge](#requirements). Les utilisateurs d'Ubuntu doivent installer le paquet `linux-modules-extra-$(uname -r)` et exécuter `service xl2tpd restart`. Les scripts sauvegarderont les fichiers de configuration existants avant d'effectuer des modifications, avec le suffixe `.old-date-time`. ## Mettre à jour Libreswan Utilisez cette commande unique pour mettre à jour [Libreswan](https://libreswan.org) ([journal des modifications](https://github.com/libreswan/libreswan/blob/main/CHANGES) | [annonce](https://lists.libreswan.org)) sur votre serveur VPN. ```bash wget https://get.vpnsetup.net/upg -O vpnup.sh && sudo sh vpnup.sh ``` <details> <summary> Cliquez ici si vous ne parvenez pas à télécharger. </summary> Vous pouvez également utiliser `curl` pour télécharger : ```bash curl -fsSL https://get.vpnsetup.net/upg -o vpnup.sh && sudo sh vpnup.sh ``` URLs de mise à jour alternatives : ```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/extras/vpnupgrade.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/extras/vpnupgrade.sh ``` Si vous ne parvenez pas à le télécharger, ouvrez [vpnupgrade.sh](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/extras/vpnupgrade.sh), puis cliquez sur le bouton `Raw` à droite. Appuyez sur `Ctrl/Cmd+A` pour tout sélectionner, `Ctrl/Cmd+C` pour copier, puis collez dans votre éditeur préféré. </details> La dernière version prise en charge de Libreswan est `5.4.1`. Vérifiez la version installée : `ipsec --version`. **Remarque :** `xl2tpd` peut être mis à jour à l'aide du gestionnaire de paquets de votre système, tel que `apt-get` sur Ubuntu/Debian. ## Gérer les utilisateurs VPN Voir [Gérer les utilisateurs VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md). - [Gérer les utilisateurs VPN à l'aide de scripts d'assistance](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md#manage-vpn-users-using-helper-scripts) - [Afficher les utilisateurs VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md#view-vpn-users) - [Afficher ou mettre à jour le PSK IPsec](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md#view-or-update-the-ipsec-psk) - [Gérer manuellement les utilisateurs VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/manage-users.md#manually-manage-vpn-users) ## Utilisation avancée Voir [Utilisation avancée](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md). - [Utiliser des serveurs DNS alternatifs](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#use-alternative-dns-servers) - [Modifications du nom DNS et de l'IP du serveur](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#dns-name-and-server-ip-changes) - [VPN IKEv2 uniquement](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#ikev2-only-vpn) - [Activer la confidentialité persistante IKEv2](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#enable-ikev2-perfect-forward-secrecy) - [IPs VPN internes et trafic](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#internal-vpn-ips-and-traffic) - [Spécifier l'IP publique du serveur VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#specify-vpn-servers-public-ip) - [Personnaliser les sous-réseaux VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#customize-vpn-subnets) - [Prise en charge d'IPv6](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#ipv6-support) - [Redirection de port vers les clients VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#port-forwarding-to-vpn-clients) - [Tunneling divisé](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#split-tunneling) - [Accéder au sous-réseau du serveur VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#access-vpn-servers-subnet) - [Accéder aux clients VPN depuis le sous-réseau du serveur](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#access-vpn-clients-from-servers-subnet) - [Modifier les règles IPTables](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#modify-iptables-rules) - [Déployer le contrôle de congestion Google BBR](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/advanced-usage.md#deploy-google-bbr-congestion-control) ## Désinstaller le VPN Pour désinstaller le VPN IPsec, exécutez le [script d'assistance](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/extras/vpnuninstall.sh) : > [!CAUTION] > Ce script d'assistance supprimera le VPN IPsec de votre serveur. Toute la configuration VPN sera **définitivement supprimée**, et Libreswan et xl2tpd seront supprimés. Cette action **est irréversible** ! ```bash wget https://get.vpnsetup.net/unst -O unst.sh && sudo bash unst.sh ``` <details> <summary> Cliquez ici si vous ne parvenez pas à télécharger. </summary> Vous pouvez également utiliser `curl` pour télécharger : ```bash curl -fsSL https://get.vpnsetup.net/unst -o unst.sh && sudo bash unst.sh ``` URLs alternatives de script : ```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/extras/vpnuninstall.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/extras/vpnuninstall.sh ``` </details> Pour plus d'informations, consultez [Désinstaller le VPN](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/docs/uninstall.md). ## Retours & Questions - Vous avez une suggestion pour ce projet ? Ouvrez une [Demande d'amélioration](https://github.com/hwdsl2/setup-ipsec-vpn/issues/new/choose). Les [Pull requests](https://github.com/hwdsl2/setup-ipsec-vpn/pulls) sont également les bienvenues. - Si vous avez trouvé un bug reproductible, ouvrez un rapport de bug pour le [VPN IPsec](https://github.com/libreswan/libreswan/issues?q=is%3Aissue) ou pour les [scripts VPN](https://github.com/hwdsl2/setup-ipsec-vpn/issues/new/choose). - Une question ? Veuillez d'abord rechercher dans les [issues existantes](https://github.com/hwdsl2/setup-ipsec-vpn/issues?q=is%3Aissue) et les commentaires [dans ce Gist](https://gist.github.com/hwdsl2/9030462#comments) et [sur mon blog](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#disqus_thread). - Posez les questions liées au VPN sur la liste de diffusion [Libreswan](https://lists.libreswan.org) ou [strongSwan](https://lists.strongswan.org), ou consultez ces wikis : [[1]](https://libreswan.org/wiki/Main_Page) [[2]](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/security_guide/sec-securing_virtual_private_networks) [[3]](https://wiki.strongswan.org/projects/strongswan/wiki/UserDocumentation) [[4]](https://wiki.gentoo.org/wiki/IPsec_L2TP_VPN_server) [[5]](https://wiki.archlinux.org/index.php/Openswan_L2TP/IPsec_VPN_client_setup). ## Licence Copyright (C) 2014-2026 [Lin Song](https://github.com/hwdsl2) [](https://www.linkedin.com/in/linsongui) Basé sur [le travail de Thomas Sarlandie](https://github.com/sarfata/voodooprivacy) (Copyright 2012) [](http://creativecommons.org/licenses/by-sa/3.0/) Ce travail est sous licence [Creative Commons Attribution-ShareAlike 3.0 Unported License](http://creativecommons.org/licenses/by-sa/3.0/) Attribution requise : veuillez inclure mon nom dans toute œuvre dérivée et me faire savoir comment vous l'avez améliorée !