Як перевернути Tether з Linux на Android за допомогою Gnirehtet

Перетворення Linux-інтернету на Android за допомогою Gniretet

Раніше, для того, щоб перенаправити інтернет з Linux на Android, потрібні були складні налаштування IP-таблиць, мостові з’єднання та інші технічно складні методи. Але завдяки наполегливій роботі розробників, цей процес став значно простішим.

Зустрічайте Gniretet! Це експериментальна програма, що функціонує як фоновий сервіс, дозволяючи створити робочу систему зворотного USB-модему. Завдяки їй, інтернет з Linux можна легко передати на ваш пристрій Android.

Важлива примітка: Перед тим, як використовувати цей посібник, переконайтеся, що ваш Android пристрій має Root-права. Без Root-доступу, більшість необхідних для роботи Gniretet операцій не будуть працювати належним чином.

Отримати Root-доступ на Android сьогодні значно простіше, ніж раніше. Для багатьох моделей пристроїв є детальні інструкції. Радимо вам ознайомитися з форумами XDA для отримання додаткової інформації.

Встановлення Android-інструментів

Зворотний модем Gniretet працює з використанням інструментів розробки Android. Перед тим, як продовжити, потрібно встановити їх на ваш Linux. На щастя, більшість дистрибутивів Linux полегшують цей процес. Відкрийте термінал та виконайте інструкції для вашої операційної системи.

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-дистрибутиви

Google забезпечує відмінну підтримку платформи Linux, завдяки чому Android SDK tools доступний для завантаження. Щоб встановити його, перейдіть на офіційну сторінку. Розпакуйте завантажений архів та дотримуйтесь інструкцій!

Встановлення Gniretet

Gniretet доступний на Github. Ви можете завантажити вихідний код та скомпілювати його. Однак, простіше завантажити вже готову версію з розділу випусків. Там є версії Java та Rust. Рекомендуємо завантажити версію Rust, оскільки вона не потребує встановлення середовища виконання Java.

Примітка: Якщо ви все ж таки вибрали версію Java, вам потрібно встановити Java Runtime Environment (JRE) на Linux.

Щоб завантажити останню версію Gniretet, відкрийте термінал та скористайтеся командою wget:

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

Або, для версії Java:

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

Після завантаження, розпакуйте архів Zip:

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

або

unzip gnirehtet-java-v2.2.1.zip

Відкрийте файловий менеджер та перейдіть до папки “Gnirehtet”. Скопіюйте файл `gnirehtet.apk` на свій Android пристрій та встановіть його.

У терміналі, скористайтеся командою `cd`, щоб перейти до папки з розпакованим Gniretet:

cd ~/gnirehtet-*

Налаштування Android для режиму модему

Для коректної роботи Gniretet, потрібно виконати кілька налаштувань в Android. Почніть з відкриття “Налаштувань”, перейдіть до розділу “Про телефон” та натискайте на “Номер збірки”, поки не з’явиться повідомлення “Ви стали розробником”.

Перейдіть до “Параметрів розробника”, знайдіть “Налагодження USB” та увімкніть його.

У терміналі, запустіть сервер Adb:

su -

або

sudo -s
adb start server

Розблокуйте ваш Android пристрій та поставте галочку “Завжди дозволяти” з’єднання ADB. Потім поверніться до термінала з запущеним ADB сервером та зупиніть його.

adb kill-server

Використання Gniretet

Gniretet створює з’єднання між вашим Linux ПК та Android пристроєм через USB. Щоб запустити з’єднання, відкрийте термінал та отримайте root-оболонку:

su -

або

sudo -s

З root-доступом, Gniretet може взаємодіяти з системою Linux та обмінюватися даними через ADB з Android. На цьому етапі, запустіть з’єднання:

./gnirehtet autorun

Після запуску з’єднання, на вашому Android з’явиться повідомлення про нове VPN-з’єднання. Розблокуйте його та підтвердіть підключення.

Після підтвердження, Gniretet почне маршрутизацію інтернет-з’єднання через USB безпосередньо на ваш Android пристрій.

Повторне підключення

Іноді USB з’єднання може бути розірвано. Якщо це станеться під час роботи Gniretet, з’єднання буде припинено. Проте, програма має функцію для швидкого відновлення з’єднання.

Для відновлення, відкрийте термінал, отримайте root-права (через su або sudo) та перейдіть в папку Gniretet:

cd ~/gnirehtet-*

Всередині папки, запустіть програму з ключем перезапуску:

sudo ./gnirehtet restart

Після завершення команди, розблокуйте Android пристрій та знову підтвердіть VPN-з’єднання, щоб завершити процес відновлення.

Зупинка з’єднання

Зворотний модем можна вимкнути у будь-який момент. Для цього, відкрийте новий термінал (залишаючи відкритим існуючий з’єднання) та виконайте наступне:

cd ~/gnirehtet-*
sudo ./gnirehtet stop

Іноді команда `stop` може не зупинити з’єднання. В такому випадку, доведеться примусово завершити процес Gniretet.

Щоб знищити Gniretet, знайдіть ідентифікатор процесу (PID) за допомогою команди `pidof`, а потім зупиніть процес за допомогою команди `kill`:

pidof ./gnirehtet
sudo kill -9 processnumber