Accueil / Raspberry Pi / Connexion SSH pour accéder à un Raspberry Pi à distance

Connexion SSH pour accéder à un Raspberry Pi à distance

Avec une connexion sécurisée SSH, il est très facile de se connecter en ligne de commande à un Raspberry Pi depuis un autre ordinateur et même depuis un smartphone ou une tablette. En activant la connexion sécurisée SSH, vous pouvez accéder depuis n’importe quel ordinateur de votre réseau et laisser votre Pi tranquillement dans sa boite. Disposer d’une connexion SSH est vraiment très pratique, pour ne pas dire obligatoire si vous souhaitez programmer avec Node-RED (ajouter de nouveaux paquets sans avoir à allumer l’écran…), faire des opérations de maintenance d’un serveur domotique, mettre à jour la distribution linux… tranquillement depuis votre canapé.

Activer la connexion SSH sur Raspbian

Le plus simple pour activer la connexion SSH sur Raspbian est d’ouvrir l’utilitaire de Configuration du Raspberry Pi qui se trouve dans Menu -> Préférences

Dans l’onglet interfaces, activez SSH

raspbian raspberry pi activer connexion ssh
Redémarrez le Pi pour que la modification soit prise en compte.

Une fois redémarré, ouvrez un Terminal et exécutez la commande ifconfig. Repérez l’adresse ip de votre Pi en fonction de la connexion que vous utilisez. Si vous êtes en WiFi, elle se trouve à la seconde ligne à coté de wlan0.

raspberry pi ifconfig domoticz adresse ip serveur
Trouver l’adresse ip sous linux avec la commande ifconfig.

Accéder en SSH depuis Mac OS X ou Linux

Sur Mac OS X (ou Linux), ouvrez un Terminal et exécutez

ssh pi@ADRESSE_IP_DE_VOTRE_PI

Si vous n’avez pas changé le mot de passe par défaut de l’utilisateur pi, saisissez raspberry.

Une autre solution est d’utiliser le nom du Raspberry qui est automatiquement publié sur le réseau local (mDNS name) au démarrage par Raspbian. Par défaut le nom est raspberrypi.

La commande ssh sera alors

ssh pi@raspberrypi.local

Accéder en SSH depuis Windows

Pour accéder à votre Pi depuis Windows, le plus simple et d’utiliser Putty qui est open-source et gratuit. Il est disponible à cette adresse. C’est un petit programme très simple qui ne nécessite aucun installation. Par défaut la connexion SSH utilise le port 22.

putty client ssh windows

Impossible de se connecter

Changer de distribution est aussi simple que de changer de carte SD et de redémarrer le Raspberry Pi. Oui mais voilà, le Pi va probablement garder la même adresse IP. Dans ce cas, la connexion SSH va être refusée car la clé d’authentification est différente (elle est générée à la première connexion). Aucun problème, il suffit d’aller dans le répertoire d’installation de SSH et de supprimer le fichier known_hosts

Sur Mac OS X ou Linux, il se trouve dans le répertoire ~/.ssh

cd ~/.ssh

Puis pour le supprimer, exécutez la commande suivante dans le Terminal. Sans le sudo, la commande sera refusée.

sudo rm known_hosts

Sur Windows, c’est un peu plus compliqué. La clé est stockée différemment en fonction du logiciel employé. Putty par exemple stocke la clé dans la base de registre sous HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys. Pour la supprimer, lancez regedit puis faites une chercher pour la localiser puis un clic droit (effacer) pour la supprimer.

Source : http://help.netmail.com/display/KB/Clearing+Outdated+PuTTy+RSA+Keys+in+Window+Environments

Depuis un iPhone ou un iPad

Il existe des dizaines de clients pour iPhone et iPad. iTerminal est simple et fait le très bien le travail. Il est financé par des publicités qui ne sont pas trop intrusives (juste en bandeau en bas de l’écran). Il conserve la liste des derniers serveurs sur lequel vous vous êtes connectés. Un tap sur une ligne et la connexion se fait automatiquement, c’est plutôt agréable à utiliser.

iterminal ios client ssh iphone ipad

Depuis un appareil Android

Tout comme sur iOS, ce ne sont pas les clients qui manquent sur Android. JuiceSSH (lien vers le Play Store) semble être un très bon logiciel d’après le test réalisé par it-connect.fr

Mises à jour

  • 20/09/2012 : se connecter en ssh à l’aide du nom mDNS publié par Raspbian