SSH (Secure Shell)
Parce que Telnet n'est pas ouf

Vous avez peut-être eu besoin ou aurez un jour besoin de vous connecter à un serveur ou une machine distante sans devoir vous y déplacer physiquement.
Vous ne savez peut-être pas comment vous y prendre, ne vous inquiétez pas il existe un outil fait pour vous y aider en toute sécurité( s'il est bien configuré évidemment xD).
SSH ou Secure Shell est le meilleur moyen de vous connecter et d'administrer vos systèmes. Il est utilisé pour récupérer un Shell distant ou pour tunneliser une application.
Il a existé de nombreuses distributions de SSH mais la plus utilisée de nos jours reste OPENSSH qui vient de OPENBSD, pour les systèmes windows nous retrouvons Putty et winsshd.
Nous allons principalement nous focaliser sur OPENSSH dans ce tutoriel
Serveur SSH
Pour installer le serveur ssh sur les systèmes Debian et compagnie.
sudo apt-get update
sudo apt install openssh-server
Une fois le serveur installé, vous pouvez vérifier s'il est lancé, le lancer ou l'arrêter et vous pouvez aussi l'ajouter aux tâches à lancer au démarrage de la machine.
Pour lancer le serveur
sudo systemctl start ssh
Pour vérifier le statut du serveur afin de vérifier qu'il est actif

Pour arrêter le serveur
Configuration:
La configuration du serveur se trouve dans /etc/ssh/sshd_config
.
Il y'a plusieurs paramètres dans ce fichier dont certains qui ne serviront pas. Nous allons survoler assez rapidement ceux qui vous serviront le plus.
Port 22
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
La première ligne permet de fixer le port d'écoute pour les connexions qui par défaut est le 22 pour ssh mais vous pouvez bien le mettre sur un port différent pour des raisons que j'ignore.
Les trois dernières lignes permettent de localiser les clés d'hôtes.
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes
StrictModes
permet de réfuser la connexion si les fichiers n'ont pas les bons droitsPermitRootLogin
permet d'activer ou non la connexion au compte root via ssh. Cette option doit être mise à no car la plus part du temps on configure un compte qui a accès àsudo
ousu
et on n'autorise pas du tout l'accès par le compte root.LogiGraceTime
précise combien de secondes pour maintenir la connexion active sans se connecter avec succès.
Il y'a des options qui vous permette à partir du client ssh d'expprter une fenêtre graphique pour une application. Pour celà il faut activer le X11Forwarding
X11Forwarding yes
X11DisplayOffset 10
Une fois vos modifications enregistrées il faut recharger le serveur
sudo systemctl reload ssh
Maintenant que nous savons faire des configurations basiques du serveur, nous allons apprendre à configurer et se connecter au serveur dans la partie suivante