Pour se connecter en ssh avec des clefs au lieu des mots de passe.
Ayant changé de mobile récemment, j'ai encore une fois dû transférer les photos et autres documents d'un appareil à l'autre pour ne rien perdre. Aussi me suis-je mis en quête d'une solution de backup simple.
J'ai donc trouvé l'application SSHelper à installer sur le téléphone et faisant office de serveur ssh. Je vais donc pouvoir m'y connecter depuis mes PC sous Linux, et lancer des backups à la demande en lançant un script shell qu'il me reste à écrire.
Il faut penser à changer les informations de connexion par défaut qui sont :
admin
admin
2222
Tout se fait très facilement via un seul écran de configuration.
Il faut garder à l'esprit de ne pas changer d'application ni de ne pas mettre le téléphone sur l'écran de verrouillage, sinon le serveur se coupe.
Une fois la connexion établie, on peut voir que :
ls
, cat
, df
, grep
, sed
, ...);rsync
est présente, ce qui est une très bonne chose !sudo
et su
sont absentes;cd
et de ls
en n'hésitant pas à entrer dans un répertoire, même si la commande ls
retourne un Permission denied.df -h
. Pour ma part, en regardant les tailles des partitions, j'ai pu remarquer que ma carte SD se trouve dans /storage/XXXX-XXXX
. En entrant directement dedans avec cd
, je peux alors voir le contenu avec ls
.Comme les cartes SD supportent mal les coupures de courant, j'ai dû procéder à la réinstallation de l'OS (une raspbian en l’occurrence).
Et là ... surprise !
Le service ssh n'est plus activé par défaut. L'argument invoqué est que les noobs ne changent pas systématiquement le mot de passe par défaut de l'utilisateur par défaut :
Du coup leurs raspberry sont des cibles privilégiées pour les bots et sont susceptibles de rejoindre l'armée de machines zombies contrôlées à distance par d'autres noobs qui s'amusent à pirater la sécu ou la clinique du coin. #PertinenceSur20
Bref.
Même si je peux comprendre l'arbitrage fait par raspbian (qui consiste finalement à protéger tout le monde du laxisme coupable des noobs qui ne changent pas le mot de passe), c'est carrément lourdingue d'avoir une machine headless sans accès ssh par défaut. Car on fait comment quand on n'a pas d'écran autre que ceux des ordinateurs portables ?
Donc, pour activer le ssh, il y a toutes les méthodes qu'on peut imaginer et qui nécessitent un écran. Et puis sinon, on peut aussi le faire dès la création de la carte SD. Pour cela :
passwd
Note: il ne faut pas créer le fichier ssh dans le /boot de la partition rootfs. En effet, la partition boot va être montée sur le répertoire /boot. Du coup les fichiers présents seront invisibles pour l'OS.
Je garde ça pour tester.
via @Les hyperliens du barbu digressif