Como rotear todo o seu tráfego Android através de um túnel seguro
Há poucos problemas de segurança que uma dose saudável de paranóia e conhecimento não podem ser resolvidos. Hoje, estamos analisando como proteger a conexão de dados móveis do seu telefone Android contra invasões usando software livre e um simples túnel SSH.
HTG Reader Michael escreveu com um simples pedido que estamos mais do que felizes em cumprir:
Querido HTG,
Eu li o seu guia para configurar um servidor SSH em seu roteador doméstico e configurar seu laptop para se conectar através dele, mas estou um pouco sobrecarregado tentando traduzir o que aprendi nesse guia para o meu telefone Android. Existe uma maneira direta de obter a mesma criptografia de link doméstico que estou curtindo no meu laptop no meu telefone Android? Eu completei com sucesso o tutorial original (então eu tenho um servidor SSH rodando no meu roteador agora) pelo que vale a pena. Você pode ajudar um leitor apenas inteligente o suficiente??
Atenciosamente,
Michael
Nós achamos que você está se vendendo com o rótulo apenas inteligente o suficiente, Michael. Afinal, você conseguiu fazer o flash do seu roteador doméstico, configurar o servidor SSH integrado e configurar seu laptop como um cliente. Com isso em seu cinto, você encontrará este guia para fazer o mesmo para o seu telefone francamente fácil! Vamos começar.
Se você está lendo isso sem saber exatamente o que é SSH ou por que deseja ativá-lo em seu smartphone (ou outro dispositivo móvel), sugerimos que você leia a seção O que é e Por que configurar um túnel seguro em nossa configuração do roteador SSH? guia.
O que você precisará
Para este tutorial, você precisará das seguintes coisas:
- Um telefone Android com root que executa o Android OS 1.6 ou superior.
- Uma cópia gratuita do túnel SSH para Android.
- Um servidor SSH para se conectar.
Algumas notas sobre os requisitos acima estão em ordem. Primeiro, para configurar e implantar adequadamente o túnel SSH para Android, você precisa ter acesso root no seu telefone Android. Se o seu telefone ainda não estiver enraizado, recomendamos a leitura do nosso guia sobre o assunto Como usar o seu dispositivo Android e por que você pode querer, pois ele aborda os fundamentos do enraizamento e mostra como fazer isso.
Em segundo lugar, estaremos desenvolvendo nosso guia Configuração SSH em seu roteador para acesso seguro via Web em qualquer lugar neste tutorial. Você não precisa estar usando exatamente a mesma configuração que estamos usando (o servidor SSH embutido em um roteador brilhou com firmware Tomato de terceiros), mas você precisará ter um servidor SSH (hospedado em um servidor remoto ou em sua rede doméstica ) para conectar.
Seguindo em frente a partir deste ponto, vamos supor que você tem, no mínimo, uma conta SSH com o nome de usuário, senha e (se você quiser aumentar a segurança) um par de chaves autorizado para essa conta na mão. Se algum destes termos parecer estranho, recomendamos sugerir a leitura do SSH de configuração no seu roteador linkado acima.
Download e configuração do túnel SSH para Android
Embora o SSH Tunnel for Android não seja a única ferramenta SSH disponível para a plataforma Android, nós o favorecemos por vários motivos, incluindo facilidade de configuração, facilidade de uso diário e, o mais importante, o público-alvo. O SSH Tunnel foi concebido como uma ferramenta para usuários na China e outros países onde governos opressores e censores restringem fortemente o acesso à Internet. Se é bom o suficiente para pessoas em lugares como a China (que arriscam a liberdade de contornar os firewalls do governo), então é bom o suficiente para nós. Pegue uma cópia gratuita na Google Play Store (ou, se você não conseguir acessar a loja do Google Play em seu local, pegue o arquivo APK aqui para instalá-lo manualmente).
Instale o aplicativo e execute-o pela primeira vez para iniciar o processo de configuração. A primeira tela que você verá ficará assim:
Resista ao impulso de verificar o Tunnel Switch e ligar o túnel - ainda não inserimos nenhuma das informações de login, para que seja apenas um erro. Vamos começar visitando a seção Configurações do Túnel SSH do menu. Insira as seguintes informações: o IP do seu host e a porta na qual o servidor SSH está escutando. A porta padrão é 22 para SSH; a menos que você altere especificamente a porta ou tenha sido instruído pelo seu host SSH para usar uma porta alternativa, deixe-a como 22.
Na seção Informações da conta, insira seu nome de usuário e senha no servidor SSH. Neste ponto, temos informações suficientes inseridas para formar uma conexão simples entre o SSH Tunnel e seu servidor SSH com autorização baseada em senha.
Se você deseja usar um par de chaves para proteger ainda mais sua conexão com seu servidor SSH - e recomendamos que você faça isso - você precisará da metade da chave privada agora. (Se você precisar gerar um par, consulte a seção Gerando Chaves do nosso guia do roteador SSH.)
Nota: Você alterna seu servidor SSH entre o login / senha e o login / par de chaves do lado do servidor SSH, não o aplicativo de túnel SSH no seu telefone. Por favor, consulte o menu / documentação de ajuda apropriada no seu servidor SSH para obter assistência, se necessário..
Depois de ter o arquivo de chave privada (terminando com .ppk), você precisará copiá-lo para / sdcard / sshtunnel / key /. Para usar a chave, pressione o botão de menu no seu telefone para acessar a seguinte interface:
Pressione Key File Manager e simplesmente navegue até o diretório / sshtunnel / key /. Selecione a chave apropriada para o seu servidor SSH - você pode achar útil nomear cada chave com base no serviço, como HomeRouter.ppk ou SomeSSHService.ppk, se você decidir usar a função Profiles para utilizar vários servidores SSH.
Depois de configurar a senha e / ou a chave privada, é hora de concluir a última configuração.
Sob a seção de informações da conta é a seção de encaminhamento de porta. Para agilizar o processo, sugerimos ativar o servidor proxy SOCKS integrado para aumentar a compatibilidade do aplicativo com o SSH Tunnel. Basta marcar "Usar proxy de meias" para ativá-lo.
Finalmente, é hora de decidir se você deseja rotear toda a sua conexão de dados do Android por meio de seu servidor SSH ou redirecionar seletivamente os aplicativos pelo servidor. Para direcionar toda a sua conexão, marque “Global Proxy”. Para rotear aplicativos seletivamente, escolha "Proxy Individual" e, em seguida, verifique os aplicativos individuais que você deseja rotear - como o seu navegador da Web e o Facebook - como visto acima.
Neste ponto, estamos prontos para o rock, mas antes de iniciarmos o túnel, vamos dar uma olhada nas últimas opções de configuração para que você possa decidir se deseja usá-las ou não. Na subseção Feature Settings do menu de configuração:
- Ligação Automática: Ao ativar isso, o SSH Tunnel será configurado para investigar e conectar-se automaticamente ao servidor SSH sempre que estiver disponível.
- Reconexão automática: Ativar esta opção alterna o protocolo de reconexão automática para que o SSH Tunnel restabeleça a conexão em caso de perda inesperada..
- Ativar lista GFW: Esta é uma característica específica para cidadãos chineses; ele permite o serviço de proxy SSH Tunnel somente para sites da Web especificamente bloqueados pelo Great Firewall da China.
- Ativar proxy de DNS: Isso é marcado por padrão e recomendamos que seja deixado marcado. Quando marcada, todas as suas solicitações DNS são roteadas pelo servidor SSH. Se você desmarcá-la, suas solicitações de DNS serão enviadas através da conexão de dados do seu telefone sem a proteção do túnel SSH. (por exemplo, alguém que estiver espionando você verá aonde você está indo, mas não os dados que você recebe do site que está visitando.)
Tem tudo isso definido para sua satisfação? Ótimo! Vamos testar a conexão agora.
Testando sua conexão de túnel SSH
A fim de estabelecer a nossa conexão SSH está funcionando, precisamos primeiro estabelecer o endereço IP do nosso dispositivo móvel. Abra o navegador da Web do seu telefone e faça uma pesquisa no Google por "o que é o meu ip". Seus resultados devem mostrar seu endereço IP de conexão de dados móveis da seguinte forma:
Esse é o endereço IP atribuído pelo nosso provedor de celular ao nosso smartphone Android. Embora tenhamos o SSH Tunnel configurado, ele ainda não está ativo e ainda estamos enviando todas as solicitações de DNS e solicitações de dados para fora..
Abrir o SSH Tunnel back up e, no topo, verificar Interruptor de túnel. Isso ativa o túnel SSH - na primeira vez que você fizer isso, você receberá um prompt da interface raiz / superusuário, confirmando que não há problema em conceder permissões de superusuário do SSH Tunnel. Tudo bem, vá em frente e marque a caixa Lembrar (caso contrário, você precisará autorizá-la toda vez que se conectar no futuro).
Dê um momento para se conectar, ele irá notificá-lo de que a conexão foi bem-sucedida. Se você deixou as notificações ativas no menu de configurações, você também verá um aviso na gaveta de notificação suspensa da seguinte forma:
Agora é hora de verificar se o navegador está roteando corretamente através do túnel SSH. Vá em frente e volte para o navegador da web e atualize sua consulta "what is my ip". Você deve ver um novo endereço IP que corresponda ao endereço IP do seu servidor SSH, assim:
Sucesso! Com um simples toque de um botão, trocamos todo o tráfego do nosso navegador para o servidor SSH remoto. Agora, tudo o que acontece entre o nosso navegador móvel (ou o telefone inteiro, se você o configurou para Global Proxy) é completamente criptografado para qualquer pessoa que esteja bisbilhotando a conexão entre o telefone e o ponto de saída no servidor SSH..
É isso aí! Agora você está navegando em movimento como um super-espião e ninguém pode se levantar em seus negócios. Se você está tentando manter os sniffers de pacotes na cafeteria vendo o seu login e tráfego no Facebook ou o boot de um governo corrupto do seu pescoço, você está no negócio.