Como reverter o Tether do Linux para o Android com o Gnirehtet

No passado, se você quisesse reverter o tether do Linux para o Android, era necessário usar tabelas de IP, conexões em ponte e outras ferramentas excessivamente complexas. No entanto, graças ao trabalho árduo de um desenvolvedor, o tethering reverso foi facilitado.

Apresentando Gniretet! É um programa experimental que funciona como um serviço em segundo plano para criar um sistema USB reverso de tethering funcional, permitindo que você reverta o tether do Linux para o Android.

Nota: antes de tentar seguir este guia, certifique-se de que seu dispositivo Android tenha acesso root. Sem acesso Root, muitas das operações que o Gniretet precisa não funcionarão corretamente.

Obter acesso root no Android é mais fácil do que nunca, e muitos dispositivos têm orientações detalhadas. Confira os Fóruns XDA para obter mais informações.

Instalar ferramentas do Android

O tethering reverso com GNirehtet funciona graças às ferramentas de desenvolvimento do Android. Antes de continuar com este guia, você deve instalá-lo no Linux. Felizmente, a maioria das distribuições Linux torna esse processo fácil. Abra um terminal e siga as instruções com base no seu sistema operacional.

  Como dividir arquivos PDF do terminal Linux usando PDFtk

Ubuntu

sudo apt install android-tools

Debian

sudo apt-get install android-tools

Arch Linux

sudo pacman -S android-tools

Fedora

sudo dnf install android-tools

OpenSUSE

sudo zypper in android-tools

Linux genérico

O Google suporta muito bem a plataforma Linux e, como resultado, o kit de ferramentas do Android SDK está prontamente disponível. Para instalá-lo em seu sistema operacional, acesse a página oficial. Extraia o arquivo baixado e siga as instruções dentro!

Instalar Gnirehtet

Gnirehtet está disponível no Github. O código-fonte está disponível para download e pronto para compilação. No entanto, é muito mais fácil acessar a página de lançamento e baixar uma versão pré-compilada do software. Na página de lançamento, há uma versão Java e uma versão Rust. Para facilitar o uso, recomendamos baixar a versão Rust, pois não requer a instalação de um Java Runtime Environment.

Nota: decidir usar a versão Java? Você precisará instalar o Java Runtime Environment no Linux.

Para baixar a versão mais recente do Gnirehtet, abra um terminal e use a ferramenta wget.

wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-rust-linux64-v2.2.1.zip

Alternativamente, baixe a versão Java, com:

wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-java-v2.2.1.zip

Depois que o Gnirehtet for baixado, use a ferramenta de descompactação para extrair o conteúdo do arquivo Zip.

unzip gnirehtet-rust-linux64-v2.2.1.zip

ou

unzip gnirehtet-java-v2.2.1.zip

Abra o gerenciador de arquivos, navegue até a pasta “Gnirehtet”. Copie o arquivo gnirehtet.apk para o seu dispositivo Android e instale-o.

  Como instalar o Calligra Office Suite no Linux

Abra um terminal e use o comando CD para mover para a pasta Gnirehtet extraída.

cd ~/gnirehtet-*

Configurar o Android para Tethering

A ferramenta Gnirehtet não funcionará sem alguns ajustes no sistema operacional Android. Comece abrindo “Configurações”. Vá para “Sobre o telefone” e toque no número da compilação até que uma notificação que diz “Agora você é um desenvolvedor” apareça.

Vá para as opções do desenvolvedor, procure a depuração “USB” e ative-a.

Abra um terminal e inicie um servidor Adb.

su -

ou

sudo -s
adb start server

Desbloqueie seu dispositivo Android e marque a caixa “sempre aceitar” conexões ADB. Em seguida, retorne ao terminal executando o servidor ADB e elimine-o.

adb kill-server

Usando o Gnirehtet

O Gnirehtet funciona criando uma conexão entre seu PC Linux e o dispositivo Android via USB. Para iniciar uma conexão, abra um terminal e obtenha um shell de root.

su -

ou

sudo -s

Com um shell de root, o aplicativo Gnirehtet pode funcionar com o sistema Linux sem problemas e se comunicar por ADB com o dispositivo Android. Neste ponto, inicie a conexão:

./gnirehtet autorun

Ao iniciar a conexão com o Gnirehtet, um novo prompt de conexão VPN aparecerá no seu dispositivo Android. Desbloqueie-o e aceite a conexão.

  Como ativar notificações nativas para o Google Chrome no Linux

Depois de aceitar a conexão VPN, o Gnirehtet iniciará com sucesso o roteamento de uma conexão com a Internet via USB diretamente para o dispositivo Android.

Reconectando

Às vezes, os cabos USB vêm desconectados. Caso isso aconteça enquanto o serviço Gnirehtet estiver em execução, a conexão será encerrada. Felizmente, o programa possui um recurso que os usuários podem executar para restaurar instantaneamente uma conexão perdida.

Para restaurar uma conexão, abra um terminal, obtenha um shell de root com su ou execute com sudo.

cd ~/gnirehtet-*

Dentro da pasta Gnirehtet, execute o programa com o sinalizador de reinicialização. Isso reiniciará o sistema de tethering reverso.

sudo ./gnirehtet restart

Quando o comando terminar de ser executado, desbloqueie o dispositivo Android e aceite novamente a conexão VPN para finalizar o processo de reinicialização.

Parar conexão

O cabo reverso pode ser desligado a qualquer momento. Para isso, abra um novo terminal (deixe o existente executando a conexão aberta) e faça o seguinte:

cd ~/gnirehtet-*

sudo ./gnirehtet stop

Às vezes, executar o comando stop nem sempre mata a conexão de tether reverso. Se isso acontecer, você precisará forçar o Gnirehtet a sair.

Para matar o Gnirehtet, encontre o ID do processo usando pidof, então pare o programa com o comando kill.

pidof ./gnirehtet

sudo kill -9 processnumber