C'est une pratique courante chez les fournisseurs de services Internet de bloquer la majorité, sinon tous les ports entrants pour leurs abonnés à domicile - ce qui rend impossible la connexion à distance à votre ordinateur à domicile via HTTP, SSH, FTP, etc.
Dans ce didacticiel, nous expliquerons comment contourner ces restrictions à l'aide d'une technique appelée Rerverse SSH Tunneling
.
Remarque: ce didacticiel suppose que vous utilisez Ubuntu. Les étapes devraient cependant fonctionner pour d'autres distributions Linux.
Conditions préalables:
- Une instance de serveur Ubuntu.
- Un client SSH sur votre machine locale.
Étape 1: configuration du démon SSH sur votre serveur:
Par défaut, le démon SSH écoute uniquement 127.0.0.1
, nous ne pourrons donc pas accéder à nos ports redirigés de l'extérieur. Pour le faire écouter sur l'interface connectée à Internet, nous devons activer l' GatewayPorts
option dans la configuration du serveur SSH.
Ouvrez en /etc/ssh/sshd_config
utilisant votre éditeur de texte préféré.
nano /etc/ssh/sshd_config
Ajoutez ensuite GatewayPorts yes
en bas du fichier.
Après avoir enregistré le fichier, redémarrez le démon SSH:
service ssh restart
Étape 2: Tunnellisation:
Si votre ordinateur personnel fonctionne sous Linux, vous devrez utiliser la ssh
commande comme suit:
ssh -R [Port to forward to on your VPS]:localhost:[Port to forward on your local machine] [VPS IP]
Ou si vous avez installé Microsoft Windows sur votre machine, vous devez installer plink et vous connecter comme indiqué ci-dessous:
plink -R [Port to forward to on your VPS]:localhost:[Port to forward on your local machine] [VPS IP]
Dans cet exemple, nous transférons le port 19132
qui est ouvert sur votre machine à domicile pour le port 80
sur votre serveur distant (en supposant que l'adresse IP de votre serveur est 192.168.0.1).
ssh -R 80:localhost:19132 192.168.0.1
Cela vous permettra d'accéder à votre machine à domicile à distance en vous connectant à 192.168.0.1:80
.
Ceci conclut notre tutoriel. Merci pour la lecture.