Secure Shell (SSH) a plusieurs astuces vraiment intéressantes dans son sac, chacune offrant une fonctionnalité pratique (enveloppée dans une couverture de sécurité réconfortante) pour vous faciliter la vie.
La semaine dernière, nous avons discuté de l’authentification par clé avec SSH ; cette semaine nous parlerons de la redirection de port, qui peut être utilisée pour :
- Accédez à un serveur auquel vous n’auriez peut-être pas accès autrement.
- Accédez à une machine distante avec un peu plus de sécurité.
- Accordez un tunnel temporaire et chiffré depuis votre ordinateur local vers un ordinateur distant.
Il existe trois types différents de redirection de port SSH. Ils sont locale (les connexions d’un client sont transférées, via SSH, vers un hôte distant), télécommande (les connexions d’un serveur distant sont transférées, via SSH, vers une autre machine), et dynamique (les connexions des différentes applications sont redirigées, via SSH, vers plusieurs serveurs).
Il existe de nombreux exemples de redirection de port, dont certains peuvent s’avérer assez compliqués. Pour cette raison, nous allons traiter ici uniquement des deux premiers types de redirection de port (locale et distante). Ce sont également les types de redirection de port SSH que vous utiliserez le plus.
La redirection de port SSH est intégrée à SSH par défaut, donc tant que SSH est installé, vous devriez disposer de tout ce dont vous avez besoin pour utiliser cette fonctionnalité.
Cela dit, laissez-moi vous montrer comment fonctionne la redirection de port SSH.
Installer le serveur OpenSSH
Votre distribution Linux a probablement déjà installé SSH. Cependant, pour la redirection de port, vous souhaiterez également que le serveur SSH soit ajouté. Pour cela, vous pouvez vous connecter à votre machine Linux et l’installer sur une distribution basée sur Ubuntu comme ceci :
sudo apt-get install openssh-server -y
sudo apt-get install openssh-server -y
Sur une distribution basée sur RHEL, cette commande serait :
sudo dnf install openssh-server -y
sudo dnf install openssh-server -y
Une fois le serveur installé, démarrez-le et activez-le sur une distribution basée sur Ubuntu avec la commande :
sudo systemctl activer –now ssh
sudo systemctl activer –now ssh
Sur une distribution basée sur RHEL, la commande start/enable est :
sudo systemctl activer –now sshd
sudo systemctl activer –now sshd
Redirection de port local SSH
Le premier type de redirection de port que nous traiterons est local. Disons que vous développez un nouveau site et que vous souhaitez pouvoir y accéder via une connexion cryptée. Ce nouveau site peut être sur votre réseau local ou sur un serveur distant. Quoi qu’il en soit, vous pouvez vous y connecter à l’aide du serveur SSH distant depuis un port local vers un port distant.
Disons que vous souhaitez utiliser le port local 8080 et transférer une adresse IP de connexion 192.168.1.11 au port 80, via SSH. Pour ce faire, la commande serait :
ssh -L 8080:192.168.1.11:80 hôte local
ssh -L 8080:192.168.1.11:80 hôte local
Vous serez invité à saisir votre mot de passe d’utilisateur SSH local, puis vous serez renvoyé à l’invite de commande. Pour vérifier que le tunnel a fonctionné, ouvrez un navigateur Web et pointez-le vers :
Le site distant (à 192.168.1.11) devrait apparaître dans le navigateur Web et est tunnelisé via le cryptage SSH.
Vous pouvez continuer à utiliser le tunnel crypté tant que vous restez « connecté » depuis la fenêtre du terminal. Pour fermer le tunnel chiffré, retournez à la fenêtre du terminal et tapez :
Redirection de port distant SSH
Vous trouverez probablement ce type de redirection de port plus utile car il peut vous permettre de donner à d’autres personnes l’accès à une machine distante, via un tunnel crypté. Supposons, par exemple, que vous ayez quelqu’un sur votre réseau local qui a besoin d’un accès VNC à un serveur avec une interface graphique et que vous souhaitiez vous assurer que la connexion est cryptée à des fins de sécurité. Bien entendu, cela nécessiterait que VNC soit correctement configuré sur le serveur et qu’un visualiseur VNC soit installé sur une machine client.
Pour cet exemple, nous nous en tiendrons à l’adresse IP 192.168.1.11 de la machine distante et la machine client est à 192.168.1.21. Vous devez également disposer d’un accès SSH à la machine client.
Cependant, avant de faire cela, vous devez vous occuper d’une simple configuration SSH. Ouvrez le fichier de configuration du serveur SSH avec la commande :
sudo nano /etc/ssh/sshd_config
sudo nano /etc/ssh/sshd_config
Ajoutez la ligne suivante en bas du fichier :
Enregistrez et fermez le fichier. Redémarrez SSH avec :
sudo systemctl redémarrer ssh
sudo systemctl redémarrer ssh
ou
sudo systemctl redémarrer sshd
sudo systemctl redémarrer sshd
Maintenant, créons le tunnel distant. Pour créer le tunnel pour VNC (qui s’exécute sur le port 5900), exécutez la commande suivante sur le serveur distant (qui, pour notre exemple, se trouve à 192.168.1.11) :
ssh -R 5900:localhost:5900 NOM D’[email protected]
ssh -R 5900:localhost:5900 NOM D’[email protected]
Où USERNAME est un nom d’utilisateur sur la machine client à laquelle vous avez accès. Une fois que vous authentifiez cet utilisateur, le tunnel distant SSH est opérationnel. L’autre utilisateur pourrait alors se connecter au serveur, à l’aide d’un client VNC, avec localhost et le port 5900.
N’oubliez pas que même lorsque l’utilisateur distant déconnecte sa connexion VNC, le tunnel est toujours opérationnel. Pour fermer le tunnel, retournez sur le terminal du serveur distant et tapez exit.
Si vous cherchez à créer des tunnels chiffrés pour divers cas d’utilisation, ne cherchez pas plus loin que SSH. Une fois que vous aurez maîtrisé la création de ces tunnels, vous constaterez qu’ils peuvent être très utiles dans plusieurs types de scénarios différents.
YOUTUBE.COM/THENEWSTACK
La technologie évolue vite, ne manquez aucun épisode. Abonnez-vous à notre chaîne YouTube pour diffuser tous nos podcasts, interviews, démos et bien plus encore.
S’ABONNER
Groupe créé avec Sketch.
Jack Wallen est ce qui arrive lorsqu’un esprit de la génération Xer se fusionne avec le snark d’aujourd’hui. Jack est un chercheur de vérité et un écrivain de mots avec un crayon mécanique quantique et un rythme disjoint de son et d’âme. Bien qu’il réside…
Lire la suite de Jack Wallen
2024-01-27 17:06:58
1706367262
#Linux #créez #des #tunnels #cryptés #avec #redirection #port #SSH