Перетворення 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