VPN roadwarrior - Quel choix libre pour remplacer OpenVPN

Hello les compagnons,

Je cherche un remplaçant à OpenVPN : Ce dernier présente l’inconvénient de ne pas pouvoir voir sa configuration modifiée sans avoir à redémarrer le démon, et donc déconnecter tout le monde. (ou alors un truc m’échappe).

L’ensemble de nos télétravailleurs, roadwarrior et autres utilisateurs du VPN, a besoin de se connecter au VPN pour accéder à certaines briques de notre infra. Pour économiser de la bande passante, on fait du split-tunneling : on maintient une liste d’IP régulièrement mise à jour, pour lesquelles on doit passer par le VPN, avec les directives :

push “route”

dans la conf. Ces directives étant régulièrement mises à jour (notre infra est assez “dynamique”), on est obligé de redémarrer le serveur OpenVPN pour les prendre en compte, et donc de prévoir ces redémarrages en HNO pour limiter l’impacte sur les utilisateurs, qui, au passage, tournent sous Windows, MacOS, et Linux.

J’ai creusé un peu la solution WireGuard, qui ne rempli pas le besoin de pouvoir pousser des routes au client. Un projet qui va dans ce sens existe, mais il semble plus ou moins mort.

Je cherche donc une solution de remplacement, qui permettrait de changer dynamiquement la conf du serveurs dans avoir à forcer la déconnexion des utilisateurs lors de la mise à jours des routes à pusher aux client. NB : que le client soit obligé de redémarrer pour obtenir les nouvelles routes ne pose pas problème. Ce que je ne souhaite pas, c’est de devoir forcer la déco de tous les clients lors d’un changement de conf.

Je n’ai pas encore testé la version “Appliance” d’OpenVPN. Peut-être qu’il est possible de faire ce qui est décrit ci-dessus avec cette version un peu “proprio” d’OpenVPN ?

D’ailleurs, s’il faut en arriver à du proprio, je suis preneur si c’est bien gaulé.

Là où je travaille on a remplacé il y a quelques temps déjà notre solution basée sous OpenVPN par une appliance F5.

Le libriste que je suis a eu un peu mal avec ce choix mais rien à redire sur les performances.

Ils fournissent notamment des modules compatible Ansible et Terraform qui sont les bienvenus dans nos métiers.

Par contre à priori il faut avoir le budget pour.

1 J'aime

Merci pour ta réponse. Un ordre de prix ? C’est un prix lié au nombre d’utilisateurs ? De tunnel ? Je prends toutes les infos.

as tu regardé du coté de tailscale (basé il me semble sur wireguard) ?

Par contre, le traffic passe par leurs serveurs à un moment donné, donc à voir si c’est problématique dans ton cas.

1 J'aime

Je ne connaissais pas Tailscale (je bookmarke), mais effectivement, il nous faut de l’auto-hébergé.

Bonjour, je voudrais juste partager l’expérience inverse.

C’est-à-dire passer d’une solution propriétaire vers OpenVPN.

L’expérience date un peu. On est en 2015. Là ou je travaille on utilise des solutions VPN pour donner accès aux forces de ventes et à des clients à l’infrastructure, qu’ils peuvent utiliser pour montrer, pratiquer diverses démos. Bien sûr, il faut que l’on supporte Windows, MacOS, Linux, car les 3 sont utilisés.

On a 2 solutions VPN, de mémoire une avec F5 (pas trop vieille) et une avec Cisco(plus ou moins obsolète). Clairement les clients ont été migrer sur la solution F5 et le Cisco reste encore en backup (heureusement) avant extinction.

Ça se passe pas trop mal sur Windows et MacOS, le temps d’établissement de la connexion est juste pas très rapide. Linux il faut installer un client VPN proprio et le lancer root. C’est pas ouf, une pure boite noire qui bidouille la conf réseau, mais ça marchotte. Coté HA, la solution (actif/passif) bascule de temps en temps. Mais globalement ça marche.

Jusqu’à l’arrivé de Windows 10. Et la c’est l’enfer, il y a plein de problèmes. Au point de devoir basculer des clients sur le Cisco qui pourtant plus vieux et en phase d’obso, semble mieux marcher avec les clients sous Windows 10.

Le support est vraiment pas ouf. Il faut mettre à jour le VPN, les clients… plusieurs fois, et il y a encore pleins de soucis. Le fournisseur pousse pour un remplacement de la solution qui est pourtant pas super vieille. Bref vraiment une expérience pas exceptionnelle.

Peu après lors d’un changement de site pour cette infrastructure, l’idée de passer et essayer OpenVPN est acceptée. Plus jamais entendu parlé de problème avec le VPN. Établissement de sessions rapide, marche sur toutes les plateformes. Clients stables. Un bonheur sous Linux.

