Faire un don ! | | style | statistiques | contactez-nous | plan | lettre d'information
aide





Programmation.c : relai de connection TCP via apache

Posté par Emeric Verschuur (Jabber id, page perso, ) le 09 mai 2008

Bonjour,



Étant comme beaucoup de gens confronté à un blocage de port, je voudrais élaborer une solution dont voici le principe :



Donnée du problème :

* Serveur x en local qui est en écoute d'une connections sur un port y

* Serveur HTTP (apache qui héberge mon sites ainsi que d'autres services)

* Un client z qui ne peux pas se connecter directement au serveur x car le port y est bloqué en sortie par le routeur.

Le mode de communication entre le client z et le serveur x est asynchrone donc le client envoie des données (requêtes) au serveur et vice-versa.



Principe :

Voilà : le souci c'est comment faire passer une session TCP via le port 80 pour finalement être relayer sur le port y...



Ce que je voudrais c'est par exemple :

z commence une session TCP avec apache sur le port 80

z envoie une requête une requête "GET /dossier-redirect/" (On suppose que apache est configuré de telle manière que l'accès au dossier /dossier-redirect/ fait appel à un module ou script CGI nommé s).

s récupère le no de socket (descripteur de fichier) associé à la connexion http avec z

s commence une session TCP avec le serveur x sur le port y

en fin s relaye les données de s vers z et vice-versa jusqu'à ce que z ou s effectue une clôture de session tcp.



voilà, je sais que c'est assez tordu mais ma question c'est : est ce que c'est faisable ? et est ce qu'il y aurait d'autre alternatives.



ps: ce que je voudrais éviter, c'est un proxy http ou tunnel http...



merci d'avance

> Lire le message (5 commentaires, moyenne: 1,4).  

Re: SSH

Posté par Toto () le 10/05/2008 à 01:12. (lien). Évalué à 1.

Et avec un httptunnel et un apache en reverse proxy, on peut meme s'amuser à faire en sorte que l'on ait un serveur web classique, mais qu'un des virtual hosts soit la passerelle ssh. Cela évite d'avoir à "bloquer" le port 443 pour sshd.
Ex :
www.domaine.com:443 --> site web legitime
ssh.domaine.com:443 --> le serveur ssh

Petit howto ici : http://dag.wieers.com/howto/ssh-http-tunneling/

[ Répondre ]

Vous ne pouvez plus rajouter de commentaires! (trop vieux)