SSH : accès à un PC depuis un autre PC (exemple du Raspberry Pi)

Il s'agit d'accéder via SSH à un PC ou un Raspberry Pi sur le réseau local ou sur internet.

Sous Windows, voir la page Putty
Nous traitons ici le cas de Linux.

Pré-requis

disposer d'une connexion à Internet configurée et activée.connaître l'adresse IP de l'ordinateur à atteindre (voir la page Zenmap : Scan d'IP)Un serveur SSH doit tourner sur l'ordinateur à atteindre

Installation

SSH est déjà installé.

Configuration

Connexion SSH automatique sans mot de passe

Nous allons établir une authentification SSH avec clés publique/privée entre le serveur et un PC (ici, un Raspberry Pi).

Sur le PC qui demande la connexion (le client),créez une clé privée et une clé publique :

...@...:~ $ ssh-keygen
...
Enter file in which to save the key (/home/<USER>/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
...
The key's randomart image is:
+---[RSA 3072]----+
| oo. |
|+oo. |
|Xoo. |
|*=.o . . |
|. +.+ . S . |
| o o+o o .|
|. .o.o= . . = |
|. +. =o... . E. =|
|.oo+o.oo .. o=+.|
+----[SHA256]-----+

Répondez Entrée à chaque fois pour ne pas avoir de mot de passe et accepter les noms de fichierCela génère les deux clés dans le répertoire ~/.ssh.Envoyez la clé publique ainsi générée au PC sur lequel vous voulez vous connecter (ici, un Raspberry Pi) :

...@...:~ $ ssh-copy-id pi@framboise4.parc
...
Are you sure you want to continue connecting (yes/no)? yes
...
pi@framboise4.parc's password:
Number of key(s) added: 2
Now try logging into the machine, with: "ssh 'pi@framboise4.parc'"
and check to make sure that only the key(s) you wanted were added.

Désormais, l'accès ssh au PC (ici un Raspberry Pi) ne demandera plus de mot de passe.

...@...:~ $ root@server
Agent admitted failure to sign using the key.
root@server's password:

il suffit de se déconnecter de la machine distante et de lancer :

...@...:~ $ ssh-add

Les prochaines connexions devraient ne plus donner d'erreur...

On peut aussi utiliser putty

Utilisation

Sous Linux :

...@...:~$ ssh <USER>@IP_DU_SERVEUR

avec l'adresse IP du PC à contacter (éventuellement repérée par Zenmap (cf Zenmap : Scan d'IP) et le nom du USER pour le login.

Supposons que vous soyez connecté via SSH à un Raspberry Pi avec l'utilisateur piSi vous lancez une application graphique avec sudo (par exemple sudo geany), l'erreur suivante se produira:

pi@framboise:~ $ sudo geany
X11 connection rejected because of wrong authentication.
Unable to init server: Impossible de se connecter : Connexion refusée
Geany: cannot open display

Solution

avant le sudo geany, exécutez :

pi@framboise:~ $ sudo xauth merge ~/.Xauthority
pi@framboise:~ $ sudo geany

Désinstallation

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.

Voir aussi

(fr) Connexion SSH sur le R-Pi : http://shadowblog.fr/article5/connexion-en-ssh-sur-le-raspberry-pi(en) Raspberry Pi Education Manual : http://downloads.raspberrypi.org/Raspberry_Pi_Education_Manual.pdf

Contributeurs principaux : Jamaique.

Basé sur « Titre original de l'article » par Auteur Original.