Un client SSH se connecte à un serveur Secure Shell, ce qui vous permet d'exécuter des commandes de terminal comme si vous étiez assis devant un autre ordinateur. Mais un client SSH vous permet également de «tunneler» un port entre votre système local et un serveur SSH distant.
Il existe trois types différents de tunnel SSH, et ils sont tous utilisés à des fins différentes. Chacun implique l'utilisation d'un serveur SSH pour rediriger le trafic d'un port réseau à un autre. Le trafic est envoyé via la connexion SSH cryptée, donc il ne peut pas être surveillé ou modifié en transit.
Vous pouvez le faire avec la commandessh
incluse sur Linux, macOS, et d'autres UNIX systèmes d'exploitation. Sur Windows, qui n'inclut pas de commande ssh intégrée, nous recommandons l'outil gratuit PuTTY pour se connecter aux serveurs SSH.
La redirection de port local vous permet d'accéder aux ressources réseau locales qui ne sont pas exposées à Internet. Par exemple, disons que vous voulez accéder à un serveur de base de données à votre bureau depuis votre domicile. Pour des raisons de sécurité, ce serveur de base de données est uniquement configuré pour accepter les connexions du réseau local. Mais si vous avez accès à un serveur SSH au bureau et que le serveur SSH autorise les connexions depuis l'extérieur du réseau, vous pouvez vous connecter à ce serveur SSH depuis votre domicile et accéder au serveur de base de données comme si vous étiez au bureau. C'est souvent le cas, car il est plus facile de sécuriser un seul serveur SSH contre des attaques que de sécuriser différentes ressources réseau.
Pour cela, vous établissez une connexion SSH avec le serveur SSH et dites au client de transférer le trafic à partir d'un port spécifique depuis votre PC local, par exemple le port 1234, jusqu'à l'adresse du serveur de la base de données et son port sur le réseau de bureau. Ainsi, lorsque vous tentez d'accéder au serveur de base de données sur le port 1234 de votre PC actuel, "localhost", ce trafic est automatiquement "tunnellisé" sur la connexion SSH et envoyé au serveur de base de données. Le serveur SSH se trouve au milieu, transmettant le trafic d'avant en arrière. Vous pouvez utiliser une ligne de commande ou un outil graphique pour accéder au serveur de base de données comme s'il était en cours d'exécution sur votre ordinateur local
Pour utiliser le transfert local, connectez-vous normalement au serveur SSH, mais fournissez également-L
argument. La syntaxe est la suivante:
ssh -L local_port: remote_address: remote_port [email protected]
Par exemple, disons que le serveur de base de données de votre bureau est situé au 192.168.1.111 sur le réseau de bureau. Vous avez accès au serveur SSH du bureau àssh.youroffice.com
et votre compte utilisateur sur le serveur SSH estbob
. Dans ce cas, votre commande ressemblerait à ceci:
ssh -L 8888: 192.168.1.111: 1234 [email protected]
Après avoir exécuté cette commande, vous seriez en mesure d'accéder au serveur de base de données à port 8888 à localhost. Ainsi, si le serveur de base de données offre un accès Web, vous pouvez brancher // localhost: 8888 dans votre navigateur Web pour y accéder. Si vous avez un outil de ligne de commande qui a besoin de l'adresse réseau d'une base de données, pointez-le sur localhost: 8888. Tout le trafic envoyé au port 8888 sur votre PC sera tunnelisé à 192.168.1.111:1234 sur votre réseau de bureau.
C'est un peu plus déroutant si vous voulez vous connecter à une application serveur fonctionnant sur le même système que le serveur SSH lui-même . Par exemple, disons que vous avez un serveur SSH fonctionnant sur le port 22 de votre ordinateur de bureau, mais que vous avez également un serveur de base de données fonctionnant sur le port 1234 sur le même système à la même adresse. Vous voulez accéder au serveur de base de données depuis chez vous, mais le système n'accepte que les connexions SSH sur le port 22 et son pare-feu n'autorise aucune autre connexion externe.
Dans ce cas, vous pouvez exécuter une commande comme celle-ci:
ssh -L 8888: localhost: 1234 [email protected]
Lorsque vous tentez d'accéder au serveur de base de données sur le port 8888 de votre PC actuel, le trafic est envoyé via la connexion SSH. Lorsqu'il arrive sur le système exécutant le serveur SSH, le serveur SSH l'envoie au port 1234 sur "localhost", qui est le même PC exécutant le serveur SSH lui-même. Ainsi, le "localhost" dans la commande ci-dessus signifie "localhost" du point de vue du serveur distant.
Pour ce faire, dans l'application PuTTY sous Windows, sélectionnez Connexion> SSH> Tunnels. Sélectionnez l'option "Local". Pour "Port source", entrez le port local. Pour "Destination", entrez l'adresse de destination et le port sous la forme remote_address: remote_port.
Par exemple, si vous souhaitez configurer le même tunnel SSH que ci-dessus, entrez8888
comme port source etlocalhost: 1234
comme destination. Cliquez ensuite sur "Ajouter", puis sur "Ouvrir" pour ouvrir la connexion SSH. Vous devrez également entrer l'adresse et le port du serveur SSH lui-même sur l'écran principal "Session" avant de vous connecter, bien sûr
"Redirection de port distant "Est le contraire de l'expédition locale, et n'est pas utilisé aussi fréquemment. Il vous permet de créer une ressource sur votre PC local disponible sur le serveur SSH. Par exemple, supposons que vous utilisez un serveur Web sur le PC local devant lequel vous vous trouvez. Mais votre PC est derrière un pare-feu qui n'autorise pas le trafic entrant vers le logiciel serveur.
En supposant que vous puissiez accéder à un serveur SSH distant, vous pouvez vous connecter à ce serveur SSH et utiliser le transfert de port distant. Votre client SSH demandera au serveur de transférer un port spécifique, par exemple le port 1234, sur le serveur SSH vers une adresse et un port spécifiques sur votre PC ou réseau local actuel. Quand quelqu'un accède au port 1234 sur le serveur SSH, ce trafic sera automatiquement "canalisé" sur la connexion SSH. Toute personne ayant accès au serveur SSH pourra accéder au serveur Web fonctionnant sur votre PC. C'est effectivement un moyen de passer au travers des pare-feu.
Pour utiliser le transfert distant, utilisez la commandessh
avec l'argument-R
. La syntaxe est en grande partie la même que pour le transfert local:
ssh -R remote_port: local_address: local_port [email protected]
Supposons que vous souhaitiez créer une application serveur à l'écoute du port 1234 sur votre ordinateur local disponible sur le port 8888 sur le serveur distant SSH. L'adresse du serveur SSH est Pour cela dans PuTTY sous Windows, sélectionnez Connexion> SSH> Tunnels. Sélectionnez l'option "Remote". Pour "Port source", entrez le port distant. Pour "Destination", entrez l'adresse de destination et le port au format local_address: local_port. Par exemple, si vous souhaitez configurer l'exemple ci-dessus, vous devez entrer 8888 Par défaut, le serveur SSH distant n'écoute que les connexions du même hôte. En d'autres termes, seuls les utilisateurs du même système que le serveur SSH pourront se connecter. C'est pour des raisons de sécurité. Vous devrez activer l'option "GatewayPorts" dans sshd_config sur le serveur SSH distant si vous souhaitez remplacer ce comportement Redirection de port dynamique: utilisez votre serveur SSH comme proxy Différence entre un VPN et un proxy? Il y a aussi le "transfert de port dynamique", qui fonctionne de la même manière qu'un proxy ou un VPN. Le client SSH créera un proxy SOCKS que vous pouvez configurer pour utiliser les applications. Tout le trafic envoyé via le proxy sera envoyé via le serveur SSH. Ceci est similaire au transfert local: il achemine le trafic local vers un port spécifique de votre PC et l'envoie via une connexion SSH à un emplacement distant. CONNEXION: Pourquoi l'utilisation d'un réseau Wi-Fi public peut être dangereuse, même lors de l'accès à des sites Web cryptés Supposons, par exemple, que vous utilisez un réseau Wi-Fi public. Vous voulez naviguer en toute sécurité sans être snoopé. Si vous avez accès à un serveur SSH à la maison, vous pouvez vous y connecter et utiliser le transfert de port dynamique. Le client SSH va créer un proxy SOCKS sur votre PC. Tout le trafic envoyé à ce proxy sera envoyé via la connexion au serveur SSH. Personne qui surveille le réseau Wi-Fi public ne sera en mesure de surveiller votre navigation ou de censurer les sites Web auxquels vous pouvez accéder. Du point de vue de tous les sites que vous visitez, ce sera comme si vous étiez assis devant votre PC à la maison. Cela signifie également que vous pourriez utiliser cette astuce pour accéder à des sites Web américains uniquement en dehors des États-Unis, en supposant que vous ayez accès à un serveur SSH aux États-Unis, bien sûr. Comme autre exemple, vous pouvez accéder à un média application serveur que vous avez sur votre réseau domestique. Pour des raisons de sécurité, vous ne pouvez avoir qu'un serveur SSH exposé à Internet. Vous n'autorisez pas les connexions entrantes depuis Internet vers votre application de serveur multimédia. Vous pouvez configurer un transfert de port dynamique, configurer un navigateur Web pour utiliser le proxy SOCKS, puis accéder aux serveurs de votre réseau domestique via le navigateur Web comme si vous étiez assis devant votre système SSH à la maison. Par exemple, si votre serveur multimédia est situé sur le port 192.168.1.123 de votre réseau domestique, vous pouvez brancher l'adresse 192.168.1.123 -D et que votre nom d'utilisateur sur le serveur SSH est Par exemple, si vous souhaitez créer un proxy SOCKS sur le port 8888, vous devez entrer 8888 comme port source. Cliquez ensuite sur "Ajouter", puis sur "Ouvrir" pour ouvrir la connexion SSH. Vous devrez également entrer l'adresse et le port du serveur SSH lui-même sur l'écran principal "Session" avant de vous connecter, bien sûr. Comment configurer un serveur proxy dans Firefox Par exemple, vous pouvez configurer Firefox pour utiliser le proxy SOCKS . Ceci est particulièrement utile car Firefox peut avoir ses propres paramètres de proxy et n'a pas besoin d'utiliser les paramètres de proxy à l'échelle du système. Firefox enverra son trafic via le tunnel SSH, alors que d'autres applications utiliseront normalement votre connexion Internet. Dans Firefox, sélectionnez "Configuration manuelle du proxy", entrez "127.0.0.1" dans la boîte hôte SOCKS, et entrez le port dynamique dans la boîte "Port". Laissez les champs Proxy HTTP, Proxy SSL et Proxy FTP vides. Le tunnel restera actif et ouvert tant que la connexion de la session SSH sera ouverte. Lorsque vous terminez votre session SSH et que vous vous déconnectez d'un serveur, le tunnel sera également fermé. Reconnectez-vous simplement avec la commande appropriée (ou les options appropriées dans PuTTY) pour rouvrir le tunnel.ssh.youroffice.com
et votre nom d'utilisateur sur le serveur SSH est bob . Vous devez exécuter la commande suivante: Quelqu'un pourrait alors se connecter au serveur SSH sur le port 8888 et cette connexion serait transférée à l'application serveur s'exécutant au port 1234 sur le PC local à partir duquel vous avez établi la connexion.
comme port source et
localhost: 1234comme destination. Cliquez ensuite sur "Ajouter", puis sur "Ouvrir" pour ouvrir la connexion SSH. Vous devrez également entrer l'adresse et le port du serveur SSH lui-même sur l'écran principal "Session" avant de vous connecter, bien sûr.
Les gens pourraient alors se connecter au port 8888 sur le serveur SSH et leur trafic serait acheminé vers le port 1234 sur votre système local.ASSOCIÉ:
dans n'importe quelle application à l'aide du proxy SOCKS et accéder au serveur multimédia comme si vous étiez sur votre réseau domestique.
Pour utiliser le transfert dynamique, exécutez la commande ssh avec l'argument, comme suit:
ssh.yourhome.com
bob
. Vous souhaitez utiliser le transfert dynamique pour ouvrir un proxy SOCKS sur le port 8888 sur le PC actuel. Vous devez exécuter la commande suivante:ssh -D 8888 [email protected]
Vous pouvez ensuite configurer un navigateur Web ou une autre application pour utiliser votre adresse IP locale (127.0.01) et le port 8888. Tout le trafic de cette application est redirigé via le tunnel.Pour cela dans PuTTY sous Windows, sélectionnez Connexion> SSH> Tunnels. Sélectionnez l'option "Dynamique". Pour "Port source", entrez le port local.
Vous pouvez ensuite configurer une application pour accéder au proxy SOCKS sur votre PC local (c'est-à-dire Adresse IP 127.0.0.1, pointant vers votre PC local) et spécifiez le port correct
RELATED:
Comment améliorer la réception de votre antenne HDTV
Si vous avez de la chance, vous pouvez placer votre antenne TV où vous le souhaitez et obtenir gratuitement des chaînes HD d'une qualité exceptionnelle. Cependant, la plupart du temps vous devez passer par un peu d'essai et d'erreur pour que tout fonctionne correctement. CONNEXES: Comment obtenir des chaînes TV HD gratuitement (sans payer pour le câble) Il y a Beaucoup de facteurs affectent le signal d'une antenne TV, donc si vous avez l'impression que votre téléviseur ne cesse de clignoter, vous devrez probablement faire quelques ajustements.
Comment bloquer quelqu'un sur Facebook
Facebook est le réseau social le plus populaire au monde, et avec cela il y a beaucoup de problèmes. Non seulement vous devez vous occuper de tous les trolls réguliers que vous trouvez en ligne, mais les exes, les harceleurs et les faux profils fous qui cherchent à vous convaincre sont tous des dispositifs permanents.