Pages : 1
#1 Le 13/09/2019, à 11:03
- nicolas84
[Résolu] Redirection de port
Bonjour,
Voici mon problème, je suis en train de configurer des tunnels ssh et reverse-ssh pour accéder à mes serveurs locaux depuis un serveur qui m'appartient et facilement accessible depuis le net (pare-feu que je peux ouvrir)
Depuis mon serveur, je peux accéder a ce serveur web dont j'aimerais bien accéder.
Je le vois car la commande suivante me télécharge bien index.html :
wget http://127.0.0.1:5423
Mais je ne peux accéder depuis un autre poste avec l'ip publique de ce serveur vers ce même port. (http://1.2.3.4:5423)
Le pare-feu à été ouvert mais je pense que le problème est que ce port n'est écouté par le serveur que sur l'interface lo.
Le retour de la commande netstat -tlnpu | grep 5423 :
tcp 0 0 127.0.0.1:5423 0.0.0.0:* LISTEN 1541/ssh
tcp6 0 0 ::1:5423 :::* LISTEN 1541/ssh
Si je ne me trompe pas, il me faudrait une ligne 0.0.0.0:5423 pour que le serveur puisse répondre.
J'ai essayé de faire un forward port avec iptables, cela donne ça : (iptables -L -t na)
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- anywhere anywhere tcp dpt:5423 to:127.0.0.1:5423
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
Je ne sais plus comment m'y prendre ni quoi chercher. Merci par avance pour votre aide !
Dernière modification par nicolas84 (Le 15/09/2019, à 08:43)
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
#2 Le 13/09/2019, à 12:17
- Zakhar
Re : [Résolu] Redirection de port
Il te faut Wireshark, et regarder
-1) si les paquets arrivent bien
-2) s'ils repartent au bon endroit
Si le serveur n'a pas d'interface graphique, il va falloir tracer l'équivalent avec tcpdump
La DNAT n'aide en rien dans ton cas, ce n'est pas fait pour ça !
"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)
Hors ligne
#3 Le 13/09/2019, à 12:31
- bruno
Re : [Résolu] Redirection de port
Bonjour,
C'est franchement pas clair…
Tu as un serveur web qui n'est en écoute que sur l'interface de bouclage (lo).
Tu veux y accéder depuis l'Internet.
La solution est soit :
- reconfigurer le service web pour qu'iol soit en écoute sur toutes les interfaces ;
- configurer un hôte en reverse proxy qui renvoie sur http://127.0.0.1:5423 sur ton serveur web (Apache ou Nginx).
Je ne vois pas le rapport avec SSH ni avec tes règles de pare-feu…
#4 Le 13/09/2019, à 13:06
- nicolas84
Re : [Résolu] Redirection de port
Bonjour,
Merci pour vos réponse.
@Zakhar
Je vais regarder du côté de tcpdump, merci
@bruno
Effectivement je n'ai pas été clair. Le serveur web n'est pas sur le serveur dont je parle...
Mon serveur web est hébergé sur un serveur chez moi (je l’appellerai serveur_local pour simplifier). Serveur_local est derrière une box 4G qui est elle-même dans un NAT que je ne peux pas configurer.
Serveur_distant est quand à lui un serveur virtualisé hébergé chez 1&1. Serveur_local ouvre un tunnel reverse-ssh vers serveur_distant pour que serveur_distant puisse ce connecter a serveur_local en ssh avec la commande ssh -p 6000 user@127.0.0.1
Ensuite, serveur_distant ouvre un tunnel ssh vers serveur_local:80 sur le port 5423. (ssh user@localhost -p 6000 -L 5423:10.0.0.210:80 -N) (10.0.0.210 est l'ip locale du serveur_local que je veux atteindre). Je peux donc ensuite m'y connecter avec serveur_distant avec http://127.0.0.1:5423
Maintenant, mon objectif est de pouvoir accéder au serveur web depuis n'importe quel poste connecté sur internet avec http://serveur_distant:5423 ou un autre port si nécessaire.
Autre précision mais qu'il ne change rien je pense, ce n'est pas vraiment un serveur web mais une application accessible via une interface web.
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
#5 Le 13/09/2019, à 13:22
- nicolas84
Re : [Résolu] Redirection de port
@Zakhar
Tcpdump me sors ça en boucle sur serveur_distant lorsque je tente une connexion depuis un client quelconque : (j'ai remplacé l'ip du serveur_distant par 1.2.3.4 et l'ip du client par 5.6.7.8) :
12:17:08.073457 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 185568, win 1444, options [nop,nop,TS val 695418875 ecr 1524621836], length 0
12:17:08.073479 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 190648:190868, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418875], length 220
12:17:08.073489 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 186008, win 1444, options [nop,nop,TS val 695418883 ecr 1524621836], length 0
12:17:08.073493 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 186448, win 1444, options [nop,nop,TS val 695418883 ecr 1524621836], length 0
12:17:08.073601 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 190868:191568, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418883], length 700
12:17:08.073651 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 191568:191788, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418883], length 220
12:17:08.073696 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 191788:192008, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418883], length 220
12:17:08.073742 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 192008:192228, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418883], length 220
12:17:08.073785 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 192228:192448, ack 109, win 662, options [nop,nop,TS val 1524622064 ecr 695418883], length 220
12:17:08.106965 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 187208, win 1444, options [nop,nop,TS val 695418931 ecr 1524621876], length 0
12:17:08.106984 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 192448:192668, ack 109, win 662, options [nop,nop,TS val 1524622097 ecr 695418931], length 220
12:17:08.106994 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 187648, win 1444, options [nop,nop,TS val 695418931 ecr 1524621876], length 0
12:17:08.106997 IP 5.6.7.8.43812 > 1.2.3.4.postgresql: Flags [.], ack 188248, win 1444, options [nop,nop,TS val 695418967 ecr 1524621918], length 0
12:17:08.107099 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 192668:193368, ack 109, win 662, options [nop,nop,TS val 1524622097 ecr 695418967], length 700
12:17:08.107146 IP 1.2.3.4.postgresql > 5.6.7.8.43812: Flags [P.], seq 193368:193588, ack 109, win 662, options [nop,nop,TS val 1524622097 ecr 695418967], length 220
Dernière modification par nicolas84 (Le 14/09/2019, à 07:39)
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
#6 Le 13/09/2019, à 13:24
- bruno
Re : [Résolu] Redirection de port
Whaou, c'est quand même super tordu…
Ce serait quand même beaucoup plus simple d'héberger ton application web sur le serveur Public (celui chez 1&1).
Parce que là il va falloir en plus avoir un Apache ou un Nginx sur ton serveur_distant qui fait reverse proxy vers http://127.0.0.1:5423
#7 Le 13/09/2019, à 13:25
- nicolas84
Re : [Résolu] Redirection de port
@bruno
Il n'est pas possible de mettre ce serveur sur serveur_distant c'est pour de la vidéosurveillance et je veux que ce soit avant tout en local.
Je vois à peut près ce qu'est un reverse proxy mais j'aimerais ensuite faire le même système pour d'autres protocole que http.. RDP par exemple. Et la je pourrais pas utiliser reverse proxy je pense ? C'est pour ça que je cherche plus un système de redirection de port... Si ça existe...
Merci encore pour ton aide !
Dernière modification par nicolas84 (Le 13/09/2019, à 13:28)
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
#8 Le 13/09/2019, à 16:48
- Zakhar
Re : [Résolu] Redirection de port
Il faut commencer par morceaux.
Là tu nous montres donc la communication entre ton "serveur public" et le "serveur de surveillance" (appelons les ainsi).
Le tcpdump a l'air de montrer qu'il y a du flux qui passe.
Est-ce le cas, quand tu fais une requête en étant connecté au serveur public en ssh par exemple (si une telle chose est possible).
Et une fois que ce morceau fonctionne, il faut ensuite tester le "bout en bout".
Si tu commences d'emblée pour le "bout en bout", il peut y avoir tellement de choses qui plantent (mauvais paramétrage ou autre) que c'est inextricable, d'autant que comme le fait remarquer Bruno, tu t'es lancé dans un truc qui est un vrai défi tellement c'est une construction alambiquée !
"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)
Hors ligne
#10 Le 14/09/2019, à 05:03
- nicolas84
Re : [Résolu] Redirection de port
@Zakhar
Oui tout a fait. Comme je l'ai dit dans mon premier message, c'est vraiment le dernier morceau que je n'arrive pas a debloquer... La connexion fonctionne lorsque je suis connecté en ssh a serveur_distant. Je fait le test avec cette commande :
wget http://127.0.0.1:5423
Cela me télécharge bien le index.html de la page de vidéosurveillance.
Merci encore pour ton aide
Dernière modification par nicolas84 (Le 14/09/2019, à 05:04)
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
#11 Le 14/09/2019, à 07:57
- nicolas84
Re : [Résolu] Redirection de port
Ca y est j'ai trouvé comment faire.
J'ai tout simplement installé simpleproxy et l'ai lancé avec la commande suivante :
simpleproxy -L 5424 -R 127.0.0.1:5423 #Ajouter -d pour lancer en arrière plan
Mon application est maintenant accessible sur http://ip_serveur_distant:5424
Je viens de tenter avec RDP ça fonctionne aussi
Merci à vous deux !
Dernière modification par nicolas84 (Le 15/09/2019, à 08:42)
SERVER : Ubuntu Server 18.04 64bit - Intel Core i3-3220 - 12GB RAM
DESKTOP : Windows 10 - Intel Core Quad Q9550 - 8GB RAM
Hors ligne
Pages : 1