Serveur SSH (et SFTP) sur Android découvrable via avahi / bonjour

16

Je souhaite que mon appareil Android (un Samsung Galaxy) soit détectable via avahi / bonjour lorsqu'il est connecté à un réseau WiFi, puis puisse accéder à son système de fichiers via SSH (SFTP).

Pour moi, c'est un moyen familier et pratique d'accéder à divers appareils de mon réseau local: découvrir leur service SSh via avahi / bonjour (pour ne pas avoir à gérer les adresses IP), et leur envoyer des ssh. J'utiliserais cette méthode pour mes systèmes GNU / Linux (comme Ubuntu).

Existe-t-il un logiciel gratuit (= libre - car j'apprécie la liberté de piratage) pour Android qui implémenterait cela, à savoir:

  • prise en charge d'avahi / bonjour pour Android, afin que l'appareil Android soit accessible par son nom dans le domaine .local (au lieu de simplement par son adresse IP);
  • et un serveur SSH avec prise en charge de la publication elle-même via Avahi / bonjour (mdnssd).
imz - Ivan Zakharyaschev
la source
Juste le même souhait - android.stackexchange.com/questions/20907/… : faire ssh vers Android non pas par son IP, mais plutôt par le nom acquis via zeroconf / bonjour / avahi / mdns (quel que soit le nom que vous lui donnez). Il serait encore mieux que le service SSH soit publié via zeroconf / bonjour / avahi / mdns / dnssd (peu importe comment vous l'appelez).
imz - Ivan Zakharyaschev
Quant à la partie SSH du souhait, il y a déjà des questions et réponses: android.stackexchange.com/questions/9905/… , android.stackexchange.com/questions/15503/… . (Bien que je devrai savoir si les solutions suggérées sont des logiciels libres / libres - pour répondre à ma question.) La partie de support de avahi / bonjour / zeroconf est cependant sans réponse ...
imz - Ivan Zakharyaschev
2
Je sais que ce n'est pas la même chose, mais lors de la recherche de la "solution finale": j'ai conseillé à mes routeurs DHCP d'attribuer une IP statique aux appareils, puis de le configurer avec mon DNS local (vous pouvez également le faire via /etc/hosts). Je n'ai donc pas à me souvenir des IP, mais des "pseudonymes" des appareils, ce qui est assez facile en comparaison.
Izzy
@Izzy: Je vois, merci, c'est une solution très raisonnable. Mais malheureusement, dans mon cas, il semble que j'ai (en tant que routeur) une station de base Airport Extreme qui ne prend pas en charge les "réservations DHCP" . De plus, ce serait bien de pouvoir se connecter à l'appareil par un "pseudo" dans la situation où je suis un "invité" (dans un réseau non configuré par moi).
imz - Ivan Zakharyaschev
2
Bien sûr, cela a été compris dès le début - c'est pourquoi j'ai pensé que c'était une solution de contournement jusqu'à ce que vous trouviez une vraie solution. Il existe des applications disponibles vous permettant de configurer une «IP fixe à la demande / par réseau» (par opposition au «DHCP fixe»), qui devrait même fonctionner avec votre station de base d'aéroport extrême. Si vous êtes intéressé, je pourrais résumer cela et le placer dans une réponse (avec mon commentaire ci-dessus).
Izzy

Réponses:

2

J'utilise le SSHelper gratuit (sans enracinement) depuis qu'il a récemment ajouté la diffusion zeroConf. Il fournit un serveur SSH et RSYNC (transfert de fichiers), tout en diffusant également un nom ZeroConf. Un autre client avahi / bonjour peut se connecter sans avoir besoin de connaître le nom d'hôte android. Expliqué plus en détail dans cette autre réponse: Définir le nom d'hôte pour SSHelper

glenschler
la source
Merci beaucoup pour l'information! Maintenant, au moins je connais une possibilité de mettre cela en place. Je préfère utiliser des logiciels libres (= libre, open-source). Dois-je considérer SSHelper alors? .. (Je ne sais pas encore s'il s'agit d'un logiciel libre.)
imz - Ivan Zakharyaschev
@glenschler Salut, je viens d'essayer SSHelper mais je n'ai pas compris comment se connecter à o ssh en utilisant le nom. J'ai vérifié le code source et il semble utiliser « SSHelper » comme nom zeroconf, mais je ne peux pas vous y connecter comme ceci: ssh SSHelper:2222. Des conseils / astuces? Merci
George Profenza
@ george-profenza Je ne savais pas que le code source était disponible. Je vais devoir enquêter. Vous devriez parcourir votre réseau pour tous les noms "avahi". Ce sera différent de votre machine mac ou linux. android.stackexchange.com/questions/42358/…
glenschler
@glenschler J'ai utilisé avahi sur un Raspberry Pi et après l'avoir installé, j'ai pu accéder à mon pi en tant que rpi.local. Sur Windows, j'ai dû installer le service bonjour. J'ai essayé d'accéder à ssh / http en utilisant le nom d'hôte SSHelper (que je pouvais voir répertorié sur un Mac en cours d'exécution dns-sd -B) mais je n'ai pas pu me connecter. Comment vous connectez-vous à votre téléphone par son nom (quel nom utilisez-vous) avec SSHelper?
George Profenza
Il existe une nouvelle version 5.5 de SSHelper. Oui, pour répondre à la question précédente, c'est un logiciel libre. Vous pouvez maintenant configurer un nom personnalisé! Mes instructions sont détaillées ici android.stackexchange.com/questions/42358/…
glenschler