serveur telnet ou ssh , mais en mode reverse - Réseaux - Systèmes & Réseaux Pro
Marsh Posté le 20-06-2007 à 12:29:20
en fait ce que tu veux c'est depuis ton ordinateur portable by-passer la sécurité mise en place au niveau du firewall A pour atteindre le PC VTS.
=> tu fait un VPN passant par le port 143 depuis ton PC jusqu'au Firewall de ton client. Ensuite tu pourra acceder dans soucis aux ressources du reseau "Client".
Marsh Posté le 20-06-2007 à 13:51:17
L'idéal pour moi en effet est d'atteindre directement le PC appelé "VTS".
Mais si je n'ai accès qu'au PC appelé "passerelle de maintenance" , ce n'est pas trop grave, il me suffira ensuite de faire un ftp ou un telnet à partir de celui ci pour atteindre le PC "VTS".
Par contre, je ne connais pas bien les VPN, et je ne vois pas comment ça pourrait m'apporter une solution. Ou alors j'ai rien compris au fonctionnement de ceux-ci. Le VPN est bien une encapsulation au-dessus de TCP/IP ? il faut donc qu'une connexion soit établie entre un client et un serveur. Le client serait forcément mon ordinateur portable, et le serveur serait la "passerelle de maintenance". Mais comment le client peut-il atteindre le serveur ? je ne vois pas comment, sachant que le serveur se trouve sur un réseau local dont je n'ai pas la maitrise. A moins que le serveur VPN se connecte au client VPN en passant par un port autorisé ?
Et une fois le VPN mis en place, que me permet-il de faire exactement ?
Marsh Posté le 27-06-2007 à 13:51:07
tu montes un tunnel IPSEc entre les 2 routeurs.
dedans, tu vas effectivement encapsuler les flux en provenance de ton pc et à destination d'une machine dans le réseau distant.
regarde les FAQ et tuto pour monter un tunnel IPSEC entre 2 routeurs.
soit très soigneux dans ta configuration car il faut une configuration cryptographique symétrique pour que le tunnel monte.
une fois que le tunnel est monté, tu pourras te connecter comme si la machine était sur ton propre réseau local.
bon courage
Marsh Posté le 27-06-2007 à 16:30:53
xilebo a écrit : J'aimerais savoir s'il est possible de configurer un serveur ssh en mode "reverse". C'est à dire , je ne veux pas que ce soit mon application cliente (ex : putty sous windows) qui se connecte sur le port 22 distant, puisque mon serveur ssh n'est pas accessible, mais plutot que mon serveur ssh se connecte sur mon application cliente (donc dans ce sens), pour que je puisse avoir un accès terminal sur la machine distante (où se trouve le serveur ssh donc). |
oui c'est faisable.
Marsh Posté le 27-06-2007 à 18:36:55
_p1c0_ a écrit : oui c'est faisable. |
Peux tu m'en dire un peu plus ? Avec quels applications je peux faire ca , et quel est le parametrage a mettre en place ?
Au pire, j'ai trouvé un site qui permet de connecter 2 clients ensemble ,ca s appelle wwww.logmein.fr . Ca permet de faire quasi tout ce que je souhaite faire, sauf que j'aimerais n'avoir qu'une connexion de type terminal (ssh, telnet) plutot que d avoir le bureau graphique, pour des raisons de performances.
Marsh Posté le 27-06-2007 à 19:05:08
quel est le modèle de ton routeur ?
l'ipsec est adapté à ta demande!
Marsh Posté le 27-06-2007 à 20:15:40
xilebo a écrit : Peux tu m'en dire un peu plus ? Avec quels applications je peux faire ca , et quel est le parametrage a mettre en place ? |
Là comme ca non mais je t'en dit plus demain en étant au boulot.
Le principe en gros:
- la machine distante vient de connecter en ssh sur une machine chez toi
- tu te logues sur ta machine et tu récupères la connexion ssh et tu te retrouves en ssh sur la machine distante
J'essaye de te retrouver les lignes de commandes demain.
Marsh Posté le 28-06-2007 à 07:38:56
_p1c0_ a écrit : J'essaye de te retrouver les lignes de commandes demain. |
en fait, je viens de voir que google permet d'avoir les infos! faut chercher un peu quand meme!
=> http://gentoo-wiki.com/TIP_SSH_Reverse_Tunnel
Le passage important:
The actual steps |
Marsh Posté le 28-06-2007 à 08:18:38
Je te remercie, j'avais effectivement mal cherché, je vais regarder ça et tenter de faire une simulation pour voir comment ca fonctionne.
Marsh Posté le 28-06-2007 à 09:59:30
pour y arriver, il faut les prérequis suivant :
de ton coté : avoir ton client putty ( client ssh) , décider du port de sortie ( tu n'as pas trop le choix on dirait)
coté serveur : avoir un serveur SSH, et un port d'écoute ENTRANT ..
Marsh Posté le 28-06-2007 à 09:59:53
et n'oublies pas que tu ne peux encapsuler que des flux TCP ( et rien d'autre).
Marsh Posté le 28-06-2007 à 10:51:52
je viens de tester en local cette architecture, après quelques petits soucis, ca fonctionne parfaitement, et c'est exactement ce que je souhaite faire.
J'ai bien compris que je ne pouvais encapsuler qu'un flux TCP dessus. Ca ne me pose pas de pb car j'aurais besoin de transporter un flux ssh , ftp, et éventuellement VNC.
Par contre j'ai testé le flux ftp, j'arrive bien à me connecter sur la machine distante et à m'authentifier. Mais la commande ls ne fonctionne pas, il me retourne une erreur :
Code :
|
Pourtant, je suis bien authentifié, et je peux meme naviguer (de facon aveugle forcément) dans l'arborescence en faisant cd /monchemin.
Il me sort la même erreur lorsque je fais un get monfichier.
je suppose que c'est parceque lorsqu'on établit une connexion ftp avec un serveur, il y a plusieurs canaux qui sont créés, or , un seul passe par le tunnel SSH (celui sur le port 21 ). Mais si c'est ca, comment faire pour que tout passe par le même canal ? dois je configurer mon serveur ftp dans un mode particulier ?
J'ai une derniere question, plus pour ma culture personnelle Lorsque j'ai fait mes premiers tests, je m'étais connecté en ssh avec la commande suivante :
Code :
|
Et ensuite j'ai essayé de me connecter à partir d'une machine tierce sur middle:10000 et ca ne marchait pas. Pourtant dans la doc, il était dit que middle se mettait sur écoute sur le port 10000. Après plusieurs essais, je me suis apercu que la connexion ssh vers destination par le tunnel middle<->destination ne pouvait se faire qu'en local à partir de middle. Soit, il suffit dans ce cas de se connecter d'abord en ssh sur middle (puisqu'il y a un serveur ssh dessus), puis de refaire une connexion vers destination en passant par la boucle locale en faisant ssh localhost -p 10000.
Si j'ai bien compris, le serveur ssh de la machine middle écoute sur le port 10000 seulement sur la boucle locale. Pourquoi dans ce cas ne pas avoir fait écouté sur toutes les interfaces réseaux ce qui aurait permis de se connecter à la machine destination de n'importe ou ? Une raison de sécurité peut-être ?
EDIT : trouvé , il suffit de mettre dans la configuration du serveur SSH la ligne suivante : "GatewayPorts yes".
En tout cas, merci de vos infos, je peux maintenant mettre en place la maintenance prévue.
Marsh Posté le 28-06-2007 à 11:30:33
quand tu fais ta connexion FTP, il ya le port controle et le port DATA
le port DATA est une connexion dynamique qui varie suivant le mode de configuration du serveur ftp : Actif ou Passif.
tes infos ici :
http://www.ssh.com/support/documen [...] g_FTP.html
pour ton info on appelle cela un bastion ssh
exemple : http://www-sop.inria.fr/semir/securite/bastion.html
néanmoins, ton artchitecture marche en local, mais pour ta connexion distante ça sera autre chose...
Marsh Posté le 20-06-2007 à 12:11:40
Bonjour,
Suite à un projet de maintenance à distance, à cause des restrictions des réseaux auquels j'ai accès, je ne peux pas me connecter directement sur un serveur telnet ou ssh distant car celui-ci se situe sur un réseau local non accessible de l'extérieur.
Par contre, de mon coté, je peux aisément configurer le routeur pour mettre en place toute règle possible (NAT etc...).
J'aimerais savoir s'il est possible de configurer un serveur ssh en mode "reverse". C'est à dire , je ne veux pas que ce soit mon application cliente (ex : putty sous windows) qui se connecte sur le port 22 distant, puisque mon serveur ssh n'est pas accessible, mais plutot que mon serveur ssh se connecte sur mon application cliente (donc dans ce sens), pour que je puisse avoir un accès terminal sur la machine distante (où se trouve le serveur ssh donc).
avec un petit schéma , ca devrait etre plus simple. Le but est d'atteindre à partir de la machine nommée "Ordinateur portable de maintenance" , la machine nommée "passerelle de maintenance" en ssh ou telnet (pour qu'ensuite à partir de cette machine, j'atteigne une autre machine située sur un réseau local). Voici le schéma :
Excusez moi pour l'explication un peu confuse, mais je ne vois pas comment l'expliquer plus simplement