Forum Linux.général SSH et proxy (je suis bloqué)

Posté par (page perso) .
5
8
mai
2011

Bonjour a tous,

Voila le lieu dans lequel je suis en vacances, possède un AP wifi avec un portail captif et derrière celui-ci un proxy en transparent au vu de mes premières investigations.

Mon soucis est le suivant j'arrive sans soucis a surfer sur http et https, même rdesktop fonctionne. Par contre il m'est impossible de me connecter a mes serveurs par SSH, et cela meme sur un serveur qui a un SSH sur le port 80.

Les requêtes finissent par un RST d'après mon wireshark.

Ma question est double.
Comment puis je me connecter sur mes serveurs dans ce cas ? j'ai fais des tests avec socat, mais le proxy étant transparent je n'arrive pas a connaître son IP.

Comment est il possible de bloquer le SSH sur le port 80, si c'est ce qui est réalisé dans mon cas ?

Merci.

  • # DPI

    Posté par (page perso) . Évalué à 1.

    Il y a certainement un filtrage au niveau protocol/application
    il y a L7-filter par exemple pour ça en logiciel libre

    dans ce cas il faut encapsuler dans un protocol accepté (http, dns, icmp...)
    mais bon courage...

    • [^] # Re: DPI

      Posté par . Évalué à 5.

      Sans aller jusqu'à du DPI, sur le port 80, le proxy s'attend simplement à recevoir des requêtes de type HTTP pour les rejouer lui-même sur le serveur distant. Et comme il ne reçoit pas du HTTP ...

      C'est bien là, toute la différence entre un firewall avec une simple restriction de port et la mise en place d'un proxy transparent sur cette restriction de port via une redirection des requêtes sur port 80 par un firewall vers un serveur proxy.

      Si vous n'aimez pas ce commentaire c'est qu'il est ironique.

  • # C'est le premier pas qui compte

    Posté par (page perso) . Évalué à 3.

    Il te faut tout d'abord établir une connexion de type "ligne de commande" vers une machine dont tu as le contrôle. Soit tu connais un service web qui te permet ça (mauvaise idée je pense), soit tu utilises http://anyterm.org/ ou PHPShell.

    Une fois que tu as ça, tu peux te connecter en SSH (via anyterm par exemple) à la machine de ton choix.

    Si tu veux plus, tu peux configurer ta machine cible pour utiliser le couple habituel hts et htc, donc tu pourras t'y connecter directement.

  • # AjaxTerm en HTTPS ou serveur SSH derrière SSLH

    Posté par (page perso) . Évalué à 3.

    Passé un temps, j'utilisais AjaxTerm http://antony.lesuisse.org/qweb/trac/wiki/AjaxTerm pour avoir un terminal sur un serveur distant. L'avantage, c'est que tout passe par du "vrai" HTTP, et donc le proxy (transparent ou non) ne peut rien dire.
    Je ne faisais même tourner AjaxTerm en HTTPS, ce qui permettait de chiffrer tout les transferts.
    Malheureusement, une mise à jour incompatible de FireFox l'a empêcher de marcher.

    Depuis, je fais tourner le serveur SSH (port 22) en aval d'un serveur SSLH (port 443 / http://www.rutschle.net/tech/sslh.shtml ). L'avantage de SSLH, c'est qu'il sait distinguer une connexion entrente SSL/HTTPS d'une connexion SSH.
    Donc:
    - soit on utilise un client Firefox pour se connecter au port HTTPS, et on visualise des pages web (SSLH redirige la connexion vers le "vrai" serveur HTTPS)
    - soit on se connecte en SSH sur le port 443 (ssh -p 443 toto@serveur), et SSLH redirige la connexion vers le serveur SSH.

    Dans un cas comme dans l'autre, les proxy ne voient pas la différence.

  • # Tunnel..

    Posté par . Évalué à 2.

    Il ne te reste plus qu'à passer par un tunnel HTTP:

    http://www.nocrew.org/software/httptunnel.html

    THIS IS JUST A PLACEHOLDER. YOU SHOULD NEVER SEE THIS STRING.

  • # Et le port 443 (https)

    Posté par . Évalué à 6.

    Parfois utiliser le port 443 (https) au lieu du port 80 (http) résout le problème. Si celui-ci est déjà utilisé sur le serveur, regarde du côté de sslh.

    Sinon, imparable SSH over HTTP(S)

  • # Merci

    Posté par (page perso) . Évalué à 1.

    Merci a tous pour vos réponses, pour l'instant, je vais utiliser mon acces rdp, il est quand meme etrange de bloquer ssh mais de laisser rdp .... Pour info c'est pfsense le proxy, et oui a la réunion aussi on aime le libre

  • # ssh sur le port 443

    Posté par (page perso) . Évalué à 2.

    Toutes les fois ou j'ai été confronté à un proxy http transparent, j'ai utilisé ssh sur le port 443, et je n'ai jamais eu de problèmes.

    ça permet d'utiliser tsocks, sshfs ou autre

    Il suffit d'avoir un serveur ssh à l'écoute sur le port 443 et le tour est joué.

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.