Bref l’idée n’est pas de dénigrer les solutions propriétaires. Certaines marchent probablement très bien. Mais malgré le contrat de support parfois tout n’est pas rose. Et dans ce cas l’investigation des problèmes est bien plus complexe.

Aussi dans ta situation @Raphux, j’essayerais de me rapprocher de OpenVPN afin de voir si ils pourraient développer une feature qui répondrait à ton besoin en la finançant.

2 J'aime

Merci pour ta réponse. Je pense qu’on est trop petits pour demander un dev spécifique, et pas trop envie d’utiliser une solution pas éprouvée.
Cela dit, je vais continuer de tester leur solution “AS” (Access Server). Ça change de la conf à la mimine dans les fichiers, et pour l’instant je ne retrouve pas mes petits, mais ça devrait le faire, au moins pour les tests.

Je pense qu’on est trop petits pour demander un dev spécifique

Pas forcément, ç’est quelque chose qui peut faire partie du business model de certaines boites qui font du libre. D’autant plus si la feature peut ensuite être reversée.

En tout cas je suis intéressé par ton retour sur la solution AS.

Tu ne précises pas le nombre de clients ni si vous avez plusieurs VPN?

Pour Cisco c’était la version qui était obsolète, ou le produit?

Nous on est sur du Cisco AnyConnect. C’est pas mon domaine le réseau, mais a part quelques rares déco, le VPN se fait oublier. J’imagine que sur ce genre d’outil le budget alloué et le nombre de clients peut changer du tout au tout l’expérience utilisateur…

Salut @freezed,

Tu ne précises pas le nombre de clients ni si vous avez plusieurs VPN?

Les forces de ventes et clients c’était plusieurs milliers en potentiel. Après je ne serais te dire en simultané combien il y en avait. Mais pas énorme non plus, je pense.
Par contre sur une solution propriétaire souvent il faut gérer le nombre de licence à l’utilisateur. Il y a eu pas mal de boite en début de Covid, qui ont du revoir à la hausse les licences pour leur vpn, sinon pas de connexion. (un gros soucis de moins avec OpenVPN)
Après sur une appliance dédiée, je pense que certaines offrent de l’accélération hardware notamment pour le chiffrage, donc pour de grosse instance ça peut être plus performant. Dans notre cas, la ressource hardware n’était pas un soucis, on pouvait mettre du très lourd en terme de hardware.
L’autre possible avantage, c’est mieux intégré et peut être plus facile à paramétrer (interface web). On m’a souvent vendu cet argument pour les solutions propriétaires. (J’avoue, je suis pas super convaincu)

Pour Cisco c’était la version qui était obsolète, ou le produit?

C’était le produit, oui celui la il fallait le changer.

J’ai eu à utiliser OpenVPN AS en tant qu’utilisateur et j’avais été assez agréablement surpris par la simplicité de conf etc.

Alors je n’ai poussé très loin l’analyse, mais ça m’a paru totalement crédible comme solution.

Bon, il s’avère qu’ajouter des routes à la conf d’un utilisateur ou d’un groupe d’utilisateurs, fait déconnecter ceux-ci (le démon semble devoir être redémarré).

OpenVPN AS is out pour notre utilisation…

@Raphux j’ai lu ceci : Announcing HIBA: Host Identity Based Authorization for SSH | Google Open Source Blog

Et du coup, j’ai pensé à https://www.boundaryproject.io/

Est-ce que cela ne serait pas une autre façon de répondre à ton besoin ?

2 J'aime

Thx. Le truc, c’est que la solution doit être plutôt bas niveau car on utilise tout un tas de protocoles (ssh/http/sql/mongo/rmq…), et pas seulement pour du SSH.

L’approche réseau est rassurante par le fait que c’est justement assez bas niveau, on contrôle juste les flux, et si besoin, les couches du dessus avec NetFilter.

Les utilisateurs, une fois connectés, doivent être vus par les plateformes protégées comme venant tous de la même IP publique (ils sont NATés).

Aussi, il faut une solution neuneuproof. Mettre un login/MdP est déjà, parfois, compliqué avec certains utilisateurs (oué).

J’ai commencé à regarder de loin l’approche [Strong|Open|Free|Libre]Swan. L’IPSec ça m’a toujours filé de l’urticaire, mais au final, c’est peut-être la solution la plus universelle, avec des clients natifs aux OS, et la possibilité (même s’il faut a priori un peu ruser pour Windows) de filer tout plein d’options via DHCP, et notamment des routes.

Je vais commencer à tester StrongSwan, et reviendrai ici raconter comment va mon urticaire. :wink:

1 J'aime