Tunnel SSH et redirection générique pour un port...

Le
David BERCOT
--=-UJQ34vJHe5CAfKO6nx3s
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Bonjour,

Je reviens sur mon problème de tunnel SSH. J'arrive bien à le met=
tre en
oeuvre et à effectuer la redirection pour un serveur particulier sur u=
n
port particulier. Mais maintenant, je souhaiterais effectuer la
redirection pour un port particulier, mais pour n'importe quel
serveur !!! Par exemple, je voudrais effectuer la redirection pour le
port 110. Ainsi, si je fais appel au serveur pop1 (avec le port par
défaut, soit 110), la demande passera par le tunnel. Si je fais appel =
au
serveur pop2, le chemin sera le même

Savez-vous si c'est possible ? Et si oui, comment ;-)

Merci d'avance.

David.

--=-UJQ34vJHe5CAfKO6nx3s
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: Ceci est une partie de message
=?ISO-8859-1?Q?numriquement?= =?ISO-8859-1?Q?_signe?=

--BEGIN PGP SIGNATURE--
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFFoyPvSnthbGI8ygRArrcAJ9EMVY0hhgzGBfIbm+71XS/SFnOYwCgxR2r
MsV8cjxDoiu51BKRl2CJ3hE=
=JfCK
--END PGP SIGNATURE--

--=-UJQ34vJHe5CAfKO6nx3s--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Gilles Mocellin
Le #9375751
--nextPart2904817.7YMv1kqHTp
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Le dimanche 24 septembre 2006 15:47, David BERCOT a écrit :
Bonjour,

Je reviens sur mon problème de tunnel SSH. J'arrive bien à le mettre en
oeuvre et à effectuer la redirection pour un serveur particulier sur un
port particulier. Mais maintenant, je souhaiterais effectuer la
redirection pour un port particulier, mais pour n'importe quel
serveur !!! Par exemple, je voudrais effectuer la redirection pour le
port 110. Ainsi, si je fais appel au serveur pop1 (avec le port par
défaut, soit 110), la demande passera par le tunnel. Si je fais appel au
serveur pop2, le chemin sera le même...

Savez-vous si c'est possible ? Et si oui, comment ;-)

Merci d'avance.

David.



Ça ne s'appelle plus un tunnel mais un proxy !
Ou du routage via un VPN.
Pour certains services il y a des proxies dédiés : squid pour le web, P 3Scan
pour le courrier POP, Perdition ou IMAP proxy pour l'IMAP...

Pour du proxy TCP quelconque, il y a socks.
Pour du routage via VPN, il y a openvpn, de l'IPSEC...

Dans tous les cas, il faut être admin du serveur qui fera proxy/routeur p our
installer et configurer ces serveurs.
Quoique, sans être admin, mais avec un compte, on doit pouvoir compiler l es
proxies applicatifs dans son home et les faire tourner sur des ports > 1024.

--nextPart2904817.7YMv1kqHTp
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFFpLuDltnDmLJYdARAsNxAKCvf+vYpDxpSQkswYO1P9zey+S/NgCfd+Ve
2J9Kj+nyaPQ9yqLCwMiMJhY =7Twe
-----END PGP SIGNATURE-----

--nextPart2904817.7YMv1kqHTp--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Jean-Michel Schelcher
Le #9375611
On 24/09 15:47, David BERCOT wrote :

Bonjour,

Je reviens sur mon problème de tunnel SSH. J'arrive bien à le mettre en
oeuvre et à effectuer la redirection pour un serveur particulier sur un
port particulier. Mais maintenant, je souhaiterais effectuer la
redirection pour un port particulier, mais pour n'importe quel
serveur !!! Par exemple, je voudrais effectuer la redirection pour le
port 110. Ainsi, si je fais appel au serveur pop1 (avec le port par
défaut, soit 110), la demande passera par le tunnel. Si je fais appel au
serveur pop2, le chemin sera le même...




Si j'ai bien compris, tu veux rediriger toutes les requÃtes pop
sortantes vers le port 110 local, donc dans le tunnel ?

Dans ce cas...
iptables -t nat -I OUTPUT -p tcp --dport 110 -j DNAT --to 127.0.0.1:110
... devrait fonctionner.

