1 votes

Comment mettre en place un tunnel ssh vers le serveur web d'un réseau interne depuis l'extérieur du réseau interne en utilisant Putty ?

Voici ma situation.

  • Au travail, il y a un réseau interne.
  • Je peux accéder au réseau professionnel depuis mon domicile en me connectant en mode ssh à une boîte linux qui fait face à la fois à l'internet et au réseau interne.
  • Le réseau de travail dispose d'une autre machine linux qui fait tourner un serveur web.
  • Je veux me connecter au serveur web sur la deuxième machine linux avec ma machine Windows à la maison.
  • Le serveur web utilise plusieurs serveurs virtuels.
  • Mon réseau domestique utilise des adresses IP telles que 192.168.1.1.
  • Mon réseau professionnel utilise des adresses telles que 192.168.0.1.

Je pense pouvoir y parvenir en utilisant des tunnels ssh, mais je ne sais pas exactement quels paramètres utiliser dans Putty et je ne suis pas sûr de ce qu'il faut mettre dans mon fichier hosts pour les vhosts.

Merci pour votre aide !

2voto

WildJoe Points 2515

D'accord... C'est tout à fait possible avec Putty, même si ce n'est pas aussi facile qu'avec OpenSSH sur une machine Linux. Je recommande vivement de mettre en place une clé d'identité SSH et de l'installer sur les machines auxquelles vous vous connectez et d'utiliser l'agent Putty (pagent.exe) pour la transmission des clés. Ceci dit, voici la marche à suivre.

Tout d'abord, créez un profil de connexion Putty pour votre boîte Linux professionnelle à laquelle vous pouvez accéder depuis votre domicile. Vous devrez vous assurer que sous Connection -> Data que vous définissez votre Auto-login username . Ensuite, sous Connection -> SSH -> Auth s'assurer que Allow agent forwarding est vérifié. Enregistrez maintenant ce profil et notez le nom que vous lui donnez (par exemple, work-jumpbox).

Avec cette configuration, vous voulez maintenant configurer un deuxième profil pour la boîte située derrière la boîte de saut de travail. Configurez ce profil avec le nom d'hôte/l'adresse IP et le port corrects du serveur web du bureau. Vous devez ensuite aller sur Connection -> Data -> Proxy et définir le Proxy Type a local et définir le Telnet command or local-proxy-command a plink -load work-jumpbox -nc %host:%port\n (remplacez work-jumpbox par le nom que vous avez donné à votre profil précédent pour la machine linux de travail.

Maintenant, sauvegardez ce profil (c'est-à-dire work-webserver) et lorsque vous voulez vous connecter, chargez-le et cliquez sur connecté. Il devrait vous connecter au serveur web du bureau après s'être connecté au jumpbox en silence.

1voto

Isak Savo Points 15357

Je suppose que votre serveur web fonctionne à l'adresse 192.168.0.2 sur le port 80 dans le réseau de votre entreprise.

  1. Ouvrez votre connexion SSH à votre première machine Linux avec putty.
  2. Accéder au menu Connexion > SSH > Tunnels .
  3. Entrer dans la zone de texte Port source le port 1234 (vous pouvez utiliser n'importe quel autre port si vous le souhaitez, à condition qu'il ne soit pas déjà utilisé par un service local, et qu'il soit supérieur à 1024 si vous n'êtes pas administrateur de votre machine).
  4. Sur le terrain Destination Saisissez l'adresse et le port de votre serveur web : 192.168.0.2:80 .
  5. Cliquez sur le bouton Ajouter

Maintenant, si vous tapez http://localhost:1234/ dans votre navigateur, vous devriez obtenir la page de l'hôte virtuel par défaut de votre serveur web. Il suffit d'ajouter la ligne suivante dans votre fichier hosts

127.0.0.1 myvhost.com

et vous accéderez à votre site web avec l'URL suivante dans votre navigateur http://myvhost.com:1234/

0voto

Vinzz Points 1850

Allez d'abord dans putty et établissez une connexion sauvegardée avec votre serveur ssh au bureau. Disons que pour le reste des instructions, vous l'appelez "office"

Ouvrez une fenêtre de commande et procédez comme suit où X est le dernier octet de l'IP de votre serveur web.

putty -L 80:192.168.0.X:80 -load office -N

Cette commande utilise la session SSH "office" et fait correspondre votre port local 80 au port distant 80 du serveur web qui passe par le serveur "office".

Maintenant, si vous voulez vous connecter à un nom d'hôte spécifique, vous devez l'ajouter à votre table d'hôtes et le faire pointer vers votre hôte local.

hostname1.officewebdomain.com 127.0.0.1

Cela devrait suffire.

0voto

ToltarTheGreat Points 21

Cela peut être fait avec des tunnels SSH, mais ce n'est pas vraiment une bonne solution. Essentiellement, cela revient à passer des paquets TCP sur une connexion TCP, qui peut exploser si votre connexion n'est pas parfaite.

Une bien meilleure approche consisterait à mettre en place un VPN, qui utilise des paquets UDP, et lorsque vous vous connectez au VPN, vous pouvez voir le réseau de votre entreprise comme si vous étiez connecté au bureau. OpenVPN est idéal à cette fin et son site contient des guides très complets pour vous aider à mettre en place le réseau.

0voto

James L Points 5835

Utiliser un proxy SOCKS. Ouvrez la fenêtre PuTTY et allez dans Connexions->SSH->Tunnels (cela peut être légèrement différent car je n'ai pas accès à un PuTTY en ce moment). Saisissez le port source 8080, sélectionnez les options Dynamic et Automatic et cliquez sur "Add" (vous n'avez pas besoin d'un port de destination pour le port dynamique) et connectez-vous au serveur SSH.

Allez ensuite dans Outils Firefox -> Avancé -> Réseau -> Paramètres pour Configurer la façon dont Firefox se connecte à Internet -> Configuration manuelle du proxy -> laissez tous les champs vides à l'exception de SOCKS Host, qui devrait être localhost sur le port 8080. Réglez No Proxy For sur 192.168.1.0/24 et cliquez sur Apply. Tout ce qui n'est pas sur votre réseau internet local devrait maintenant être envoyé via ce serveur.

Sous Linux, c'est Édition -> Préférences -> Avancé -> Réseau -> Paramètres dans Firefox.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X