Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 05/02/2010, à 00:47

thomine

Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Bonjour,

Voici mon problème : j'ai une application web APP qui tourne sur une machine M1, dont l'adresse IP est IPM1 et le port PORTM1. J'y accède par l'URL : http://www.monappli.com:PORTM1.

Remarque : je ne peux passer par l'adresse IP car le serveur web est configuré un peu comme un virtualhost et nécessite un nom de domaine. Ce nom de domaine étant fictif, j'ajoute manuellement dans mon fichier hosts : www.monappli.com IPM1.

Comment puis-je accéder à cette application en tapant une URL : http://IPM2:PORTM2 ?

L'idée est de rediriger le flux HTTP qui arrive sur IPM2:PORTM2 vers www.monappli.com:PORTM1.
J'ai pensé utilisé un tunnel SSH, mais j'ai l'impression qu'on ne peut rediriger vers un domaine (redirection vers une adresse IP). D'autres idées que j'ai en tête : installer un proxy ou configurer un Apache d'une certaine manière pour faire cette redirection.

Qu'en pensez-vous ? Ma difficulté est de résoudre les 2 points (redirection de flux sur une adresse non IP).

Si certains veulent savoir pourquoi j'ai ce besoin : je souhaite pouvoir donner l'accès à APP à des machines (Windows) qui sont sur un réseau filtré et qui n'ont pas accès au fichier hosts.
1. PORTM1 est un port non standard et les utilisateurs de l'appli APP ont des règles dans leur proxy qui leur interdit la connexion sur ce port non standard.
2. L'ajout au fichier hosts est contraignant.

Par avance, merci !

Hors ligne

#2 Le 05/02/2010, à 03:51

droopy191

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Salut,

C'est pas suffisant de configurer le serveur par défaut sur votre vhost ?

http://httpd.apache.org/docs/2.2/vhosts/examples.html

<VirtualHost _default_:80>
DocumentRoot /www/default80
# ...
</VirtualHost>

Hors ligne

#3 Le 05/02/2010, à 10:12

thomine

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Merci pour la réponse.
Le vhost sur quelle machine ? Petite précision, la machine qui héberge l'application (M1) est Windows sous IIS.
La machine M2 peut-être sous Windows ou Linux (donc je peux faire du Apache) ?

Hors ligne

#4 Le 05/02/2010, à 21:18

droopy191

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

thomine a écrit :

Merci pour la réponse.
Le vhost sur quelle machine ? Petite précision, la machine qui héberge l'application (M1) est Windows sous IIS.
La machine M2 peut-être sous Windows ou Linux (donc je peux faire du Apache) ?

Je pige pas. Pourquoi passer par cette machine 2 ?
Je vous proposais de modifier le serveur 1 pour faire écouter le serveur sur un autre port ( non bloqué ) et mettre le vhost par défaut ( pour qu'il joignable par son ip ). J'ai peu etre mal compris, le serveur 1 n'est peut etre pas modififiable ou ne tourne pas sous apache ?

Si on on ne peut pas toucher à serveur1, la machine 2 est elle dans le meme sous réseau, nat ou ip publique pour ces 2 machines ?

Hors ligne

#5 Le 05/02/2010, à 22:44

thomine

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Effectivement, j'ai peut-être manqué de clarté.
Machine 1 : serveur IIS sous Windows qui écoute sur IPM1:PORTM1. Je ne peux pas modifier IPM1 et PORTM1, qui sont mes seuls points d'entrée sur cette machine (car machine sur un réseau local différent, IPM1 et PORTM1 sont accessibles via internet).
Machine 2 : une machine quelconque qui n'est pas sur le même sous-réseau et sur laquelle je peux faire ce que je veux.
Je suis obligé de passer par cette machine M2 car je ne peux modifier PORTM1. Donc mon idée était d'utiliser une machine M2 sur laquelle je maitrise le port et de rediriger le flux (HTTP) vers IPM1:PORTM1.
Voilou, merci pour les commentaires !

Hors ligne

#6 Le 05/02/2010, à 23:24

droopy191

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Ok, c'est plus clair.

- tunnel ssh

 ssh user@machine2 -Lportm2:machine1:portm1

+ l'ip de machine1 dans le hosts de machine2
Un nom de domaine n'est pas un problème en soit, mais vu que c'est du bidouillage, c'est à tester.
( je viens de tester avec clients et machine2 sur le meme réseau local, et machine1 = google, ca marche. A voir dans votre cas particulier )

- apache en reverse proxy ( attention à la sécurité ). En principe, le reverse proxy est en mis en frontal pour des serveurs sur le lan. Et si j'ai bien compris votre description, on a 3 groupes de machines ( clients, machine 1, machine2 ) qui sont toutes sur internet séparément.

- on doit pouvoir faire qq chose à base de proxy type squid ( meme remarque que apache )


Je serais tenté de faire un tunnel ssh, plus simple à mettre en place et à sécuriser amha.

Hors ligne

#7 Le 08/02/2010, à 13:17

thomine

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

Merci Droopy191.
J'ai fait le test avec un tunnel SSH, effectivement c'est simple et ça fonctionne. La contrainte est de devoir ajouter une ligne dans le fichier hosts.
La solution idéale serait de ne pas avoir à modifier le client...

Donc si quelqu'un a quelques infos supplémentaires sur une conf sans impact sur PC client et sur la manière de configurer ça avec un proxy squid par exemple, ça m'intéresse.

Hors ligne

#8 Le 08/02/2010, à 23:54

droopy191

Re : Comment rediriger une @IP + port en HTTP vers une @machine + port ?

thomine a écrit :

Merci Droopy191.
J'ai fait le test avec un tunnel SSH, effectivement c'est simple et ça fonctionne. La contrainte est de devoir ajouter une ligne dans le fichier hosts.
La solution idéale serait de ne pas avoir à modifier le client...

Donc si quelqu'un a quelques infos supplémentaires sur une conf sans impact sur PC client et sur la manière de configurer ça avec un proxy squid par exemple, ça m'intéresse.

Oui, je n'avais pas penser à ca.
Ca ne marche pas en modifiant juste le hosts de machine 2 ?

Hors ligne