Ce qui signifie en gros, pour tous les paquets en sortie avec le port
destination a 110/tcp, on rÃÃcrit l'adresse de destination a 127.0.0.1

Merci d'avance.


de rien

Jean-Michel
David BERCOT
Le #9414091
--=-8NYaIW4Ro+XWz/GV1KHv
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Bonjour,

Suite à vos différents conseils, j'ai effectué des recherche s
supplémentaires. Mais pour l'instant, je n'arrive pas encore à fa ire ce
que je veux...

Tout d'abord, une petite parenthèse rapide :
Le dimanche 24 septembre 2006 à 20:30 +0200, Jean-Michel Schelcher a
écrit :
Si j'ai bien compris, tu veux rediriger toutes les requÃtes pop
sortantes vers le port 110 local, donc dans le tunnel ?
Dans ce cas...
iptables -t nat -I OUTPUT -p tcp --dport 110 -j DNAT --to 127.0.0.1:110
... devrait fonctionner.
Ce qui signifie en gros, pour tous les paquets en sortie avec le port
destination a 110/tcp, on rÃÃcrit l'adresse de destination a 12 7.0.0.1



En fait, je ne crois pas que ce soit tout à fait ça. Avec la rà ¨gle SSH
établissant le tunnel [ssh -N -f monserveur -L110:pop.wanadoo.fr:110],
si je rajoute la règle iptables ci-dessus, le résultat devrait être que
tous les requêtes à destination du port 110 seraient redirigà ©es vers le
serveur de Wanadoo via le tunnel, non ?
En fait, je souhaiterais quelque chose de plus générique...

Le dimanche 24 septembre 2006 à 16:15 +0200, Gilles Mocellin a éc rit :
Le dimanche 24 septembre 2006 15:47, David BERCOT a écrit :
> Bonjour,
>
> Je reviens sur mon problème de tunnel SSH. J'arrive bien à le mettre en
> oeuvre et à effectuer la redirection pour un serveur particulier s ur un
> port particulier. Mais maintenant, je souhaiterais effectuer la
> redirection pour un port particulier, mais pour n'importe quel
> serveur !!! Par exemple, je voudrais effectuer la redirection pour le
> port 110. Ainsi, si je fais appel au serveur pop1 (avec le port par
> défaut, soit 110), la demande passera par le tunnel. Si je fais ap pel au
> serveur pop2, le chemin sera le même...

Ça ne s'appelle plus un tunnel mais un proxy !
Ou du routage via un VPN.
Pour du proxy TCP quelconque, il y a socks.
Pour du routage via VPN, il y a openvpn, de l'IPSEC...

Dans tous les cas, il faut être admin du serveur qui fera proxy/rout eur pour
installer et configurer ces serveurs.
Quoique, sans être admin, mais avec un compte, on doit pouvoir compi ler les
proxies applicatifs dans son home et les faire tourner sur des ports > 10 24.



Concernant les problèmes de droits, y'a aucun souci !!!
Maintenant, comme il s'agit effectivement de trafic TCP quelconque,
pourquoi pas la solution du proxy.
J'ai fait quelques recherches sur socks sans vraiment trouver mon
bonheur (j'ai bien trouvé des choses sur connect-proxy ou dante mais
sans explication réelle de mise en oeuvre). D'autre part, j'ai un peti t
problème conceptuel. En effet, dans mon tunnel SSH, je précise to ujours
le serveur cible (dans l'exemple vu plus haut, il s'agissait de
pop.wanadoo.fr). Or, là, j'aurais besoin de ce tunnel pour n'importe
quel serveur...

J'ai aussi regardé openvpn qui devrait pouvoir me convenir, mais là   non
plus, je n'ai rien trouvé de vraiment satisfaisant (les exemples à ©taient
surtout basé sur SSL et sur des clients Windows).

Sinon, j'ai aussi vu un truc qui s'appelle secvpn mais sans plus de
détail...

En tous cas, sachant que la sécurité du tunnel SSH me convient, s i
j'avais un moyen (proxy ?) de pouvoir y faire transiter le trafic que je
souhaite (une sélection uniquement !), ça me conviendrait
parfaitement...

