Comment utiliser le tunnel SSH inversé pour autoriser les connexions externes au PC

Comment utiliser le tunnel SSH inversé pour autoriser les connexions externes au PC

Si vous avez la chance que votre fournisseur d'accès Internet (FAI) vous fournisse une adresse IP dédiée, vous pouvez configurer un serveur domestique et le rendre disponible sur Internet en ajoutant quelques règles de redirection de port ( transfert ) au routeur. Mais si votre FAI vous oblige à partager cette adresse IP avec vos voisins, la redirection de port ne vous aidera pas. D'autres fournisseurs bloquent simplement les connexions entrantes via des règles de pare-feu.

Les utilisateurs peuvent surmonter toutes ces restrictions à l'aide de serveurs privés virtuels. Le tout fonctionnera avec moins de 512 Mo de RAM, car il lui suffira de rediriger le trafic réseau. Il ne consomme pas beaucoup de RAM et de CPU. Le serveur recevra les connexions entrantes et les redirigera vers l'ordinateur via un « tunnel SSH inversé ». De cette façon, vous pouvez configurer n’importe quel type de serveur domestique, pour un coût mensuel très réduit.

Imaginez que vous créez un serveur NextCloud pour télécharger ou synchroniser des fichiers. Vous protégerez la confidentialité de vos fichiers lorsqu'ils se trouvent sur votre serveur domestique et, si nécessaire, vous pourrez acheter un disque dur de 6 To pour augmenter la capacité de stockage. La facture mensuelle d'électricité est inférieure à 5 $/mois (115 000 VND) pour un serveur privé virtuel. Moins cher que la facture mensuelle pour un serveur de 6 To de capacité.

Remarque : Cette méthode est uniquement utilisée pour rediriger le trafic réseau TCP. TCP est utilisé par le serveur web (port 80/tcp). UDP est utilisé par certains serveurs de jeux (mais pas tous), par exemple Counter Strike (port 27015/UDP). Le tunneling UDP est également possible, mais nécessite quelques astuces.

Permet une connexion externe au PC

Windows 10 dispose désormais d'un client SSH intégré

Plus besoin d'utiliser PuTTY pour initier des connexions SSH. Dans ce didacticiel, nous utiliserons le client SSH intégré pour configurer le tunnel. Lisez l'article : Comment installer OpenSSH sur Windows 10 par LuckyTemplates pour en savoir plus.

Préparer le serveur privé virtuel pour la connexion par tunnel

Créez un serveur privé virtuel avec votre fournisseur préféré. Le plus important est de choisir un emplacement de serveur le plus proche possible pour minimiser la latence du réseau. Essayez de configurer le serveur de manière à pouvoir vous connecter directement au compte root, de préférence avec une clé SSH, car c'est plus sécurisé. Ceci est nécessaire si vous souhaitez que le serveur « écoute » les connexions entrantes sur les ports inférieurs à 1024, également appelés ports privilégiés.

Ouvrez l'invite de commande (ou le terminal si vous utilisez Linux) et connectez-vous au serveur via SSH.

Modifiez les paramètres du serveur OpenSSH :

nano /etc/ssh/sshd_config

Si vous n'êtes pas connecté en tant que root mais en tant qu'utilisateur régulier, vous devrez utiliser cette commande pour pouvoir sauvegarder le fichier :

sudo nano /etc/ssh/sshd_config

Faites défiler vers le bas jusqu'à ce que vous trouviez la variable nommée GatewayPorts. Cette ligne pourrait ressembler à ceci :

#GatewayPorts no

Supprimez # (pour le transformer d'un commentaire en une partie du programme) et remplacez la ligne par :

GatewayPorts yes

Si vous ne trouvez pas cette ligne, faites simplement défiler vers le bas et ajoutez la ligne vous-même :

GatewayPorts yes

Comment utiliser le tunnel SSH inversé pour autoriser les connexions externes au PC

Appuyez sur Ctrl + X , puis appuyez sur y et enfin sur Entrée pour enregistrer le fichier.

Rechargez le démon SSH pour qu'il récupère les nouveaux paramètres.

systemctl reload ssh.service

Quittez la session SSH.

exit

Comment configurer un tunnel SSH inversé

Les paramètres de commande sont les mêmes sous Linux, Windows et même BSD. La syntaxe générale est :

ssh -R remote_port:host:localport your_username@IP-of-server
  • remote_port indique au serveur de rediriger les connexions vers ce port.
  • host indique au serveur l'adresse IP vers laquelle la connexion sera redirigée. 127.0.0.1 sera utilisé ici pour rediriger vers le propre ordinateur de l'utilisateur.
  • localport indique vers quel port les paquets doivent être redirigés. Ici, l'utilisateur doit définir le numéro de port sur lequel l'application installée sur l'ordinateur local « écoute ».

Par exemple, pour transférer toutes les connexions sur le port 80 (vers le serveur) et les envoyer au port 8080 sur l'ordinateur local, la commande serait :

ssh -R 80:127.0.0.1:8080 [email protected]

