Jak odwrócić uwięzi z Linuksa na Androida z Gnirehtet

Photo of author

By maciekx

W przeszłości, gdy chciałeś zrealizować odwrotne tethering z systemu Linux do urządzenia z Androidem, był to proces skomplikowany i wymagał używania tablic IP, połączeń mostkowych oraz innych trudnych narzędzi. Obecnie, dzięki zaangażowaniu programisty, proces ten został znacznie uproszczony.

Poznaj Gnirehtet! To eksperymentalny program, który działa jako usługa w tle, tworząc efektywny system odwrotnego tetheringu USB, umożliwiający połączenie z Linuksa do Androida.

Ważna uwaga: zanim rozpoczniesz, upewnij się, że Twoje urządzenie z Androidem ma uzyskany dostęp do roota. Bez tego dostęp do niektórych funkcji Gnirehtet nie będzie możliwy.

Uzyskanie dostępu do roota na Androidzie jest prostsze niż kiedykolwiek wcześniej, a wiele modeli ma dostępne szczegółowe instrukcje. Dodatkowe informacje znajdziesz na forach XDA.

Instalacja narzędzi Android

Aby odwrotne tethering z GNirehtet mogło działać, konieczne jest zainstalowanie odpowiednich narzędzi programistycznych Androida w systemie Linux. Na szczęście proces ten jest prosty w większości dystrybucji Linuksa. Otwórz terminal i postępuj zgodnie z instrukcjami zależnymi od Twojego systemu operacyjnego.

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

Ogólny Linux

Google oferuje doskonałe wsparcie dla platformy Linux, co sprawia, że zestaw narzędzi Android SDK jest łatwo dostępny. Aby zainstalować go w swoim systemie, odwiedź oficjalną stronę. Wypakuj pobrane archiwum i postępuj zgodnie z instrukcjami w nim zawartymi!

Instalacja Gnirehtet

Gnirehtet jest dostępny na platformie Github. Można pobrać kod źródłowy i skompilować go samodzielnie, jednak znacznie prostszym rozwiązaniem jest pobranie wstępnie skompilowanej wersji oprogramowania z zakładki wydania. Na stronie dostępne są dwie wersje: Java i Rust. Dla wygody użytkowników zaleca się pobranie wersji Rust, ponieważ nie wymaga instalacji Java Runtime Environment.

Jeśli zdecydujesz się na wersję Java, pamiętaj, aby zainstalować Java Runtime Environment w systemie Linux.

Aby pobrać najnowszą wersję Gnirehtet, otwórz terminal i użyj narzędzia wget:

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

Alternatywnie, możesz pobrać wersję Java:

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

Po zakończeniu pobierania Gnirehtet, skorzystaj z narzędzia do rozpakowywania, aby wyodrębnić zawartość archiwum Zip:

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

lub

unzip gnirehtet-java-v2.2.1.zip

Otwórz menedżera plików i przejdź do folderu „Gnirehtet”. Skopiuj plik gnirehtet.apk na urządzenie z Androidem i zainstaluj go.

Następnie otwórz terminal i przejdź do wyodrębnionego folderu Gnirehtet:

cd ~/gnirehtet-*

Konfiguracja Androida do tetheringu

Aby Gnirehtet mogło działać, konieczne jest wprowadzenie kilku zmian w ustawieniach systemu Android. Rozpocznij od otwarcia „Ustawień”. Znajdź sekcję „Informacje o telefonie” i wielokrotnie dotknij numeru kompilacji, aż pojawi się powiadomienie mówiące „Jesteś teraz programistą”.

Następnie przejdź do opcji programisty, znajdź opcję „Debugowanie USB” i włącz ją.

Otwórz terminal i uruchom serwer ADB:

su -

lub

sudo -s
adb start-server

Odblokuj swoje urządzenie z Androidem i zaznacz opcję „zawsze akceptuj” dla połączeń ADB. Następnie wróć do terminala z uruchomionym serwerem ADB i go zatrzymaj:

adb kill-server

Korzystanie z Gnirehtet

Gnirehtet działa poprzez tworzenie połączenia między komputerem z systemem Linux a urządzeniem z Androidem za pośrednictwem USB. Aby rozpocząć połączenie, otwórz terminal i uzyskaj dostęp do powłoki roota:

su -

lub

sudo -s

Dzięki uzyskanej powłoce roota, aplikacja Gnirehtet może efektywnie współpracować z systemem Linux oraz komunikować się przez ADB z urządzeniem z Androidem. Rozpocznij połączenie, wpisując:

./gnirehtet autorun

Po nawiązaniu połączenia, na urządzeniu z Androidem pojawi się monit o akceptację połączenia VPN. Odblokuj go i zaakceptuj połączenie.

Po zaakceptowaniu połączenia VPN, Gnirehtet skutecznie zacznie kierować połączenie internetowe z USB bezpośrednio do Twojego urządzenia z Androidem.

Ponowne łączenie

Czasami kable USB mogą się odłączać. W takim przypadku, jeśli usługa Gnirehtet jest aktywna, połączenie zostanie przerwane. Na szczęście program posiada funkcję, która pozwala użytkownikom na szybkie przywrócenie utraconego połączenia.

Aby przywrócić połączenie, otwórz terminal, uzyskaj powłokę roota za pomocą su lub uruchom z sudo:

cd ~/gnirehtet-*

W folderze Gnirehtet uruchom program z flagą restartu, co spowoduje ponowne uruchomienie systemu odwrotnego tetheringu:

sudo ./gnirehtet restart

Po zakończeniu polecenia odblokuj urządzenie z Androidem i ponownie zaakceptuj połączenie VPN, aby zakończyć proces ponownego uruchamiania.

Zatrzymywanie połączenia

Odwrotne tethering można wyłączyć w dowolnym momencie. W tym celu otwórz nowy terminal (pozostawiając otwarty istniejący z aktywnym połączeniem) i wykonaj następujące kroki:

cd ~/gnirehtet-*
sudo ./gnirehtet stop

Czasami polecenie stop nie przerywa połączenia odwrotnego tetheringu. W takim przypadku będziesz musiał wymusić zatrzymanie Gnirehtet.

Aby zabić Gnirehteta, znajdź jego identyfikator procesu używając polecenia pidof, a następnie zakończ program poleceniem kill:

pidof ./gnirehtet
sudo kill -9 processnumber

newsblog.pl