Merci d'avance pour les indices que vous pourrez me donner ;-)

David.

--=-8NYaIW4Ro+XWz/GV1KHv
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: Ceci est une partie de message
=?ISO-8859-1?Q?numériquement?= =?ISO-8859-1?Q?_signée?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFGSTPvSnthbGI8ygRAhSdAJ4pCB8vQneJ0jNQDu/JDmdmBdQA2ACcCMMi
r8fXZgD2KcM+3HH1BNq9q/w =N9D1
-----END PGP SIGNATURE-----

--=-8NYaIW4Ro+XWz/GV1KHv--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Paul Filo
Le #9413871
> En tous cas, sachant que la sécurité du tunnel SSH me convient, si
j'avais un moyen (proxy ?) de pouvoir y faire transiter le trafic que je
souhaite (une sélection uniquement !), ça me conviendrait
parfaitement...

Merci d'avance pour les indices que vous pourrez me donner ;-)



Tu as essayé vtun (http://vtun.sourceforge.net/) ? Tu fais un tunnel
vtun dans ton tunnel ssh et avec les bonnes routes coté client, tu dois
pouvoir t'en tirer (ce que tu veux faire n'est pas très clair).


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Jean-Michel Schelcher
Le #9413831
On 26/09 15:02, David BERCOT wrote :
En fait, je ne crois pas que ce soit tout à fait ça. Avec la règle SSH
établissant le tunnel [ssh -N -f monserveur -L110:pop.wanadoo.fr:110],
si je rajoute la règle iptables ci-dessus, le résultat devrait être que
tous les requêtes à destination du port 110 seraient redirigées ver s le
serveur de Wanadoo via le tunnel, non ?



Oui, exact.

En fait, je souhaiterais quelque chose de plus générique...



Plus generique dans quel sens ?

a+

Jms
David BERCOT
Le #9413751
--=-A2WCSyB3dGnDDOchIJIz
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Bonjour,

Le mardi 26 septembre 2006 à 21:00 +0200, Paul Filo a écrit :
> En tous cas, sachant que la sécurité du tunnel SS H me convient, si
> j'avais un moyen (proxy ?) de pouvoir y faire transiter le trafic que j e
> souhaite (une sélection uniquement !), ça me conv iendrait
> parfaitement...
>
> Merci d'avance pour les indices que vous pourrez me donner ;-)

Tu as essayé vtun (http://vtun.sourceforge.net/) ? Tu fais un tunnel
vtun dans ton tunnel ssh et avec les bonnes routes coté client, tu d ois
pouvoir t'en tirer (ce que tu veux faire n'est pas très clair).



J'ai trouvé quelques exemples sur vtun, mais toujours avec 3 rése aux
reliés ensemble et j'ai du mal à adapter tout ça à mes besoins...

Je vais donc essayer d'expliquer plus clairement mon problème...

J'ai un ordinateur A, connecté à Internet.
J'ai un réseau privé R, dont un serveur SERV_PRIV est connectà © à
Internet et accessible via SSH.
J'arrive donc à faire un tunnel SSH entre ma machine A et mon serveur
SERV_PRIV, sauf que, dans la définition du tunnel, je dois précis er
l'adresse Internet à laquelle je veux me connecter via le tunnel.
Exemple :
ssh -N -f SERV_PRIV -L110:pop.wanadoo.fr:110
Ceci me limite donc, pour le port 110 par exemple, à un seul serveur
accessible via le tunnel (ici, pop.wanadoo.fr).

Or, mon besoin est le suivant :
- création d'un tunnel SSH entre A et SERV_PRIV
- ajout de routes spéciales sur certains ports pour que les requê tes
correspondantes passent par SERV_PRIV et ensuite par le réseau R
A titre d'exemple, ainsi, si je fais une requête sur le port 110, par
exemple sur pop.wanadoo.fr, mais aussi sur pop.free.fr, je souhaiterais
que ces deux requêtes passent par mon tunnel puis par le réseau R .

