V minulosti, pokud jste chtěli reverzní tether z Linuxu na Android, museli jste používat IP tabulky, přemostěná připojení a další příliš složité nástroje. Díky tvrdé práci vývojáře se však reverzní tethering zjednodušil.
Představujeme Gniretet! Je to experimentální program, který funguje jako služba na pozadí pro vytvoření fungujícího systému reverzního tetheringu přes USB, který vám umožní reverzní tether z Linuxu na Android.
Poznámka: Než se pokusíte postupovat podle tohoto průvodce, ujistěte se, že vaše zařízení Android má přístup root. Bez přístupu root nebude mnoho operací, které Gniretet potřebuje, fungovat správně.
Získání přístupu root v systému Android je snazší než kdy jindy a mnoho zařízení má podrobné návody. Další informace najdete na fórech XDA.
Table of Contents
Nainstalujte nástroje Android
Reverzní tethering s GNirehtet funguje díky vývojovým nástrojům pro Android. Než budete pokračovat v této příručce, musíte ji nainstalovat do systému Linux. Naštěstí většina distribucí Linuxu tento proces usnadňuje. Otevřete terminál a postupujte podle pokynů na základě vašeho operačního systému.
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
Obecný Linux
Google podporuje platformu Linux velmi dobře a v důsledku toho je sada nástrojů Android SDK snadno dostupná. Chcete-li jej nainstalovat do operačního systému, přejděte na oficiální stránku. Rozbalte stažený archiv a postupujte podle pokynů uvnitř!
Nainstalujte Gnirehtet
Gnirehtet je k dispozici na Github. Zdrojový kód je ke stažení a připraven ke kompilaci. Je však mnohem jednodušší přejít na stránku vydání a stáhnout si předkompilovanou verzi softwaru. Na stránce vydání je verze Java a verze Rust. Pro snadné použití doporučujeme stáhnout verzi Rust, protože nevyžaduje instalaci Java Runtime Environment.
Poznámka: rozhodnete se použít verzi Java? Budete muset nainstalovat Java Runtime Environment na Linuxu.
Chcete-li stáhnout nejnovější verzi Gnirehtetu, otevřete terminál a použijte nástroj wget.
wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-rust-linux64-v2.2.1.zip
Případně si stáhněte verzi Java pomocí:
wget https://github.com/Genymobile/gnirehtet/releases/download/v2.2.1/gnirehtet-java-v2.2.1.zip
Jakmile je Gnirehtet stažen, použijte nástroj pro rozbalení k rozbalení obsahu archivu Zip.
unzip gnirehtet-rust-linux64-v2.2.1.zip
nebo
unzip gnirehtet-java-v2.2.1.zip
Otevřete správce souborů, přejděte do složky „Gnirehtet“. Zkopírujte soubor gnirehtet.apk do svého zařízení Android a nainstalujte jej.
Otevřete terminál a pomocí příkazu CD se přesuňte do extrahované složky Gnirehtet.
cd ~/gnirehtet-*
Nakonfigurujte Android pro Tethering
Nástroj Gnirehtet nebude fungovat bez pár úprav operačního systému Android. Začněte otevřením „Nastavení“. Přejděte na „O telefonu“ a klepněte na číslo sestavení, dokud se nezobrazí oznámení „Nyní jste vývojář“.
Přejděte do Možnosti vývojáře, vyhledejte ladění „USB“ a povolte jej.
Otevřete terminál a spusťte server Adb.
su -
nebo
sudo -s
adb start server
Odemkněte své zařízení Android a zaškrtněte políčko „vždy přijímat“ připojení ADB. Poté se vraťte k terminálu se serverem ADB a ukončete jej.
adb kill-server
Pomocí Gnirehtet
Gnirehtet funguje tak, že vytvoří spojení mezi vaším počítačem se systémem Linux a zařízením Android přes USB. Chcete-li zahájit připojení, otevřete terminál a získejte root shell.
su -
nebo
sudo -s
S kořenovým shellem může aplikace Gnirehtet bez problémů pracovat se systémem Linux a komunikovat přes ADB se zařízením Android. V tomto okamžiku zahajte připojení:
./gnirehtet autorun
Po zahájení připojení s Gnirehtet se na vašem zařízení Android objeví výzva k novému připojení VPN. Odemkněte jej a přijměte připojení.
Po přijetí připojení VPN Gnirehtet úspěšně zahájí směrování internetového připojení přes USB přímo do zařízení Android.
Opětovné připojení
Někdy jsou kabely USB odpojeny. V případě, že k tomu dojde při spuštěné službě Gnirehtet, připojení se ukončí. Naštěstí má program funkci, kterou mohou uživatelé spustit a okamžitě obnovit ztracené připojení.
Chcete-li obnovit připojení, otevřete terminál, získejte root shell pomocí su nebo spusťte sudo.
cd ~/gnirehtet-*
Uvnitř složky Gnirehtet spusťte program s příznakem restartu. Tím se restartuje systém zpětného tetheringu.
sudo ./gnirehtet restart
Po dokončení příkazu odemkněte zařízení Android a znovu přijměte připojení VPN, abyste dokončili proces restartování.
Zastavit připojení
Reverzní lanko lze kdykoli vypnout. Chcete-li to provést, otevřete nový terminál (stávající, na kterém běží připojení, nechte otevřený) a proveďte následující:
cd ~/gnirehtet-* sudo ./gnirehtet stop
Někdy spuštění příkazu stop ne vždy ukončí připojení zpětného tetheru. Pokud k tomu dojde, budete muset přinutit Gnirehtet, aby skončil.
Chcete-li zabít Gnirehtet, najděte ID procesu pomocí pidof a zastavte program pomocí příkazu kill.
pidof ./gnirehtet sudo kill -9 processnumber