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.
usb
ssh
tablet
embedded-system
Phrogz
źródło
źródło
lsusb
?Odpowiedzi:
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:8080
polecenia, 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.
źródło
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:
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
źródło