Déjà, comme lors de la création de mon tunnel, je préci se le serveur
distant (pop.wanadoo.fr dans l'exemple), j'ai un peu de mal à voir
comment modifier tout ça.

Avec les réponses que vous m'avez données, j'imagine bien une sor te de
serveur proxy sur mon serveur SERV_PRIV qui redirigerait les requêtes
qui lui arrivent sur les réseau R (comme il le fait actuellement vers
pop.wanadoo.fr). Dans ce cas, j'établirais, sur mon ordinateur A, un
tunnel avec une syntaxe du genre :
ssh -N -f SERV_PRIV -L5000:proxy_serv_priv:5000
Mais alors, que puis-je mettre comme serveur proxy ?
Et ensuite, comment dire à une requête de passer par ce serveur p roxy
(par exemple, dans Evolution, comment lui dire que mon serveur POP est
pop.wanadoo.fr via proxy_serv_priv ?

J'espère avoir été un peu plus clair dans mes explications.. .

Merci d'avance.

David.

--=-A2WCSyB3dGnDDOchIJIz
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: Ceci est une partie de message
=?ISO-8859-1?Q?numériquement?= =?ISO-8859-1?Q?_signée?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFGjMrvSnthbGI8ygRAhD2AJ9HgowaZtMp/Qmuw1ZRadA/hh8WQACeNUqb
0PPCTQ8ar3CKBz9oq+DE7hw =9yb8
-----END PGP SIGNATURE-----

--=-A2WCSyB3dGnDDOchIJIz--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
David BERCOT
Le #9413731
--=-LBM3Ng0qUA5pOrJwY+Zt
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Bon, je continue à réfléchir sur le sujet (je ne vais quand même pas
attendre que ça m'arrive tout cuit ;-))) et, finalement, j'ai
l'impression qu'un serveur socks installé sur mon serveur SERV_PRIV
devrait faire l'affaire, non ?

Ensuite, pour les applis qui peuvent utiliser un serveur proxy, je les
redirige vers le serveur socks et, pour celles qui ne peuvent pas (genre
Evolution ?), il doit suffire de rajouter des règles iptables du genre :
demande vers pop.wanadoo.fr sur port 110 doit passer par serveur socks.

Est-ce que ça vous semble jouable ?

Maintenant, socks étant un terme générique, j'admets que je n'ai rien
trouvé de satisfaisant en terme d'exemple... Auriez-vous un lien ou
deux ?
De la même manière, ne pratiquant pas du tout iptables, auriez-vo us un
exemple ou un lien pour ce que je dois faire ?

Merci d'avance.

David.

Le mercredi 27 septembre 2006 à 10:15 +0200, David BERCOT a écrit :
Bonjour,

Le mardi 26 septembre 2006 à 21:00 +0200, Paul Filo a écrit :
> > En tous cas, sachant que la sécurité du tunnel SSH me convient, si
> > j'avais un moyen (proxy ?) de pouvoir y faire transiter le trafic que je
> > souhaite (une sélection uniquement !), ça me co nviendrait
> > parfaitement...
> >
> > Merci d'avance pour les indices que vous pourrez me donner ;-)
>
> Tu as essayé vtun (http://vtun.sourceforge.net/) ? Tu fais un tunn el
> vtun dans ton tunnel ssh et avec les bonnes routes coté client, tu dois
> pouvoir t'en tirer (ce que tu veux faire n'est pas très clair).

J'ai trouvé quelques exemples sur vtun, mais toujours avec 3 ré seaux
reliés ensemble et j'ai du mal à adapter tout ça à me s besoins...

Je vais donc essayer d'expliquer plus clairement mon problème...

J'ai un ordinateur A, connecté à Internet.
J'ai un réseau privé R, dont un serveur SERV_PRIV est connect é à
Internet et accessible via SSH.
J'arrive donc à faire un tunnel SSH entre ma machine A et mon serveu r
SERV_PRIV, sauf que, dans la définition du tunnel, je dois préc iser
l'adresse Internet à laquelle je veux me connecter via le tunnel.
Exemple :
ssh -N -f SERV_PRIV -L110:pop.wanadoo.fr:110
Ceci me limite donc, pour le port 110 par exemple, à un seul serveur
accessible via le tunnel (ici, pop.wanadoo.fr).

Or, mon besoin est le suivant :
- création d'un tunnel SSH entre A et SERV_PRIV
- ajout de routes spéciales sur certains ports pour que les requà ªtes
correspondantes passent par SERV_PRIV et ensuite par le réseau R
A titre d'exemple, ainsi, si je fais une requête sur le port 110, pa r
exemple sur pop.wanadoo.fr, mais aussi sur pop.free.fr, je souhaiterais
que ces deux requêtes passent par mon tunnel puis par le réseau R.

Déjà, comme lors de la création de mon tunnel, je pré cise le serveur
distant (pop.wanadoo.fr dans l'exemple), j'ai un peu de mal à voir
comment modifier tout ça.

Avec les réponses que vous m'avez données, j'imagine bien une s orte de
serveur proxy sur mon serveur SERV_PRIV qui redirigerait les requête s
qui lui arrivent sur les réseau R (comme il le fait actuellement ver s
pop.wanadoo.fr). Dans ce cas, j'établirais, sur mon ordinateur A, un
tunnel avec une syntaxe du genre :
ssh -N -f SERV_PRIV -L5000:proxy_serv_priv:5000
Mais alors, que puis-je mettre comme serveur proxy ?
Et ensuite, comment dire à une requête de passer par ce serveur proxy
(par exemple, dans Evolution, comment lui dire que mon serveur POP est
pop.wanadoo.fr via proxy_serv_priv ?

J'espère avoir été un peu plus clair dans mes explications ...

Merci d'avance.

David.



--=-LBM3Ng0qUA5pOrJwY+Zt
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: Ceci est une partie de message
=?ISO-8859-1?Q?numériquement?= =?ISO-8859-1?Q?_signée?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQBFGj/yvSnthbGI8ygRAox7AJ9XERwgRK/V/qpivbFz5VfxpFHspACdFI1m
pODCy0eZ/YJPIv+kOVHBqbw =o+a2
-----END PGP SIGNATURE-----

--=-LBM3Ng0qUA5pOrJwY+Zt--


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Pascal Hambourg
Le #9413701
Salut,

David BERCOT a écrit :
Bon, je continue à réfléchir sur le sujet (je ne vais quand même pas
attendre que ça m'arrive tout cuit ;-))) et, finalement, j'ai
l'impression qu'un serveur socks installé sur mon serveur SERV_PRIV
devrait faire l'affaire, non ?



Oui, c'est une possibilité à condition que les logiciels clients
supportent SOCKS.

Ensuite, pour les applis qui peuvent utiliser un serveur proxy, je les
redirige vers le serveur socks et, pour celles qui ne peuvent pas (genre
Evolution ?), il doit suffire de rajouter des règles iptables du genre :
demande vers pop.wanadoo.fr sur port 110 doit passer par serveur socks.



Non, ça ne marche pas comme ça. Un proxy SOCKS utilise un protocole
spécifique, on ne peut pas lui balancer directement du POP3. Ce serait
comme essayer de parler directement en FTP à un proxy HTTP comme squid.

Il existe toutefois la possibilité de "socksifier" un client pour
rediriger ses connexions vers un proxy SOCKS.

Maintenant, socks étant un terme générique, j'admets que je n'ai rien
trouvé de satisfaisant en terme d'exemple... Auriez-vous un lien ou
deux ?



Cf. hpsockd, dante-server, dante-client.

Une autre voie que le proxy consisterait à créer un véritable tunnel IP
entre le client et le serveur. Si SSH est le seul moyen de communication
entre les deux, il est possible de monter sur la connexion SSH une
session PPP avec pppd au lieu d'un shell. Il y a peut-être moyen de
monter un autre type de tunnel IP dans un "tunnel" TCP sur SSH, mais je
n'ai pas de nom en tête. Dans les deux cas tu auras un vrai réseau avec
des interfaces et du routage, du NAT, etc... mais les performances
peuvent être médiocres car SSH est basé sur TCP, et TCP n'est pas adapté
au transport d'une couche IP.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Paul Filo
Le #9413461
> Une autre voie que le proxy consisterait à créer un véritable tunnel IP
entre le client et le serveur. Si SSH est le seul moyen de communication
entre les deux, il est possible de monter sur la connexion SSH une
session PPP avec pppd au lieu d'un shell. Il y a peut-être moyen de
monter un autre type de tunnel IP dans un "tunnel" TCP sur SSH, mais je
n'ai pas de nom en tête. Dans les deux cas tu auras un vrai réseau avec
des interfaces et du routage, du NAT, etc... mais les performances
peuvent être médiocres car SSH est basé sur TCP, et TCP n'est pas adapté
au transport d'une couche IP.



Je suis d'accord. C'est la voie que j'indiquais en faisant un tunnel
avec vtun et qui fonctionne correctement si on n'est pas trop exigeant
sur le débit.

1) tu fais tourner un serveur vtun sur SERV_PRIV

2) tu fais un tunnel ssh sur le port vtun (par exemple 5000) entre A et
SERV_PRIV avec ssh -L 5000:localhost:5000 SERV_PRIV (voir
http://vtun.sourceforge.net/faq.html#1.23)

3) tu lances ton client vtun sur machine A. Tu vas avoir une nouvelle
interface tun0 avec une adresse ip dans la plage de ton réseau local

4) tu ajoutes une route pour router tous les paquets à destination du
port 110 pat cette interface.

Comme ça tout le trafic pop de ta machine A sera routé par vtun vers
SERV_PRIV puis vers pop.wanadoo.fr et compagnie (ton serveur est bien
sur configuré pour forwarder/masquerader les paquets entrants par vtun)

Il me semble que c'est le plus proche de ce que tu veux faire.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Pascal Hambourg
Le #9413411
Paul Filo a écrit :

1) tu fais tourner un serveur vtun sur SERV_PRIV

2) tu fais un tunnel ssh sur le port vtun (par exemple 5000) entre A et
SERV_PRIV avec ssh -L 5000:localhost:5000 SERV_PRIV (voir
http://vtun.sourceforge.net/faq.html#1.23)

3) tu lances ton client vtun sur machine A. Tu vas avoir une nouvelle
interface tun0 avec une adresse ip dans la plage de ton réseau local



Tu veux dire dans le réseau local du serveur SSH ?
Note : le serveur aura aussi une nouvelle interface tunX à l'autre bout
du tunnel.

4) tu ajoutes une route pour router tous les paquets à destination du
port 110 pat cette interface.



