SSH (и SFTP) сервер на Android обнаруживается через avahi / bonjour


16

Я хотел бы, чтобы мое устройство Android (Samsung Galaxy) можно было обнаружить через avahi / bonjour при подключении к сети WiFi, а затем иметь возможность доступа к своей файловой системе через SSH (SFTP).

Для меня это знакомый и удобный способ доступа к различным устройствам в моей локальной сети: обнаружить их службу SSh через avahi / bonjour (не нужно иметь дело с IP-адресами) и подключиться к ним по ssh. Я бы использовал этот способ для своих систем GNU / Linux (например, Ubuntu).

Есть ли бесплатное (= libre - потому что я ценю свободу взлома) программное обеспечение для Android, которое бы реализовало это, а именно:

  • поддержка avahi / bonjour для Android, чтобы устройство Android было доступно по имени в домене .local (а не только по его IP-адресу);
  • и SSH-сервер с поддержкой публикации себя через Avahi / bonjour (mdnssd).

Точно такое же желание - android.stackexchange.com/questions/20907/… : ssh для Android не по его IP, а по имени, полученному через zeroconf / bonjour / avahi / mdns (как бы вы это ни называли). Было бы еще лучше, если бы служба SSH публиковалась через zeroconf / bonjour / avahi / mdns / dnssd (как бы вы это ни называли).
— imz - Иван Захарящев

Что касается SSH-части пожелания, то уже есть вопросы и ответы: android.stackexchange.com/questions/9905/… , android.stackexchange.com/questions/15503/… . (Хотя мне нужно выяснить, являются ли предлагаемые решения бесплатным / libre программным обеспечением - чтобы ответить на мой вопрос.) Часть поддержки моего вопроса avahi / bonjour / zeroconf, однако, без ответа ...
— imz - Иван Захарящева

2
Я знаю, что это не то же самое, но при поиске «окончательного решения»: я посоветовал своим маршрутизаторам DHCP назначить устройствам статический IP-адрес, а затем настроил его с моим локальным DNS (вы также можете сделать это через /etc/hosts). Так что мне не нужно запоминать IP-адреса, но устройства имеют «никнеймы», что довольно просто для сравнения.
— Иззи

@ Иззи: Я вижу, спасибо, это очень разумный обходной путь. Но, к сожалению, в моем случае кажется, что у меня (в качестве маршрутизатора) есть базовая станция Airport Extreme, которая не поддерживает «резервирование DHCP» . Также было бы неплохо иметь возможность подключаться к устройству по «нику» в ситуации, когда я «гость» (в сети, не настроенной мной).
— imz - Иван Захарящев

2
Конечно, это было понятно с самого начала - поэтому я подумал, что это обходной путь, пока вы не найдете реальное решение. Доступны приложения, позволяющие вам настроить «фиксированный IP по требованию / по сети» (в отличие от «фиксированного DHCP»), который должен работать даже с вашей экстремальной базовой станцией аэропорта. Если вам интересно, я мог бы подвести итог и поместить его в ответ (вместе с моим комментарием выше).
— Иззи

Ответы:


2

Я использую бесплатный SSHelper (без рута), так как он недавно добавил трансляцию zeroConf. Он предоставляет SSH и RSYNC (сервер передачи файлов), а также передает имя ZeroConf. Другой клиент avahi / bonjour может подключиться без необходимости знать имя хоста Android. Более подробно объяснено в этом другом ответе: Установить имя хоста для SSHelper


Большое спасибо за информацию! Теперь, по крайней мере, я знаю одну возможность настроить это. Я предпочитаю использовать свободное программное обеспечение (= libre, open-source). Должен ли я рассмотреть SSHelper тогда? .. (Я пока не знаю, является ли это свободным программным обеспечением.)
— imz - Иван Захарящев

@glenschler Привет, я только что попробовал SSHelper, но я не понял, как подключиться к SSH, используя имя. Я проверил исходный код и он , кажется, использует «SSHelper» как ZeroConf имя, но я не могу подключиться к нему так: ssh SSHelper:2222. Любые советы / подсказки? Спасибо
— Джордж Profenza

@ george-profenza Я не знал, что исходный код был доступен. Мне нужно расследовать. Вы должны просмотреть свою сеть для всех имен "avahi". Это будет отличаться от вашего компьютера Mac или Linux. android.stackexchange.com/questions/42358/...
— glenschler

@glenschler Я использовал avahi на Raspberry Pi, и после его установки я смог получить доступ к своему пи как rpi.local. На окнах мне пришлось установить службу Bonjour. Я попытался получить доступ к ssh / http, используя имя хоста SSHelper (которое я видел в списке на работающем Mac dns-sd -B), но не смог подключиться к нему. Как вы подключаетесь к своему телефону по имени (какое имя вы используете) с помощью SSHelper?
— Джордж Профенца

Появилась новая версия 5.5 SSHelper. Да, чтобы ответить на предыдущий вопрос, это свободное программное обеспечение. Теперь вы можете настроить собственное имя! Мои инструкции подробно описаны здесь android.stackexchange.com/questions/42358/…
— glenschler
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.