Cywin et Open SSH, peut ils servir de proxy http ?

Cywin et Open SSH, peut ils servir de proxy http ? - réseaux et sécurité - Linux et OS Alternatifs

Marsh Posté le 14-03-2009 à 19:32:28    

Hello,
 
J'ai une question concernant cygwin et open SSH.
 
Peut on s'en servir comme proxy ? J'aimerai rediriger toutes les requêtes HTTP et pourquoi pas d'autres protocole vers un serveur distant.
Je tente donc de passer par un tunnel SSH.
 
Je configure mon navigateur pour se servir du tunnel comme proxy (openssh + putty), mais la que faire pour que le tunnel sache se transformer en proxy et redirige toutes les requêtes sur le net ?
 
Faut il utiliser un serveur proxy supplémentaire sur lequel on redirigera les requêtes passant par le tunnel ?
 
Merci.
 
PS : Message pour la modération ;) :il ne s'agit pas d'une méthode pour contourner une mesure de sécurité, l'exemple que j'avais donné n'était qu'à titre d'exemple. Je m'intéresse à tout ce qui est administration de postes et de serveurs, je pense avoir le droit d'utiliser un serveur proxy passant par un tunnel ssh, merci pour votre compréhention ;).


Message édité par Clarkent le 14-03-2009 à 19:33:35

---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 14-03-2009 à 19:32:28   

Reply

Marsh Posté le 14-03-2009 à 19:39:04    

SSH c'est SSH, si tu veux un proxy HTTP il faut prendre un proxy HTTP :spamafote: On ne "convertit" pas un protocole en un autre comme ça.


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 14-03-2009 à 20:26:10    

black_lord a écrit :

SSH c'est SSH, si tu veux un proxy HTTP il faut prendre un proxy HTTP :spamafote: On ne "convertit" pas un protocole en un autre comme ça.


Je suis tout à faire d'accord, mais le tunnel SSH il ne fait que du port forwarding, alors pourquoi ne pas pouvoir rediriger tous les flux vers n'importe quel port.
Donc si je fais une requête HTTP sur le port 80, en sortant du tunnel il s'agira tjs d'une requête http sur le port 80 il n'y a aucune conversion de protocole.
 
donc comment dire à cette requête d'aller consulter le net ? Ou alors ce n'est pas possible et il faut systématiquement le rediriger vers une unique IP / port.
 
Merci.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 14-03-2009 à 21:58:04    

black_lord a écrit :

SSH c'est SSH, si tu veux un proxy HTTP il faut prendre un proxy HTTP :spamafote: On ne "convertit" pas un protocole en un autre comme ça.


avec un tunnel http, tu encapsules.

Reply

Marsh Posté le 15-03-2009 à 14:47:24    

Taz a écrit :


avec un tunnel http, tu encapsules.


donc faut forcément le forwarder quelque part.
Mais une fois sortie du tunnel le message n'a pas changé non ?
 
J'ouvre un tunnel, je forward mes requêtes http vers ce tunnel, le bout du tunnel décapsule les messages, ils sont donc comme à l'origine, si je redirige l'ensemble des requêtes vers un routeur que va t'il se passer dans la tête du routeur ? (car dans les fait il ne se passera rien).
Pk le routeur ne saura pas quoi faire de cette requête ? J'ai un pb de compréhension réseau pour le coup :D.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 15-03-2009 à 18:51:39    

Clarkent a écrit :


donc faut forcément le forwarder quelque part.
Mais une fois sortie du tunnel le message n'a pas changé non ?

 