Euh, ce n'est pas si simple. On ne peut pas directement router en
fonction du port destination. Il va falloir marquer les paquets sortants
avec une règle iptables MARK et faire du routage avancé avec une règle
de routage (ip rule) basée sur la marque définie qui aiguille le routage
vers une table de routage alternative contenant une route par défaut
passant par le tunnel. Du classique. Sans oublier le cas écheant de
désactiver rp_filter sur l'interface tunnel sinon les paquets de réponse
se feront jeter au retour. Ouf !

Une alternative consiste à gravement truander la table de routage
normale du client :
- créer une route vers le serveur SSH pour remplacer la route par
défaut, afin de maintenir le tunnel ;
- supprimer la route par défaut ;
- créer une route par défaut passant par l'interface tunnel.

Ainsi tout ce qui n'est pas destiné au LAN du client ou au serveur part
dans le tunnel. C'est le principe des VPN sous Windows quand on coche
l'option "route par défaut". A la fermeture du tunnel, ne pas oublier de
restaurer la route par défaut normale. Ou bien jouer sur les métriques
pour ne pas avoir à la supprimer.

Comme ça tout le trafic pop de ta machine A sera routé par vtun vers
SERV_PRIV puis vers pop.wanadoo.fr et compagnie (ton serveur est bien
sur configuré pour forwarder/masquerader les paquets entrants par vtun)



Masquerading de rigueur en effet pour que les paquets de réponse
trouvent le chemin du retour jusqu'au serveur SSH, sauf si d'une part
l'interface tunnel du client a une adresse - libre évidemment - que la
passerelle du serveur sait joindre, par exemple dans le sous-réseau du
LAN du serveur, et d'autre part le proxy_arp est activé sur le serveur.
Ainsi le serveur répondra aux requêtes ARP pour l'adresse de tunnel du
client.


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Publicité
Poster une réponse
Anonyme