Entware keenetic что это
Добавляем поддержку репозитория Entware на Android-боксе
Entware — это менеджер ПО для встраиваемых систем, который открывает доступ к огромному количеству (более 1500) пакетов программ для Linux, расширяя возможности устройства, на котором он установлен. Чаще всего поддержкой Entware обладают продвинутые маршрутизаторы.
Зачем и кому вообще может понадобиться Entware на Android-боксе? Конечно, всё это для гиков и пытливых пользователей. Для тех, кто ищет, как ещё можно расширить функциональность своего бокса, как переложить определённые задачи на Android-бокс. Возьмите для простого примера топовые маршрутизаторы Keenetic Ultra или Keenetic Giga, которые сделаны на достаточно мощном SoC MediaTek MT7621AT (2 ядра MIPS1004Kc 880 МГц). А у вас в тумбочке под ТВ может простаивать большую часть времени копеечный китайский бокс с SoC Amlogic S912 (8 ядер ARM Cortex-A53 до 1,5 ГГц). Торрент-клиент Transmission на Keenetic Ultra выжмет 6-11 Мбайт/с максимум. А тот же Transmission, установленный из Entware, на боксе легко выжмет под 30 Мбайт/с, ограничиваясь лишь скоростью интерфейса USB 2.0. А может вам нужна удалённая система с доступом по SSH для простых экспериментов. Например, с интерпретатором Python, Ruby, PHP, Perl. Бокс легко с этим справится.
Никаких изменений в самой системе Android (TV) не произойдёт. Вам не нужно будет отдельно ставить Linux на бокс, специально перезагружать его в эту систему. Вы буду продолжать пользоваться Android (TV), как и раньше. А в фоне появится возможность использовать инструменты из Entware.
Содержание
Полная инструкция по установке
Разворачивать Entware будем во внутренней пользовательской памяти бокса. Чаще всего она доступна по пути «/data/media/0». При необходимости используйте другой путь или внешний носитель (он должен быть с файловой системой EXT3/4).
Установите программу Terminal Emulator. И запустите её.
Создайте папку entware внутри пользовательской памяти:
Для Entware нужны будут системные папки /bin и /opt, которых у вас нет. В bin будет находится ссылка на файл /system/bin/sh, а opt будет ссылаться на папку entware. Для их создания нужно будет временно разрешить запись в корневой папке.
Теперь вам нужно самостоятельно решить, для какой архитектуры устанавливать Entware — ARMv7 (32-разрядная) или AArch64 (64-разрядная). Зависит от того, какая у вас операционная система на боксе. Например, современные системы для Amlogic (как и процессоры) 64-разрядные. Можете спокойно выбрать универсальный вариант ARMv7, он будет работать в обоих случаях.
или
После установки нужно сделать небольшую корректировку. Некоторым программам из Entware может понадобиться файл /etc/resolv.conf, которого у вас в системе нет. Мы создадим ссылку на этот файл.
Установите SSH-сервер (dropbear) и запустите основной скрипт Entware:
Почти всё готово. Entware уже полноценно работает. Осталось только сделать скрипт 01entware для init.d, чтобы службы Entware запускались автоматически при старте системы. Terminal Emulator можно закрывать, он нам больше не нужен, как и прямой доступ к боксу.
Подключитесь по SSH к боксу. Для Windows можете использовать популярный клиент PuTTY. Пользователь: root, пароль: 12345. Пароль можете изменить с помощью команды passwd.
Нам нужно создать файл 01entware в папке init.d. Место нахождения этой папки зависит от вашей системы. Самый простой вариант, если у вас в системе используется SuperSU, это папка /system/su.d. Выставите разрешение на запуск для этого скрипта. Если у вас прошивка Ugoos AM3 2.x, то просто в настройках системы включите «Пользовательские скрипты» (Настройки > Системные > Пользовательские скрипты), а сам скрипт положите в папку init.d в корне пользовательской памяти. Дополнительные разрешения выставлять не нужно. Предположим, что у вас в системе есть SuperSU, мы воспользуемся su.d.
Вставьте содержимое (Shift + Insert):
Сохраните изменения (F2) и выйдите из редактора (F10).
Простая инструкция по установке
Загрузите архив entware_armv7.tar.gz и поместите его в корень пользовательской памяти вашего бокса (распаковывать не надо). Это базовая, уже развёрнутая система Entware (armv7sf-k3.2) с установленными пакетами wget и dropbear (SSH). Загрузите скрипт 01entware. При необходимости измените путь к пользовательской памяти MEDIA_PATH внутри скрипта. Поместите скрипт в папку init.d. Место нахождения этой папки зависит от вашей системы. Самый простой вариант, если у вас в системе используется SuperSU, это папка /system/su.d (воспользуйтесь любым файловым менеджером с поддержкой root). Выставите разрешение на запуск для этого скрипта. Если у вас прошивка Ugoos AM3 2.x, то просто в настройках системы включите «Пользовательские скрипты» (Настройки > Системные > Пользовательские скрипты), а сам скрипт положите в папку init.d в корне пользовательской памяти. Дополнительные разрешения выставлять не нужно.
Перезагрузите бокс. Готово, Entware у вас на боксе. Архив entware_armv7.tar.gz будет удалён автоматически. Если архив не удалён, значит вы выбрали неверную папку init.d (скрипты из которой не запускаются системой) или указали неверный путь MEDIA_PATH.
Подключитесь по SSH к боксу. Для Windows можете использовать популярный клиент PuTTY. Пользователь: root, пароль: 12345. Пароль можете изменить с помощью команды passwd.
Может установить Python:
Удаление Entware
Пример использования
Простой пример — Transmission. Подключитесь по SSH к боксу. Установите Transmission (демон и web-интерфейс):
Установите сертификаты для трекеров, которые используют HTTPS:
Установите mc для удобного редактирования файлов:
На подключённом к боксу диске создайте папку, в которую будут загружаться торренты — Torrents. Идентификатор диска (или путь в целом) у вас будет свой (используйте буфер обмена, если путь сложный):
Откройте конфигурационный файл Transmission:
Параметров у Transmission много. На досуге вы все сможете изучить и изменить (в том числе и через графическую оболочку на других устройствах). Для начала измените самые необходимые параметры:
Вставлять из буфера в mcedit можно с помощью Shift + Insert. Сохраните изменения (F2) и выйдите из редактора (F10).
Осталось немного изменить скрипт запуска Transmission, чтобы демон запускался после того, как в системе будет смонтирован диск (топорно, но для примера сойдёт — вы потом напишите правильный способ), избегая лишних хлопот, например, когда есть незаконченные загрузки:
После первой строчки добавьте следующие команды, заменив путь к вашей папке с торрентами на диске:
Сохраните изменения и выйдите из редактора.
Запустите Transmission (после перезагрузки бокса он будет запускаться автоматически):
Готово. Можете с любого устройства (в том числе и смартфона) подключаться к Transmission через web-интерфейс (http://IP_БОКСА:9091/transmission/web/ ). Можете в Windows, например, на ноутбуке использовать Transmission Remote GUI. Практически для всех платформ есть клиент для удалённого управления Transmission, т.к. программа очень популярная.
С помощью браузера подключитесь к вашему боксу (порт 19999) и увидите детальную статистику по ресурсам бокса с диаграммами и графиками.
Пошаговая стратегия или установка Entware и DNSCrypt на роутеры Zyxel Keenetic
Что понадобится и предварительные действия
Флешка может быть любой. В моем случае это поддельный Kingston, в котором из 8Гб реально нашлось только 256Мб
Мой опытный образец Zyxel Keenetic DSL с прошивкой 2.05. Без повышения версии прошивки установка Entware на нём преждевременно прекращается с сообщением Opkg::Manager: /opt/etc/init.d/doinstall: FATAL: kernel too old.
Обновляем прошивку на версию 2.11 из канала legacy
Соединяемся с роутером
telnet your_router_ip
вводим логин/пароль админ юзера
Установка Entware
Берём любую чистую флешку. Я форматировал в FAT32. У флешки обязательно должна быть метка тома (любая, кроме пустой). Вставляем её в роутер.
Если у вас еще не настроен FTP, то заходим в Applications->FTP, включаем FTP сервер, разрешаем анонимный доступ (или не разрешаем, тогда нужно указать, каким пользователям роутера разрешено пользоваться FTP)
Создаём каталог install и заходим в него
Копируем установщик из п 2.1 в каталог install
Заходим в Applications->OPKG, Ставим галку «Enable», в «Use external storage» выбираем метку нашей флешки, жмём кнопку «Apply»
Заходим в Entware по SSH
Устанавливаем DNSCrypt2
opkg update
opkg install dnscrypt-proxy2
Устанавливаем немного дополнительных пакетов
opkg install ca-certificates cron iptables
Редактируем /opt/etc/dnscrypt-proxy.toml
нас интересует строка
listen_addresses = [‘127.0.0.1:53’]
разрешаем слушать любые адреса:
listen_addresses = [‘0.0.0.0:53’]
Стартуем DNSCrypt2
/opt/etc/init.d/S09dnscrypt-proxy2 start
Переподключаемся к роутеру (по WiFi или проводу) Заодно перепроверяем настройки подключения к роутеру своих устройств, чтобы в них не было принудительно установленных DNS-серверов
Здесь всё (почти работает). Но утечки всё еще возможны. Поэтому мы сейчас запретим весь трафик, который уходит наружу через 53 порт.
Для чего логинимся в Entware по ssh и создаем скрипт
/opt/etc/ndm/netfilter.d/10-ClientDNS-Redirect.sh
ВНИМАНИЕ! Замените 10.1.1.1 на IP вашего роутера
ВНИМАНИЕ! Замените 10.1.1.1 на IP вашего роутера
Делаем 10-ClientDNS-Redirect.sh исполняемым:
chmod +x /opt/etc/ndm/netfilter.d/10-ClientDNS-Redirect.sh
Ребутим роутер (без этого пункта https://browserleaks.com/dns периодически светил мои родные DNS сервера)
Проверяемся на утечки.
Отныне используемые DNS сервера будут находится рандомно по всему миру, а трафик к ним будет шифроваться.