Je vais un peu reformuler (ne pas t'offusquer black_lord :) ), c'est que ca dépend de la technique utilisée pour faire le tunnel. L'IETF n'a jamais vraiment établi de standard univoque pour en faire, et donc y'en a tout un tas, qui n'affectent pas les mêmes éléments/couches quand les deux points communiquent.

 

En très gros, il y a ceux qui sont assez protocole-agnostique (SSH -L/-R, PPP avec SSH, IPsec), et ceux qui vont fonctionner par systèmes de mandats (un proxy qui va effectuer les requetes à ta place, et te retourner les résultats via un tunnel crypté).

 

Ensuite, dans ces gros ensembles, il y a ceux qui pourront tout faire (encapsuler toute sorte de protocole de manière transparente, comme IPsec), et ceux qui seront beaucoup plus limités (SSH -L/-R fera un genre de NAT du pauvre, qui est restreint à un remote et un seul port forwardé). Après, y'a les solutions mixtes, qui passent par les mandats (SOCKS au travers de Tor, combo squid/ssh...)

Message cité 1 fois
Message édité par Gf4x3443 le 15-03-2009 à 18:53:13

---------------
Petit guide Kerberos pour l'administrateur pressé
Reply

Marsh Posté le 15-03-2009 à 22:37:02    

Gf4x3443 a écrit :


 
Je vais un peu reformuler (ne pas t'offusquer black_lord :) ), c'est que ca dépend de la technique utilisée pour faire le tunnel. L'IETF n'a jamais vraiment établi de standard univoque pour en faire, et donc y'en a tout un tas, qui n'affectent pas les mêmes éléments/couches quand les deux points communiquent.
 
En très gros, il y a ceux qui sont assez protocole-agnostique (SSH -L/-R, PPP avec SSH, IPsec), et ceux qui vont fonctionner par systèmes de mandats (un proxy qui va effectuer les requetes à ta place, et te retourner les résultats via un tunnel crypté).
 
Ensuite, dans ces gros ensembles, il y a ceux qui pourront tout faire (encapsuler toute sorte de protocole de manière transparente, comme IPsec), et ceux qui seront beaucoup plus limités (SSH -L/-R fera un genre de NAT du pauvre, qui est restreint à un remote et un seul port forwardé). Après, y'a les solutions mixtes, qui passent par les mandats (SOCKS au travers de Tor, combo squid/ssh...)


ha, c'est bcp plus complexe que je ne l'imaginais au départ, merci pour cet éclaircissement qui quelque part à assombris ma vision :D.
Je suis sur openSSH, de quel type s'agit il le concernant ?
Je comprends le système du tunnel, ce que je ne comprends pas c'est l'intérêt de ne pas forwarder directement toutes les requêtes et qu'il faut préciser un port et une ip systématique. Mais je ne maîtrise pas du tout le sujet manifestement.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 15-03-2009 à 23:50:47    

Clarkent a écrit :


ha, c'est bcp plus complexe que je ne l'imaginais au départ, merci pour cet éclaircissement qui quelque part à assombris ma vision :D.
Je suis sur openSSH, de quel type s'agit il le concernant ?

 

Si c'est le ssh avec les options -L/-R, c'est un bete tunnel point à point, qu'on contacte par une IP+port donné, et tout le traffic traverse le tunnel pour ressortir à l'autre bout, ou les entetes sont réécrites suivant les paramètres passés aux options -L/-R.

 
Citation :

Je comprends le système du tunnel, ce que je ne comprends pas c'est l'intérêt de ne pas forwarder directement toutes les requêtes et qu'il faut préciser un port et une ip systématique. Mais je ne maîtrise pas du tout le sujet manifestement.

 

C'est donc que tu ne comprends pas le système du tunnel. Quel que soit la technique à employer, nécessairement, à un moment ou à un autre, il faut bien dire aux aboutissements ce qu'ils doivent faire du paquet. Quand c'est du ssh -L, c'est en ligne de commande, c'est le plus simple et le plus direct (et le plus limité). Pour des VPN SSL, IPsec, ou proxys web sur SSH, ca sera à la configuration de OpenVPN, stunnel, raccoon, ou du squid + client web. Mais ca se fait pas "tout seul". Sauf chez Microsoft.

Message cité 1 fois
Message édité par Gf4x3443 le 15-03-2009 à 23:51:42

---------------
Petit guide Kerberos pour l'administrateur pressé
Reply

Marsh Posté le 16-03-2009 à 00:00:24    

en sortie, ça bouge pas. Y a des tas de code sur le net pour faire ssh tunnelé sur du HTTP, le tout c'est d'avoir un serveur web (ou simili) qui gère le CONNECT, ensuite ça accroche le ssh et ça tourne.

Reply

Marsh Posté le 16-03-2009 à 00:01:25    

Gf4x3443 a écrit :


 
Si c'est le ssh avec les options -L/-R, c'est un bete tunnel point à point, qu'on contacte par une IP+port donné, et tout le traffic traverse le tunnel pour ressortir à l'autre bout, ou les entetes sont réécrites suivant les paramètres passés aux options -L/-R.
 

Citation :

Je comprends le système du tunnel, ce que je ne comprends pas c'est l'intérêt de ne pas forwarder directement toutes les requêtes et qu'il faut préciser un port et une ip systématique. Mais je ne maîtrise pas du tout le sujet manifestement.


 
C'est donc que tu ne comprends pas le système du tunnel. Quel que soit la technique à employer, nécessairement, à un moment ou à un autre, il faut bien dire aux aboutissements ce qu'ils doivent faire du paquet. Quand c'est du ssh -L, c'est en ligne de commande, c'est le plus simple et le plus direct (et le plus limité). Pour des VPN SSL, IPsec, ou proxys web sur SSH, ca sera à la configuration de OpenVPN, stunnel, raccoon, ou du squid + client web. Mais ca se fait pas "tout seul". Sauf chez Microsoft.


ssh dans un tunnel http, ça n'a rien à voir.

Reply

Marsh Posté le 16-03-2009 à 00:01:25   

Reply

Marsh Posté le 16-03-2009 à 00:05:00    

On parle de rediriger des requêtes HTTP dans du SSH. Pas le contraire.


---------------
Petit guide Kerberos pour l'administrateur pressé
Reply

Marsh Posté le 16-03-2009 à 10:51:13    

ssh -D8080  
avec openssh crée un proxy SOCKS sur localhost:8080 en utilisant le server remote pour faire faire les requêtes

Reply

Marsh Posté le 16-03-2009 à 17:17:41    

J'avais oublié cette possibilité de faire un tunnel ssh dans un tunnel http, d'ailleurs je me pose la question de l'utilité de faire du ssh dans un tunnel https ? Ca casse les perfs un peu plus :D ? Ou alors quand on fait du ssh via http l'on peut voir que l'on fait du ssh, et le https cache completement ce tunnel vu qu'il crypte lui même toutes les données ?


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 16-03-2009 à 17:18:57    

sligor a écrit :

ssh -D8080  
avec openssh crée un proxy SOCKS sur localhost:8080 en utilisant le server remote pour faire faire les requêtes


proxy socks c'est un proxy capable de redirigé tous les flux ? enfin par defaut avec cette commande on peut créer un proxy via open ssh si j'ai bien compris.
Par contre je comprends moins le cas du serveur remote pour faire faire des requêtes.
Merci.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 17-03-2009 à 11:37:55    

je n'ai aps eu l'occasion de tester hier, donc je relance ;).


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 20-03-2009 à 12:44:46    

sligor a écrit :

ssh -D8080  
avec openssh crée un proxy SOCKS sur localhost:8080 en utilisant le server remote pour faire faire les requêtes


ou dois je effectuer cette commande ? car si je l'effectue dans l'invite de commande une fois connecté au serveur SSH ca ne fonctionne pas.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Marsh Posté le 21-03-2009 à 12:09:41    

En effet le proxy socks fonctionne très bien avec putty et openssh, mais il faut activer network.proxy.socks_remote_dns dans firefox sinon il n'y aura pas de résolution de DNS si vous utilisez le proxy dans un réseau privé.
 
Par contre impossible à faire fonctionner avec IE et je ne trouve pas le paramètre équivalent à celui de FF.
 
Bien sur si vous avez un DNS sur le réseau local IE peut tjs l'interroger mais ne passera pas par le proxy.


---------------
"PAR LE POUVOIR DU CRÂNE ANCESTRAL, JE DETIENS LA FORCE TOUTE PUISSANTE".
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed