View previous topic :: View next topic |
Author |
Message |
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Thu Aug 03, 2006 8:24 pm Post subject: [Réseau] VPN distribué |
|
|
Bonsoir,
je suis entrain de réfléchir à comment mettre en place une sorte de VPN distribué, j'explique:
j'aimerais créer un réseau privé virtuel permettant de crypter les communications entre plusieurs hôtes,
mais j'aimerais bien éviter que tout les flux passent par un seul serveur.
Je n'ai jamais entendu parler de ça et pour le moment mes recherches sont vaines.
Si vous pensez connaitre un soft qui me permettrais de gérer ça ....
Merci |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 8:32 pm Post subject: |
|
|
Sur le coup ça me dit rien, mais c'est pour quel utilisation ton idée de VPN distribué ?? _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Thu Aug 03, 2006 8:38 pm Post subject: |
|
|
J'aimerais monter des serveurs ftp/cvs/cifs sans me préoccuper de la configuration de sécurité de chacun de ces serveurs et limiter l'accès à des hotes de confiances.
Je pourrais tres bien m'en passer mais je suis assez curieux et j'aime bien découvrir ce genre de soft. |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 8:43 pm Post subject: |
|
|
Mouai, je ne vois pas trop exactement ce que tu veux faire.
Mais tout tes serveurs sont biens sur des WAN différents en gros ??
Sinon tu peux chercher en encapsulant tes protocoles dans du ssh au pire si j'ai bien compris ton histoire. _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Thu Aug 03, 2006 8:49 pm Post subject: |
|
|
Mes hôtes sont tous sur Internet et je voudrais tous les ramener sur un même réseau virtuel.
Mais en y reflechissant je vois pas comment ça pourrais marcher sans passer par un serveur central pour faire la corrélation ip public / ip privée. |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 8:52 pm Post subject: |
|
|
+1 pour ta réflection.
Et après une mince recherche sur google, je n'ai rien trouvé non plus _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Thu Aug 03, 2006 8:55 pm Post subject: |
|
|
En fait, j'ai déjà réfléchi à ce soft, parce que je veux le programmer dès que j'aurais le temps... (une palce dans une entreprise pas trop speed??).
Sous windows (tiens et même linux), il y a hamachi, mais il n'est pas du tout opensource.
Si t'es motivé, j'ai déjà réfléchi au bouzin, et les libs à mettre en jeu. A part la partie graphique où je ne connais rien, je pense pouvoir m'en sortir (libpcap, libnet, et EVP/openssl). Evidemment, çà doit pouvoir être portable sur win et nux, et ces libs doivent remplir ces conditions). _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT)
Last edited by El_Goretto on Thu Aug 03, 2006 9:11 pm; edited 1 time in total |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 8:59 pm Post subject: |
|
|
Quote: | Hamachi is not just truly peer-to-peer, it is verifiably secure peer-to-peer. |
Ouai ça à l'air pas mal cette histoire.
@el_goretto: si c'est pour des serveurs Linux, le mieux est de faire une interface graphique séparée, un peu comme mldonkey et mlgui, car moi, j'utiliserai plutôt ce soft sur un serveur et pas un client. _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Thu Aug 03, 2006 9:13 pm Post subject: |
|
|
-KuRGaN- wrote: | @el_goretto: si c'est pour des serveurs Linux, le mieux est de faire une interface graphique séparée, un peu comme mldonkey et mlgui, car moi, j'utiliserai plutôt ce soft sur un serveur et pas un client. |
Sûr, on est d'accord pour le serveur qui distribue les clés et les IP. Seulement, ya le client... Et là...
APPEL AUX VOLONTAIRES!!
Ya un projet à lancer, dont je veux faire partie _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Thu Aug 03, 2006 10:06 pm Post subject: |
|
|
Ah oui hamachi, des copains m'en avaient parlé il y a un moment, ils l'utilisaient pour jouer sur le web en simulant un gros lan.
Ce projet est interressant car réalisable et surtout, il n'existe pour le moment pas de solution libre (à ma connaissance). |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 11:17 pm Post subject: |
|
|
Bon et bien comme pour ecota, je suis une bille en prog alors je veux bien apporter ma pierre à l'édifice en faisant des tests (tain va falloir que je m'y mette quand même !!! ) _________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Thu Aug 03, 2006 11:42 pm Post subject: |
|
|
Poischack wrote: | Mes hôtes sont tous sur Internet et je voudrais tous les ramener sur un même réseau virtuel.
Mais en y reflechissant je vois pas comment ça pourrais marcher sans passer par un serveur central pour faire la corrélation ip public / ip privée. |
Je me demande si il n'y a pas moyen de faire ca avec OpenVPN..
Je sais qu'il y a moyen de faire des bridges, de relier deux "serveurs-bridge" entre eux (pour relier 2 lans complets et pas simplement ajouter une machine à un lan déjà existant).. on peut également faire en sorte que les différents clients puissent communiquer entre eux...
Et je sais également qu'on peut définir plusieurs IP à contacter pour se connecter au même réseau VPN. Seulement je ne sais pas comment le programme choisit l'IP à utiliser (dans l'ordre d'apparition dans le fichier de config ? ou aléatoirement ?), et enfin, je ne sais pas comment mettre tout ca en place...
Et puis je ne parle pas des performances horribles que ca peut engendrer si on utilise pas un serveur central...
En fait tu veux éviter de centraliser pour quelle raison ? pour éviter de surcharger la bande passante du serveur central ou bien pour éviter que le réseau VPN soit down chaque fois que le serveur central est down ? _________________ Mangez du poulet ! |
|
Back to top |
|
|
-KuRGaN- Veteran
Joined: 05 Dec 2004 Posts: 1142 Location: Besançon (25) [FRANCE]
|
Posted: Thu Aug 03, 2006 11:48 pm Post subject: |
|
|
Si j'ai bien compris son histoire , tous les réseaux de chacun de ses serveurs doivent communiquer entre eux, mais il ne veux pas que, si le serveur central tombe, tous les vpn tombent.
Ouai en gros il veut un p2p_vpn_server sur chaque réseau.
So,
El_goretto,
Au boulot.
_________________ Knight Gent00 Industries RiDeR !!!! |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Thu Aug 03, 2006 11:57 pm Post subject: |
|
|
-KuRGaN- wrote: | il ne veux pas que, si le serveur central tombe, tous les vpn tombent. |
Si c'est juste ca, avec OpenVPN, il n'a qu'a définir plusieurs serveurs centraux, et lorsqu'un tombe, les clients (avec la bonne option "persist-tun" et plusieures entrées 'remote") vont se connecter sur un autre serveur. _________________ Mangez du poulet ! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Fri Aug 04, 2006 5:22 am Post subject: |
|
|
Avec mes essais passés d'OpenVPN, j'avais mis l'option qui permet aux clients de se "voir" et de communiquer entre eux (client-to-client). Mais les flux passaient toujours pas le serveur central.Après, je ne sais pas si il y a "mieux" comme option.
Et effectivement, mon idée était de décentraliser les flux entre clients (pour la redondance de serveur, c'est un point à réflechir (moi j'avais pensé à une hiérarchie)). _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Fri Aug 04, 2006 10:40 am Post subject: |
|
|
C'est pas pour du p2p hein sinon je prendrais un soft qui crypte les échanges et vasta.
Je veut pas tout centraliser parceque j'ai pas forcement une connexion du tonerre et qu'il est donc plus interessant de laisser les clients échanger les trucs entre eux. |
|
Back to top |
|
|
loopx Advocate
Joined: 01 Apr 2005 Posts: 2787 Location: Belgium / Liège
|
Posted: Fri Aug 04, 2006 12:37 pm Post subject: Re: [Réseau] VPN distribué |
|
|
Poischack wrote: |
Si vous pensez connaitre un soft qui me permettrais de gérer ça ....
Merci |
Très bonne question, ca m'intéresse aussi tiens. Il est vrai que les VPN normau vont tout faire passer via le serveur qui accèpte toute les connexions. Ton truc serais plus une technologie de p2p que de vpn, je peux pas plus t'aider. _________________ Mon MediaWiki perso : http://pix-mania.dyndns.org |
|
Back to top |
|
|
loopx Advocate
Joined: 01 Apr 2005 Posts: 2787 Location: Belgium / Liège
|
Posted: Fri Aug 04, 2006 1:21 pm Post subject: |
|
|
En y pensant un tit peu, il doit y avoir moyen de faire un truc mais ca risque d'etre barbare. Genre, chaque client VPN est en fait un serveur vpn, et il se connecte à chaque autre client. De ce fait, il y a tout plein de réso VPN. Reste plus qu'a jouer avec les routes. Route qui seront trouvé grace à un système de DNS dont je vois pas bien comment ca pourrais fonctionner ... A méditer... _________________ Mon MediaWiki perso : http://pix-mania.dyndns.org |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Fri Aug 04, 2006 4:11 pm Post subject: |
|
|
Ben perso, j'avais pensé à 2 approches, une avec serveur qui sert juste à permettre aux clients de faire connaitre les uns des autres, et distribuer les clés, avec une gestion centralisée des droits d'accès à des salles (en fait, visuellement, ca donnerait un mix entre une arborescence de fichiers ce que propose TeamSpeak).
L'autre approche totalement sans serveur nécessiterait de déclarer sur chaque client les pairs... Ca suffit dans le cadre d'un groupe de potes sans gestion de droits (cad en mono-salle). Ou alors faut implémenter un système de confiance mutuelle, genre si qqn du VPN ajoute un pair, il est transmis aux les autres clients connectés. Mais pour supprimer qqn, c'est déjà moins simple... Bref! a réfléchir tout çà, c'est du domaine du faisable sans trop de cassage de tête.
Tout ca pour dire que c'est du faisable, mais que j'aimerais bien ne pas me retrouver seul... En tout cas, je vais essayer de faire une archi logicielle grossière ce week-end, voire tenter une description du fonctionnement du soft. Toute aide (réflexions sur la conception sans parler de code, conseils de dev, ou autre) est bienvenue
Et ouvrir un thread de lancement de projet ici, des fois que...
Si qqn a des infos ou des liens sur la gestion de projet opensource (mises en garde, pb de brevet, déposer un nom, gérer les sources, travail en groupe etc), ca me permettrait de les lire tranquillement pour le jour où je déciderais de me lancer. _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
Poischack Apprentice
Joined: 23 Mar 2005 Posts: 275 Location: (FR) Colmar
|
Posted: Fri Aug 04, 2006 5:07 pm Post subject: |
|
|
Personnellement je pense que la premiere option est la meilleur, ça permet de simplifier la tache à l'usager (pas au programmeur par contre ) |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Fri Aug 04, 2006 6:08 pm Post subject: |
|
|
on pourrait se baser sur openvpn (fonctionne bien, opensource, multi-os et tout) et simplement créer un script qui partagerait les ip des utilisateurs...
Lorsqu'un utilisateur se connecte au serveur principal, le serveur stocke l'ip. Et quand un autre utilisateur se connecte, le serveur lui envoie l'ip du premier utilsateur, et stocke la sienne. Lorsque le 3ème se connecte, le serveur envoie les 2 premieres ips...
De cette façon, tous les clients se connectent entre eux (chaque utilisateur aurait X connexions VPN ou X serait égal au nombre de peers -1) ce qui permet de ne pas faire passer tout le traffic par un serveur principal.
Vous m'avez compris ? c'est peut-être ce qu'a proposé el_goretto dans sa première idée.. j'ai pas trop compris ce qu'il voulait dire par là.. et puis reste à voir comment organiser ca au niveau IP.. _________________ Mangez du poulet ! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Fri Aug 04, 2006 7:36 pm Post subject: |
|
|
Je pensais bien prendre OpenVPN comme source d'inspiration, en ce qui concerne les couches basses. Mais ta solution PabOu est faussement simple ... Puisqu'il faut réécrire le client OpenVPN a mon avis, et qu'on ne peut pas se contenter d'une surcouche. En effet, même s'ils ont leur adresses respectives, il faut quand même qu'ils négocient une clé de session.
Le code serveur serait simple, de base: référencer les clients par leurs @IP réelles et virtuelles, gérer l'authentification (via mdp SRP ou clé publique), et générer et transmettre une clé de session chaque fois qu'un client veut initier un dialogue avec un autre client (sujet à discussion voire simplification). Après, on peut l'améliorer avec la structure de salles dont je parlais... mais bon, pas avant la v2.0
Des questions? _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
PabOu Veteran
Joined: 11 Feb 2004 Posts: 1088 Location: Hélécine - Belgium
|
Posted: Fri Aug 04, 2006 7:56 pm Post subject: |
|
|
J'avoue ne pas m'y connaître assez en OpenVPN, même si je l'ai installé..
Mais qu'entends-tu par clé de session ? Avec OpenVPN, il suffit de s'échanger les certificats avec clé publique, et puis les clients se débrouillent entre eux, non ? _________________ Mangez du poulet ! |
|
Back to top |
|
|
El_Goretto Moderator
Joined: 29 May 2004 Posts: 3169 Location: Paris
|
Posted: Fri Aug 04, 2006 9:23 pm Post subject: |
|
|
PabOu wrote: | J'avoue ne pas m'y connaître assez en OpenVPN, même si je l'ai installé..
Mais qu'entends-tu par clé de session ? Avec OpenVPN, il suffit de s'échanger les certificats avec clé publique, et puis les clients se débrouillent entre eux, non ? |
Bon, ce que je crois (je l'ai installé, et tenté de faire dialoguer les clients ensemble mais bon): c'est effectivement basé sur des certifs SSL, mais comme tous les flux passent par le serveur, je dirais qu'il ya a sécurisation des liens client/serveur, mais c'est tout.
Une clé de session, c'est une quantité de données qui sert à chiffrer donc les flux (cf des cours basiques de crypto). Il en faut idéalement une entre chaque paire de pairs (ouf), et ne pas garder tout le temps la même (logique). Idéalement, elle serait générée aléatoirement par le serveur (suite à une demande d'un client pour causer à une autre client), ou bien découle d'un protocole d'authentification (SRP que je connais bien, ou bien SSL... que je connais juste de loin).
Je ne suis pas expert là dessus, comme expérience j'ai juste un stage avec un developpement de sniffer IPsec, mais ça reprenait les mêmes concepts crypton & sécu. _________________ -TrueNAS & jails: µ-serv Gen8 E3-1260L, 16Go ECC + µ-serv N40L, 10Go ECC
-Réseau: APU2C4 (OpenWRT) + GS726Tv3 + 2x GS108Tv2 + Archer C5v1 (OpenWRT) |
|
Back to top |
|
|
CryoGen Veteran
Joined: 11 Feb 2004 Posts: 1426 Location: Bamako - Mali - Afrique
|
Posted: Fri Aug 04, 2006 11:06 pm Post subject: |
|
|
Ce projet m'interresse grandement
J'explique : je dois réaliser un VPN via VSAT pour 15 sucursales d'une société qui veux utiliser des serveurs linux Seulement, la vitesse via VSAT n'est pas tres importante (et oui c'est cher le VSAT ^^) => 128kb/s par site donc si tout dois passer par un serveur central ca va pas le faire ! Ai-je dit qu'ils veulent la VoIP inter-site en plus
Donc un VPN "distribué/p2p" me serait très utile Ah moins qu'il existe une meilleure alternative ?
Je devellope en C/C++ et je suis pret à participer à se projet :p _________________ - CryoGen` on #gentoofr@irc.freenode.net
- ~amd64 / KDE4
- I'm the bone of my sword... |
|
Back to top |
|
|
|