Ceci est possible de deux manières avec SSH.
Tunnel Tout avec un proxy SOCKS
Connectez-vous à la machine distante à l'aide de la commande suivante:
ssh -D 8080 remote-host
Maintenant, allez dans les paramètres de proxy de votre navigateur et configurez-le pour utiliser un proxy SOCKS avec le nom d'hôte 127.0.0.1
et le port 8080
(ou le port que vous avez transmis à l' -D
option). Maintenant, toutes les pages que vous chargez dans votre navigateur Web seront tunnellisées via la connexion SSH. Vous devriez maintenant pouvoir accéder à la page Web privée de la même manière que vous le feriez depuis l'hôte distant.
Une fois que vous avez terminé, réglez les paramètres de proxy de votre navigateur sur normaux.
Un inconvénient de cette méthode est que tout le reste du trafic dans le navigateur Web passe également par la connexion SSH. En revanche, vous pouvez accéder aux serveurs distants avec leurs noms d'hôte réels et accéder facilement à plusieurs sites privés.
Tunnel un seul port.
La méthode alternative consiste à utiliser SSH pour transférer un seul port:
ssh -L 8080:server-hostname:80 remote-host
Maintenant, si vous pointez votre navigateur Web sur http://localhost:8080/
, vous devriez voir le contenu de http://server-hostname/
ce qu'il apparaîtrait de l'hôte distant.
L'avantage de cette méthode est qu'elle laisse le reste du trafic du navigateur seul. L'inconvénient est que certains liens peuvent ne pas fonctionner si le site distant utilise des références URL absolues. Si le site utilise principalement des références d'URL relatives, cette méthode devrait suffire.
Pour ces deux solutions, le port n'a rien de spécial 8080
. Vous pouvez utiliser n'importe quel numéro de port local libre de votre choix, à condition de ne pas oublier d'utiliser le même numéro dans l' ssh
invocation et dans le navigateur Web.