Posso ssh (in un dispositivo mobile) tramite USB?


10

Ho un tablet con una connessione USB a un computer host. (Idealmente l'host sta eseguendo Windows, ma se assolutamente necessario potrei cambiare l'host per essere anche Ubuntu.)

Voglio essere in grado di SSH nel dispositivo senza RS-232, WiFi o altra connessione di rete. Di quale combinazione software e configurazione ho bisogno per farlo accadere?

Fondamentalmente, mi piacerebbe poter avere l'equivalente di adb shell, ma per quando il tablet esegue Ubuntu puro, non Android.

Il tablet funziona con 9.04, ma sarei felice di aggiornarlo se necessario.


Se ti connetti al tablet da Ubuntu, qual è l'output di lsusb?
aquaherd,

Risposte:


4

Quindi, per chiarire, vuoi connetterti al tuo tablet (con Ubuntu) dal tuo PC (con Windows, ma potresti eseguire Ubuntu se dovesse farlo) tramite ssh su una connessione USB?

Non ho mai sentito parlare di questo prima, ma Google cerca cose come "ssh over USB" che permettono a molti hit in cui le persone stavano mostrando come connettere un iphone jailbroker con OpenSSH installato su un PC Windows usando WinSCP o Putty. Ecco alcuni link:

iFans - SSH via USB con WinSCP

OpenSSH, USB anziché WiFi

Il tablet Ubuntu potrebbe facilmente sostituire l'iPhone perché ha già OpenSSH su di esso ma non so troppo sul tunneling di una connessione SSH a USB, tranne che SSH utilizza la porta 22. Questi due tutorial usano un programma chiamato itunnel ma io non non ne so nulla. Sono andato sul sito di itunnel e mi ha detto "iTunnel è un semplice programma da riga di comando Linux che fornisce tunneling SSH tramite il cavo USB a un iPhone jailbreak. Ho scritto questo piccolo strumento perché mi sono stancato di dover SSH nel mio iPhone tramite il collegamento WiFi Il proxy SSH, il collegamento SSH e SCP funzionano tutti alla grande. " Perché dice "semplice programma da riga di comando Linux", penso che valga la pena investigare per vedere se funzionerà.

Questa è una prospettiva interessante e mi piacerebbe vedere dove va, ma sento che il collegamento tramite USB rende questo lavoro molto più di quanto deve essere. Ho usato l'app Android Proxoid per connettere il mio telefono al mio laptop per connessioni wireless legate usando il ./adb forward tcp:8080 tcp:8080comando ma la connessione tunnel mi ha richiesto di impostare il proxy sul mio browser prima che potessi collegarmi online. Il tunneling della connessione SSH su USB potrebbe rendere difficile la connessione delle applicazioni senza problemi con le opzioni.

Se hai un vecchio router in giro (come un router B o G wireless Linksys) potresti semplicemente connettere il Tablet e il PC usando quello e SSH nel Tablet senza fare casino con il tunneling.


Grazie, ho visto tutti quegli stessi link di Google. Come dici tu, questo sembra possibile. Spero che qualcuno fornisca una risposta reale che mostri come. Il WiFi è il secondo fallback (e dietro a questo un orribile hack di connessione RS-232 al tablet e connessione attraverso quello).
Phrogz,

3

Nel caso in cui avessi voglia di ssh su Android:

Scarica una rom cyanogenmod 7 ed estrai dropbear, dropbearkey e dropbear convertiti dalla directory / system / xbin /. Dropbear è un'alternativa leggera a sshd. Copiateli sul telefono, spostateli su / system / xbin / e date loro le autorizzazioni e la proprietà che avevano nell'archivio.

Genera una chiave ssh per il desktop se non ne hai già una: ssh-keygen -t rsa
Copia la chiave pubblica sul telefono:adb push .ssh/id_rsa.pub /sdcard/authorized_keys

Configura le tue chiavi sul telefono tramite la shell 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 

Esegui dropbear sul tuo telefono in un terminale o usando la shell adb: dropbear -s -F -v -p 2222

Connettiti dal tuo desktop: ssh -i .ssh/id_rsa -p 2222 -l root 127.0.0.1

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.