Acessando o Linux via SSH através do Android

Neste artigo veremos como pode ser fácil acessar seu sistema Linux remotamente através do Android Google OS.

[ Hits: 63.980 ]

Por: André em 16/09/2011 | Blog: http://127.0.0.1


Introdução, instalação e acesso



Autor: André Rosa

NOTA: Todas as informações apresentadas neste artigo foram obtidas na Internet, sendo assim, não ofereço nenhum tipo de garantia ou suporte. Não nos responsabilizamos por qualquer dano ocorrido, tanto na máquina (computador) quanto no software. Siga por sua conta e risco.

NOTA²: É permitida a cópia do conteúdo aqui publicado, desde que o autor seja informado e os créditos sejam mantidos intactos.

Antes de mais nada, irei ratificar algumas informações de ambiente:

Ambiente servidor:
  • Sistema: Ubuntu Linux
  • Kernel: 2.6.38-8-generic
  • SSH-Server: OpenSSH_5.8p1 Debian-1ubuntu3, OpenSSL 0.9.8o 01 Jun 2010

Ambiente cliente (Android):
  • Aparelho: SAMSUNG Galaxy 5
  • Sistema: Android OS
  • SSH-Client: ConnectBot

O que é Android

(definição do Wikipédia)

Android é um sistema operacional móvel que roda sobre o núcleo Linux, embora por enquanto seja ainda desenvolvido numa estrutura externa ao núcleo Linux. Foi inicialmente desenvolvido pela Google e posteriormente pela Open Handset Alliance, mas a Google é a responsável pela gerência do produto e engenharia de processos.

O Android permite aos desenvolvedores escreverem software na linguagem de programação Java controlando o dispositivo via bibliotecas desenvolvidas pela Google. Existem atualmente mais de 250 mil aplicações disponíveis para Android.

O sistema operativo Android consiste em 12 milhões de linhas de código, incluindo 3 milhões em XML, 2.8 milhões de linhas de C, 2.1 milhões de linhas de código Java e 1.75 milhões de linhas de código em C++.


Fonte: http://pt.wikipedia.org/wiki/Android

Vamos começar preparando o nosso servidor SSH.

No Debian ou em qualquer distribuição baseado neste, você pode instalar via apt-get, através do comando:

# apt-get install openssh-server

Para outras distribuições, basta procurar um artigo à respeito. Aqui no Viva o Linux há vários artigos sobre, como este, por exemplo:
Após instalado o SSH, vamos fazer um teste, para vermos se está funcionando. A sintaxe básica de conexão pelo ssh é essa:

# ssh usuario@servidor

No meu caso, acessando um IP da rede, ficará assim:

# ssh andre@192.168.1.100

Assim que você executar o comando anteriormente citado, aparecerá uma mensagem como essa:

The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established.
ECDSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)?


Digite "yes" (sem aspas).

Após isso será solicitada uma senha, que é a senha do usuário no qual você está tentando se logar. Digite-a.

Pronto, se você têm acesso ao shell deste usuário, tudo funcionou perfeitamente. Vamos para o Android agora!

Vá até o "Market" do seu Android (provavelmente no menu principal), e procure por um aplicativo chamado ConnectBot. Estará algo como:

ConnectBot
Kenny Root Jeffrei Sharkey

Instale-o (basta selecionar o botão de instalação, e ir avançando e dando as devidas permissões).

Após instalá-lo, ele provavelmente estará no menu principal (junto com os outros aplicativos). Abra-o.

Você verá que haverá um Combobox para selecionarmos o protocolo (ele dá suporte à SSH e Telnet). Deixe marcado o SSH, e no campo de texto, conecte da mesma forma como você conectou no Linux:

usuario@servidor

Da mesma forma que fiz:
Clique no botão referente à "OK", no meu caso é o "Conc". Após isso, será solicitado a senha do usuário:
Coloque a senha, e dê "OK". Após isso você terá acesso ao shell! :)
Agora é só acessar seu sistema quando for preciso. :)

Conclusão:

Como você deve ter visto, é muito fácil acessar um sistema remotamente através do Android. Vale lembrar novamente que você também pode acessar seu Windows via Telnet, da mesma forma que fiz no artigo, mas, é claro, apenas alterando o protocolo de SSH para Telnet.

Referências:
   

Páginas do artigo
   1. Introdução, instalação e acesso
Outros artigos deste autor

Fedora 12 - instalação e uso

SDL e C - Uma dupla sensacional

OpenSUSE - Uma ótima opção de distribuição

lib cURL - Trabalhe com URLs em C

A profissão: Programador

Leitura recomendada

Apache2 + PHP5 com ModSecurity no Debian Squeeze

ttyrec - Ferramenta para auditoria de sistemas Linux

Nmap - Escaneando sua Rede e Mantendo-a Segura

Bloqueio de repetidas tentativas de login ao seu Linux

ClamAV em desktop

  
Comentários
[1] Comentário enviado por Stefan em 16/09/2011 - 10:03h

utilizo o software já a bastante tempo... Muito bom e prático para quando se esta viajando etc..

[2] Comentário enviado por valterrezendeeng em 16/09/2011 - 11:54h

Parabens!!!

Realmente é bem prático

Abraço

[3] Comentário enviado por cruzeirense em 16/09/2011 - 14:16h

SSH é realmente uma ferramenta fantástica!

Já utilizei inclusive o client putty em um celular com windows ce e funcionava 100%.

[4] Comentário enviado por diego.ramos em 16/09/2011 - 15:29h

Grande André, rapaz ainda não tive a oportunidade de testar, mas essa App aceita inserir chave para acessar o servidor(como fazemos no Putty) ?

[5] Comentário enviado por andrezc em 16/09/2011 - 15:55h

diego.ramos,
Sim, você pode inserir chaves. Com o app aberto, pressione a tecla de abertura de menus (no aparelho) e selecione "Manage Pubkeys".

[6] Comentário enviado por removido em 16/09/2011 - 18:00h

Muito bom !

[7] Comentário enviado por juliaojunior em 17/09/2011 - 23:58h

Muito bom, vou testar brevemente.

[8] Comentário enviado por IllusionOne em 29/10/2015 - 09:53h


Pra quem for testar a partir de uma VM, tem que deixar a conexão em modo bridged.

[9] Comentário enviado por Chico_Leme em 26/10/2017 - 18:05h

Quando tento acessar o usuário com o ssh, aparece a msg de Conexão Recusada.
O que tenho que habilitar para poder acessar.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts