Czy mogę ssh (do urządzenia mobilnego) przez USB?

10

Mam tablet z połączeniem USB do komputera hosta. (Najlepiej, jeśli host działa w systemie Windows, ale jeśli to absolutnie konieczne, mógłbym również zmienić host na Ubuntu).

Chcę mieć możliwość połączenia SSH z urządzeniem bez połączenia RS-232, WiFi lub innego połączenia sieciowego. Jakiej kombinacji oprogramowania i konfiguracji potrzebuję, aby tak się stało?

Zasadniczo, chciałbym móc mieć ekwiwalent adb shell, ale w przypadku, gdy na tablecie działa czysty Ubuntu, a nie Android.

Zdarza się, że tablet ma 9.04, ale chętnie go zaktualizuję, jeśli zajdzie taka potrzeba.

Phrogz
źródło
Jeśli podłączysz się do tabletu z Ubuntu, jaka jest wydajność lsusb?
aquaherd
Jaki typ urządzenia?
Ciro Santilli 24 病毒 审查 六四 事件 法轮功 法轮功

Odpowiedzi:

4

Tak więc, aby wyjaśnić, chcesz połączyć się z tabletem (z systemem Ubuntu) z komputera (z systemem Windows, ale mógłbyś uruchomić Ubuntu, gdyby musiał) przez ssh przez połączenie USB?

Nie słyszałem o tym wcześniej, ale wyszukiwane przez Google wyszukiwania, takie jak „ssh przez USB”, pozwoliły wielu hitom, w których ludzie pokazywali, jak podłączyć iPhone'a z jailbrokerem z zainstalowanym OpenSSH do komputera z systemem Windows za pomocą WinSCP lub Putty. Oto kilka linków:

iFans - SSH przez USB z WinSCP

OpenSSH, USB zamiast WiFi

Tablet Ubuntu może z łatwością zastąpić iPhone'a, ponieważ ma już na nim OpenSSH, ale nie wiem zbyt wiele o tunelowaniu połączenia SSH do USB, z tym wyjątkiem, że SSH używa portu 22. Te dwa samouczki używają programu o nazwie itunnel, ale nie nic o tym nie wiem. Poszedłem na stronę itunnel i powiedziałem: „iTunnel to prosty program wiersza poleceń Linuksa, który zapewnia tunelowanie SSH przez kabel USB do iPhone'a z uszkodzonym jailem. Napisałem to małe narzędzie, ponieważ zmęczyło mnie konieczność SSH do mojego iPhone'a przez łącze WiFi Serwer proxy SSH, łącze ssh i scp działają doskonale. ” Ponieważ mówi „prosty program wiersza poleceń Linuksa”, myślę, że warto przynajmniej zbadać, czy zadziała.

To interesująca perspektywa i chciałbym zobaczyć, dokąd zmierza, ale czuję, że podłączenie przez USB sprawia, że ​​jest to znacznie więcej pracy, niż powinno. Użyłem aplikacji Proxoid na Androida, aby połączyć telefon z laptopem w celu uzyskania bezprzewodowych połączeń na uwięzi za pomocą ./adb forward tcp:8080 tcp:8080polecenia, ale połączenie tunelowane wymagało ode mnie ustawienia proxy w przeglądarce, zanim mógłbym przejść do trybu online. Tunelowanie połączenia SSH do USB może utrudnić łączenie się aplikacji bez rozległych problemów z opcjami.

Jeśli masz stary router (na przykład bezprzewodowy router Linksys B lub G), możesz po prostu połączyć tablet i komputer za pomocą tego i SSH do tabletu, bez bałagania się przy tunelowaniu.

użytkownik26785
źródło
Dzięki, widziałem te same linki Google. Jak mówisz, wydaje się to możliwe. Mam nadzieję, że ktoś udzieli prawdziwej odpowiedzi pokazującej, jak to zrobić. WiFi to druga awaria (a za tym straszny hack podłączenia RS-232 do tabletu i połączenia przez to).
Phrogz,
3

Na wypadek gdybyś chciał ssh na Androida:

Pobierz rom cyjanogenmod 7 i wypakuj dropbear, dropbearkey i dropbearconvert z katalogu / system / xbin /. Dropbear to lekka alternatywa dla sshd. Skopiuj je do telefonu, przenieś do / system / xbin / i daj im uprawnienia i własność, które mieli w archiwum.

Wygeneruj klucz ssh na pulpicie, jeśli jeszcze go nie masz: ssh-keygen -t rsa
Skopiuj klucz publiczny na telefon:adb push .ssh/id_rsa.pub /sdcard/authorized_keys

Skonfiguruj klucze w telefonie za pomocą powłoki adb:

mkdir /data/dropbear  
chmod 755 /data/dropbear  
mkdir /data/dropbear/.ssh  
chmod 700 /data/dropbear/.ssh  
mv /sdcard/authorized_keys /data/dropbear/.ssh/  
chown root.root /data/dropbear/.ssh/authorized_keys  
chmod 600 /data/dropbear/.ssh/authorized_keys  
dropbearkey -t rsa -f /data/dropbear/dropbear_rsa_host_key  
dropbearkey -t dss -f /data/dropbear/dropbear_dss_host_key 

Uruchom dropbear na telefonie w terminalu lub za pomocą powłoki adb: dropbear -s -F -v -p 2222

Połącz z komputera: ssh -i .ssh/id_rsa -p 2222 -l root 127.0.0.1

daithib8
źródło