Configuration SSH

Règles de sécurité

Le risque est qu’un intrus essaie de se connecter à votre ordinateur en utilisant une session ssh. Cela suppose d’avoir deviné votre mot de passe utilisateur (utilisez des mots de passe robuste, y compris pour l’utilisateur “distant” que vous aurez à créer).

Les fournisseurs d’accès internet mettent parfois en place un NAT ou un pare-feu au niveau de la box, ce qui fait que cela limite l’intrus à quelque chose qui se trouve déjà sur votre réseau local. Ce n’est pourtant pas à exclure, par exemple si votre téléphone, ou l’ordinateur de votre petite soeur est infecté. Retenez qu’ouvrir un port ssh augmente votre “surface d’attaque”, et que même si le risque est limité il n’est pas nul.

Je vous recommande donc de couper vos connections réseaux (wifi de la box ou de votre telephone, éventuellement filaire) lorsque vous ouvrez le port SSH sur votre machine, et de refermer le port SSH (ou éteindre le serveur SSH) avant de réouvrir les connections wifi ou filaire.

Configuration sous MAC OS

Sous Mac OS le client et le serveur SSH sont préinstallés, mais le serveur SSH est désactivé par défaut.

Testez la commande

ssh localhost

dans un terminal. Vous devriez avoir à taper votre mot de passe et cela devrait lancer un shell (faites exit pour revenir au shell initial).

Créez ensuite un utilisateur que vous appelerez par exemple “distant”, vérifiez que le port SSH est ouvert pour lui aussi, et depuis votre compte perso, dans un terminal, tapez la commande

ssh distant@localhost

Vous devriez avoir un shell qui démarre dans le compte de “distant”.

Si tout fonctionne, votre config est terminéé.

Configuration sous WSL et Linux (Virtualbox ou pas)

Sous le WSL, il faut désinstaller et réinstaller le serveur ssh. Tapez depuis le shell Ubuntu

sudo apt remove openssh-server
sudo apt install openssh-server

Créez un utilisateur

sudo adduser distant

Editez le fichier sshd_config: avec vi sudo vi /etc/ssh/sshd_config - Mettez yes à la place de no en face de PasswordAuthentication - Ajoutez une ligne AllowUsers monlogin distantmonlogin est remplacé par votre login Linux (commande whoami). - sauvez et quittez

Eteignez puis redémarez le serveur ssh

sudo service ssh stop
sudo service ssh start

Tout cela devrait être suffisant pour que les deux commandes ci-dessous fonctionnent:

ssh localhost
ssh distant@localhost

Si ce n’est pas le cas, c’est peut-être que le pare-feu ubuntu ou windows fait des siennes:

Réseau virtuel

Une solution un peu compliquée, mais au moins sans risque, pour avoir un transfer entre deux machines distinctes: créer un réseau entre deux VM (si vous utilisez virtualbox).