Cela suppose que vous disposez d'un serveur Web, comme Apache ou Nginx, écoutant localement sur le port 8080. Mais si Apache/Nginx écoute sur le port 80 par défaut, il n'y a aucun problème à utiliser deux fois le même port dans la commande précédente (car ils font référence au port 80 d'un autre serveur).

ssh -R 80:127.0.0.1:80 [email protected]

À ce stade, si quelqu'un saisit l'adresse IP de votre serveur privé virtuel dans la barre d'adresse de son navigateur, sa connexion sera redirigée et gérée par votre ordinateur local.

Comment utiliser le tunnel SSH inversé pour autoriser les connexions externes au PC

Dans l'image ci-dessus, un simple serveur Web pour Chrome a été utilisé et écoute par défaut sur le port 8887. Les utilisateurs peuvent essayer cette configuration eux-mêmes en installant l'application, puis en utilisant la commande, comme indiqué sur l'image.

Il convient de mentionner que pour maintenir le tunnel actif, la session SSH doit rester active. Pour fermer le tunnel, entrez exit dans une fenêtre de terminal ou d'invite de commande.

Comme vous pouvez le constater, il n’est pas difficile de créer un tunnel SSH inversé, mais sécuriser un site Web est différent. Ainsi, si vous choisissez de mettre en œuvre une idée telle qu'un serveur NextCloud local, isolez-le au moins dans une machine virtuelle. De cette façon, si le site Web est piraté, au moins le reste du système d'exploitation ne sera pas endommagé.

Et une autre chose importante à retenir est de toujours sauvegarder ce que vous ne voulez pas risquer de perdre !

J'espère que vous réussirez.


Comment afficher les fichiers cachés et les dossiers cachés sur USB

Comment afficher les fichiers cachés et les dossiers cachés sur USB

Une fois que le virus a attaqué la clé USB, il peut « manger » ou masquer toutes les données de votre clé USB. Alors, comment afficher les fichiers et dossiers cachés sur une clé USB, veuillez vous référer à l'article ci-dessous de LuckyTemplates.

Un moyen sûr de tester les capacités anti-malware de nimporte quel logiciel antivirus Windows

Un moyen sûr de tester les capacités anti-malware de nimporte quel logiciel antivirus Windows

Si vous souhaitez déterminer si un logiciel antivirus est bon ou non, il est préférable de tester sa capacité réelle à lutter contre les logiciels malveillants.

Comment éteindre ou redémarrer un ordinateur Windows 10X

Comment éteindre ou redémarrer un ordinateur Windows 10X

Comment désactiver ou redémarrer Windows 10X est un peu différent de Windows 10.

Fonds décran de Noël mignons, fonds décran de Noël mignons

Fonds décran de Noël mignons, fonds décran de Noël mignons

Si vous souhaitez créer un joli fond d'écran de Noël pour votre appareil au cours de la prochaine saison de Noël, jetez un œil à l'ensemble de jolis fonds d'écran de Noël et de jolis fonds d'écran de Noël pour ordinateurs et téléphones ci-dessous.

Comment installer à distance les applications du Microsoft Store sur les ordinateurs Windows 10

Comment installer à distance les applications du Microsoft Store sur les ordinateurs Windows 10

Microsoft permet aux utilisateurs de parcourir et d'installer à distance des applications Windows 10 depuis leur téléphone ou d'autres appareils sur leur PC.

Comment configurer la fonctionnalité de prédiction de texte multilingue dans Windows 10

Comment configurer la fonctionnalité de prédiction de texte multilingue dans Windows 10

À partir de Windows 10 build 17093, le système d'exploitation prend en charge jusqu'à 3 langues latines pour la fonctionnalité de prédiction de texte multilingue. Il utilise les 3 premières langues installées à partir des paramètres de langue pour faire des prédictions.

6 étapes simples pour installer la redirection de port sur le routeur

6 étapes simples pour installer la redirection de port sur le routeur

La redirection de port est largement utilisée, notamment dans les bureaux, les écoles et les foyers disposant de nombreux ordinateurs connectés à Internet. L'article ci-dessous LuckyTemplates vous montrera comment configurer une redirection de port sur le routeur.

Comment réparer lorsquun site Web spécifique nest pas accessible

Comment réparer lorsquun site Web spécifique nest pas accessible

Avez-vous déjà été dans une situation où vous avez essayé d'accéder à un site Web et celui-ci n'a pas réussi à se charger, alors que tout le monde pouvait toujours y accéder ? Cela peut avoir de nombreuses causes différentes.

Comment résoudre les problèmes de boucle de démarrage sous Windows

Comment résoudre les problèmes de boucle de démarrage sous Windows

Le logo du démarrage semble collé sur un écran noir avec un petit cercle tournant. Il s'agit d'un problème assez courant sous Windows, quelle que soit l'ancienne ou la nouvelle version.

Comment ajouter/supprimer Autoriser les minuteries de réveil des options dalimentation dans Windows 10

Comment ajouter/supprimer Autoriser les minuteries de réveil des options dalimentation dans Windows 10

Le paramètre Autoriser les minuteries de réveil dans Options d'alimentation permet à Windows de sortir automatiquement l'ordinateur du mode veille pour effectuer des tâches planifiées et d'autres programmes.