Activer la rediffusion du port SSH sur Linux

Activer la rediffusion du port SSH sur Linux

La plupart des utilisateurs de Linux connaissent le protocole SSH car il permet la gestion à distance de tout système Linux. Il est également couramment utilisé pour que SFTP puisse télécharger ou télécharger des fichiers. SSH est connu comme un protocole très sécurisé car il crypte le trafic de bout en bout. Mais les tunnels cryptés qu'il crée sont en fait assez polyvalents et peuvent être utilisés pour plus qu'une simple gestion des serveurs à distance ou transfert de fichiers.

Le transfert de port SSH peut être utilisé pour crypter le trafic entre deux systèmes pour à peu près n'importe quel protocole. Ceci est accompli en créant un tunnel sécurisé, puis en achetant le trafic d'un autre protocole à travers ce tunnel. Par principe, il fonctionne de manière très similaire à un VPN.

Dans ce guide, nous passerons en revue les instructions étape par étape pour vous montrer comment utiliser le transfert de port SSH pour créer un tunnel sécurisé pour une autre application. À titre d'exemple, nous allons créer un transfert de port pour le protocole Telnet, qui est généralement évité en raison de la façon dont il transfère les données dans un texte clair. Cela garantira le protocole et le rendra sûr.

Dans ce tutoriel, vous apprendrez:

  • Comment utiliser le transfert de port SSH
  • Comment créer un tunnel SSH persistant
Création d'un tunnel SSH via un transfert de port sur Linux
Exigences logicielles et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version logicielle utilisée
Système Toute distribution Linux
Logiciel OpenSSH, AUTOSSH
Autre Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande.
Conventions # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Comment utiliser le transfert de port SSH



Le transfert de port SSH fonctionne en transférant le trafic à partir d'un port spécifique de votre système local vers un port du système distant. Les deux ports n'ont pas besoin d'être les mêmes. Par exemple, nous transférons le port 4500 sur notre système local au port 23 (Telnet) sur un système distant.

Vous n'avez pas à faire ça comme racine. Étant donné que nous utilisons un port supérieur à 1024, un utilisateur ordinaire est en mesure de créer cette connexion vers l'avant. Gardez à l'esprit qu'un tunnel n'est érigé que lorsque la connexion SSH s'exécute.

$ ssh -l 4500: 127.0.0.1:23 utilisateur @ linuxconfig.org 

Disséquons ce qui se passe dans cette commande.

  • -L - Cette option indique à SSH que nous voulons créer un tunnel via un transfert de port.
  • 4500 - Le port de notre système local que nous enverrons le trafic via.
  • 127.0.0.1 - Ceci est l'adresse de bouclage de notre système local.
  • 23 - Le port distant auquel nous essayons de connecter.
  • utilisateur - Le nom d'utilisateur pour se connecter à SSH sur le serveur distant.
  • linuxconfig.org - Le serveur distant IP ou nom de domaine.

À ce stade, chaque connexion qui utilise le port 4500 sur le localhost sera redirigé vers le port distant 23.

Création du tunnel SSH du port local 4500 au port éloigné 23

Dans la capture d'écran ci-dessus, nous avons réussi à créer un tunnel sur le serveur distant. Comme vous pouvez le voir, cela ressemble à une connexion SSH typique. Mais maintenant, sur notre système local, nous pouvons accéder au service Telnet du système distant en acheminant le trafic via le port 4500.

$ telnet 127.0.0.1 4500 


Nous ouvrirons un nouveau terminal et l'essayerons sur notre système de test, tout en laissant l'autre terminal ouvert afin qu'il maintient notre tunnel SSH.

Utilisation de Telnet pour se connecter à un serveur distant et acheminer le trafic via SSH pour la sécurité

Comme vous pouvez le voir, nous avons maintenant une session Telnet ouverte sur le serveur distant, mais c'est une connexion sécurisée car elle est envoyée via le tunnel SSH existant que nous avons établi dans l'autre terminal.

C'est tout ce qu'on peut en dire. Vous pouvez utiliser des tunnels SSH pour tout type de trafic. La chose à retenir est que vous devez pointer votre application vers votre adresse locale (127.0.0.1) et le numéro de port que vous configurez pour le tunnel SSH.

Comment créer des tunnels SSH persistants

Vous avez peut-être remarqué que pour les tunnels SSH à long terme, il est plutôt gênant qu'il s'appuie sur notre connexion SSH ouverte. S'il y a une latence temporaire ou si le terminal SSH atteint son délai d'attente, le tunnel est abattu avec la session SSH.

Vous pouvez installer le autossh Utilité avec le gestionnaire de packages de votre système si vous souhaitez créer un tunnel qui se remet automatiquement lorsqu'il baisse. Vous devrez avoir des touches RSA configurées pour SSH sans mot de passe pour que cette méthode fonctionne.

La syntaxe pour construire un tunnel persistant est fondamentalement identique à la méthode SSH normale.

$ Autossh -L 4500: 127.0.0.1:23 utilisateur @ linuxconfig.org 

Réflexions de clôture

Dans ce guide, nous avons vu comment utiliser le transfert de port SSH sur Linux. Cela permet à un utilisateur de créer un tunnel SSH sécurisé qui peut être utilisé par d'autres applications et protocoles pour les connexions cryptées aux serveurs distants. À titre d'exemple, nous avons vu comment le protocole Telnet pourrait être sécurisé par le biais de la transmission SSH. Nous avons également appris à garder les tunnels SSH persistants en utilisant l'utilitaire Autossh.

Tutoriels Linux connexes:

  • Comment configurer le serveur et le client FTP / SFTP sur Almalinux
  • Comment configurer le serveur SFTP sur Ubuntu 22.04 Jammy Jellyfish…
  • Choses à installer sur Ubuntu 20.04
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Fichiers de configuration Linux: 30 premiers
  • Configuration du serveur FTP sur Linux
  • Choses à installer sur Ubuntu 22.04
  • Téléchargement Linux
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?