Android : Installer un serveur SSH (NO ROOT) et transférer des fichiers
Introduction
Dans cet article, nous allons voir comment installer un serveur SSH sur son téléphone Android.
Cela nous permettra de se connecter sur le téléphone/tablette à distance, et par extension SFTP, RSYNC pour transférer des fichiers.
Dans mon cas, je cherchais cette possibilité pour transférer des photos, musiques depuis/vers mon PC équipé de Gentoo, avec une méthode BEAUCOUP PLUS RAPIDE que le transfert via USB qui est lent (même avec de l'USB 3.0) avec MTP (protocole de transferts de fichiers entre PC et Android via USB).
Télécharger le serveur SSH
Dans un premier temps, on va avoir besoin d'un logiciel sur le téléphone. Il s'appelle SSHelper.
L'adresse de l'application est la suivante : https://play.google.com/store/apps/details?id=com.arachnoid.sshelper&hl=fr&gl=LT
Evidemment, il existe probablement d'autres applications dans le même genre, mais celle si fonctionne et nul besoin d'un téléphone rooté !
Paramétrer SSHelper
Pour accéder à votre téléphone, ne soyez pas en
Dans un premier temps, lancer l'application.
Dans les options de configuration, notez que : |
Paramétrer les autorisations Android de l'application :
N'oubliez pas de paramétrer les pleins droits à l'application au niveau des permissions sur le système de fichier d'Android. |
Accéder au téléphone
Dans mon cas, l'adresse IP du téléphone est 192.168.21.102.
J'ouvre un simple terminal, et je me connecte en tant qu'utilisateur admin en SSH :
Et voilà, je suis connecté sur le téléphone.
Il existe un lien symbolique SDCard qui pointe sur votre stockage de téléphone.
Utiliser le terminal une fois connecté
Une fois connecté, on est sur un terminal Linux classique.
On peut donc utiliser toutes les commandes disponibles, comme rsync.
Voici un exemple : Depuis le terminal, je récupère mes musiques situées sur mon PC avec la commande rsync que j'ai sur le téléphone nativement :
Pour information, voici les stats :
sent 7.71K bytes received 9.31G bytes 59.11M bytes/sec
total size is 9.31G speedup is 1.00
Les 9.3Go ont été récupérés sur la mémoire interne du téléphone en 2 minutes 36 à une vitesse de 59Mo/s !
Accès en SFTP
Evidemment, vous pouvez accéder en SFTP avec n'importe quel outil le supportant !
Utilisant le gestionnalre de fichiers Nautilus, il me sufit de saisir ceci dans ma barre d'adresse (toujours avec l'IP 192.168.21.102) :
sftp://[email protected]:2222/data/data/com.arachnoid.sshelper/files/home/
Et je suis connecté sur le téléphone. Je peux me ballader dans l'arborescence et récupérer les fichiers souhaités en graphique !
Quitter le serveur SSH
Une fois que vous avez terminé, coupez le serveur SSH depuis l'application pour éviter que le service tourne sur le téléphone
Pour cela via les 3 petits points en haut à gauche, développez le menu et sélectionnez "Stop Server and Quit" :