Posso ssh (em um dispositivo móvel) via USB?

10

Eu tenho um tablet com uma conexão USB com um computador host. (Idealmente, o host está executando o Windows, mas se for absolutamente necessário, eu poderia mudar o host para o Ubuntu também.)

Quero poder fazer o SSH no dispositivo sem RS-232, WiFi ou outra conexão de rede. Que combinação e configuração de software eu preciso para que isso aconteça?

Basicamente, eu adoraria poder ter o equivalente a adb shell, mas para quando o tablet estiver executando o Ubuntu puro, não o Android.

Por acaso, o tablet está executando a versão 9.04, mas ficaria feliz em atualizá-lo, se necessário.

Phrogz
fonte
Se você se conectar ao tablet a partir do ubuntu, qual é a saída lsusb?
aquaherd
Que tipo de dispositivo?
Ciro Santilli respondeu

Respostas:

4

Então, para esclarecer, você deseja se conectar ao seu tablet (executando o Ubuntu) a partir do seu PC (executando o Windows, mas poderia executar o Ubuntu, se necessário) por ssh em uma conexão USB?

Eu nunca ouvi falar disso antes, mas o Google procura por coisas como "ssh over USB", onde muitas pessoas mostram como conectar um iphone jailbroker com o OpenSSH instalado em um PC com Windows usando WinSCP ou Putty. Aqui estão alguns links:

iFans - SSH via USB com WinSCP

OpenSSH, USB em vez de WiFi

O tablet Ubuntu pode substituir facilmente o iphone porque já possui o OpenSSH, mas eu não sei muito sobre o encapsulamento de uma conexão SSH para USB, exceto que o SSH usa a porta 22. Esses dois tutoriais usam um programa chamado itunnel, mas eu não ' não sei nada sobre isso. Fui ao site do itunnel e disse: "O iTunnel é um programa simples de linha de comando do Linux que fornece um túnel SSH através do cabo USB para um iPhone com jailbreak. Escrevi esta pequena ferramenta porque me cansei de ter que fazer o SSH no meu iPhone pelo link WiFi" O proxy SSH, o link ssh e o scp funcionam bem. " Por dizer "programa simples de linha de comando do Linux", acho que vale a pena investigar para ver se funcionará.

Essa é uma perspectiva interessante e eu gostaria de ver para onde ela vai, mas sinto que a conexão via USB torna isso consideravelmente mais trabalhos do que o necessário. Eu usei o aplicativo Android Proxoid para conectar meu telefone ao meu laptop para conexões sem fio conectadas usando o ./adb forward tcp:8080 tcp:8080comando, mas a conexão em túnel exigia que eu configurasse o proxy no meu navegador antes que eu pudesse ficar online. O tunelamento de sua conexão SSH para USB pode dificultar a conexão de seus aplicativos sem muitas opções extensivas.

Se você tem um roteador antigo por aí (como um roteador Linksys B ou G sem fio), basta conectar o Tablet e o PC usando esse SSH no Tablet sem mexer no tunelamento.

user26785
fonte
Obrigado, vi todos os mesmos links do Google. Como você diz, isso faz parecer possível. Espero que alguém forneça uma resposta real mostrando como. O WiFi é o segundo substituto (e por trás disso, um horrível truque de conectar o RS-232 ao tablet e conectar-se a ele).
Phrogz 12/12
3

Apenas no caso de você querer ssh no Android:

Faça o download de uma cyanogenmod 7 rom e extraia dropbear, dropbearkey e dropbearconvert do diretório / system / xbin /. Dropbear é uma alternativa leve ao sshd. Copie-os para o telefone, mova-os para / system / xbin / e conceda a eles as permissões e a propriedade que possuíam no arquivo morto.

Gere uma chave ssh para sua área de trabalho, se você ainda não tiver uma: ssh-keygen -t rsa
Copie a chave pública para o telefone:adb push .ssh/id_rsa.pub /sdcard/authorized_keys

Configure suas chaves no telefone via 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 

Execute dropbear no seu telefone em um terminal ou usando o shell adb: dropbear -s -F -v -p 2222

Conecte-se na sua área de trabalho: ssh -i .ssh/id_rsa -p 2222 -l root 127.0.0.1

daithib8
fonte