Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

tutoriel:nanopc:raspi:ssh:start [2020/07/31 08:55] (Version actuelle)
admin créée
Ligne 1: Ligne 1:
 +{{tag>​tutoriel}}
  
 +====== Accès SSH à un Raspberry PI depuis un PC du réseau ======
 +
 +===== Pré-requis =====
 +
 +===== Première étape : localiser le RPI sur le réseau =====
 +
 +Installez-vous sur le PC du réseau à relier au RPI.
 +
 +Retrouvez le RPI sur le réseau en lançant :<​cli>​...@...:​~$ ping raspberrypi.local -c 1
 +PING raspberrypi.local (192.168.0.21) 56(84) bytes of data.
 +64 bytes from 192.168.0.21 (192.168.0.21):​ icmp_seq=1 ttl=64 time=245 ms
 +
 +--- raspberrypi.local ping statistics ---
 +1 packets transmitted,​ 1 received, 0% packet loss, time 0ms
 +rtt min/​avg/​max/​mdev = 245.513/​245.513/​245.513/​0.000 ms
 +</​cli>​
 +
 +On constate que :
 +  * le RPI est connecté en 192.168.0.31
 +  * La connexion SSH est disponible.
 +===== Autres étapes =====
 +
 +==== Lancer une session ssh ====
 +
 +Lancez une session SSH sur l'​adresse du RPI sous l'​utilisateur **pi** (l'​adresse réseau de la RPI, retrouvée par nmap, est supposée 192.168.0.31) :<​cli>​...@...:​~$ ssh pi@raspberrypi.local
 +Warning: the ECDSA host key for '​raspberrypi.local'​ differs from the key for the IP address '​192.168.0.31'​
 +Offending key for IP in /​home/​nicolas/​.ssh/​known_hosts:​11
 +Matching host key in /​home/​nicolas/​.ssh/​known_hosts:​12
 +Are you sure you want to continue connecting (yes/no)? yes
 +pi@raspberrypi.local'​s password: ​
 +Linux raspberrypi 4.19.118-v7+ #1311 SMP Mon Apr 27 14:21:24 BST 2020 armv7l
 +
 +The programs included with the Debian GNU/Linux system are free software;
 +the exact distribution terms for each program are described in the
 +individual files in /​usr/​share/​doc/​*/​copyright.
 +
 +Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 +permitted by applicable law.
 +Last login: Thu Jul 30 21:32:10 2020
 +
 +SSH is enabled and the default password for the '​pi'​ user has not been changed.
 +This is a security risk - please login as the '​pi'​ user and type '​passwd'​ to set a new password.
 +
 +pi@raspberrypi:​~ $ 
 +</​cli>​
 +  * A la première connexion, répondez **yes** pour accepter la demande d’autorisation de clé de cryptage du SSH
 +  * A la demande de mot de passe, tapez **raspberry** (réglage d'​usine).
 +  * En dernière ligne, le prompt confirme que vous n'​êtes plus sur la console du pc mais sur celle du RPI.
 +<WRAP center round info 60%>
 +En cas de réinstallation,​ Il se peut qu'un message s'​affiche :
 +<cli>
 +...:~$ ssh pi@192.168.0.31
 +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ​    @
 +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
 +...
 +  remove with:
 +  ssh-keygen -f "/​home/​xxxxxxx/​.ssh/​known_hosts"​ -R "​192.168.0.31"​
 +...
 +Host key verification failed.
 +</​cli>​
 +
 +Dans ce cas, faites comme demandé :
 +<​cli>​$ ssh-keygen -f "/​home/​xxxxxxx/​.ssh/​known_hosts"​ -R 192.168.0.31</​cli>​
 +et recommencez.
 +</​WRAP>​
 +
 +==== Accéder au RPI via SSH sans fournir de mot de passe ====
 +
 +Pour ne pas avoir à fournir le mot de passe à chaque connexion SSH au RPI,
 +  * placez-vous sur le PC et tapez :<​cli>​...:​~$ ssh-keygen -t dsa
 +Generating public/​private dsa key pair.
 +Enter file in which to save the key (/​home/​xxxxxxx/​.ssh/​id_dsa): ​
 +Enter passphrase (empty for no passphrase): ​
 +Enter same passphrase again: ​
 +Your identification has been saved in /​home/​xxxxxxx/​.ssh/​id_dsa.
 +Your public key has been saved in /​home/​xxxxxxx/​.ssh/​id_dsa.pub.
 +The key fingerprint is:
 +SHA256:​kVpG+4aYTuDIvXIDg7vfTbGHTcw7p9MVHR2kFbRYI44 nicolas@chateau
 +The key's randomart image is:
 ++---[DSA 1024]----+
 +|        .    .oXo|
 +|       . o  o B +|
 +|    .   ​* ​ E = o |
 +| o + . O +  . .  |
 +|. = o * S o  .   |
 +| . o + * o  .    |
 +|. . + = =...     |
 +| . + + ..+.      |
 +|... . . ..       |
 ++----[SHA256]-----+
 +...:​~$ ​
 +</​cli>​Répondez <​key>​Entrée</​key>​ à chaque fois pour ne pas avoir de mot de passe et acceptez les noms de fichier.
 +  * Envoyez au RPI la clé publique ainsi générée :<​cli>​
 +...:~$ ssh-copy-id pi@192.168.0.31
 +/​usr/​bin/​ssh-copy-id:​ INFO: attempting to log in with the new key(s), to filter out any that are already installed
 +/​usr/​bin/​ssh-copy-id:​ INFO: 2 key(s) remain to be installed -- if you are prompted now it is to install the new keys
 +pi@192.168.0.31'​s password: ​
 +
 +Number of key(s) added: 2
 +
 +Now try logging into the machine, with:   "​ssh '​pi@192.168.0.31'"​
 +and check to make sure that only the key(s) you wanted were added.
 +</​cli>​
 +  * Reconnectez-vous au RPI :<​cli>​$ ssh pi@192.168.0.31</​cli>​et donnez une dernière fois le mot de passe.
 +  * Déconnectez-vous. Maintenant, vous pouvez vous connecter au RPI via SSH sans mot de passe.
 +
 +Pour automatiser cette connexion,
 +  * créez avec les droits d'​administration le fichier **~/​.ssh/​config** pour y écrire ceci :<code - ~/​.ssh/​config>​
 +Host framboise
 +User pi
 +Hostname 192.168.0.31
 +# framboise.local
 +Port 22
 +CheckHostIP no
 +LocalForward 5900 127.0.0.1:​5900
 +Compression yes
 +ForwardX11 yes
 +</​code>​
 +
 +Il suffit maintenant de :
 +<​cli>​$ ssh framboise</​cli>​pour lancer une session SSH sur le RPI :
 +  * sous l'​utilisateur **pi**
 +  * sans mot de passe
 +  * et en mode graphique
 +
 +===== Conclusion =====
 +
 +===== Problèmes connus =====
 +
 +??? Problème sous Ubuntu 18.04
 +<​cli>​$ ssh pi@192.168.0.31
 +sign_and_send_pubkey:​ signing failed: agent refused operation</​cli>​
 +Les autorisations de fichier sont trop ouvertes (0644).
 +!!! **Solution**
 +Les changer ainsi :
 +<​cli>​$ chmod 600 ~/​.ssh/​id_rsa</​cli>​
 +??? 
 +
 +
 +===== Voir aussi =====
 +
 +  * **(fr)** [[http://​Article]]
 +
 +----
 +//Basé sur << [[http://​Article|Article]] >> par Auteur.//