Skip to content

Releases: saymer-alt/keenetic-auto-setup

KAS Web: optional experimental IPKs (c3cc2ce)

Choose a tag to compare

Optional experimental KAS Control Center IPKs: tabbed UI, authentication settings, configurable port, compiled panel version and read-only component inventory. Includes a project GitHub link.

Fresh IPK installations default to port8081. Authentication and Home-only restriction are optional/off by default. Entware mode verifies the existing root password without storing or changing it. A separate panel password uses login kas.

Install only by choice on a test device. Existing manual panel installations must be removed by their original helper before IPK installation; preserve/save the desired old port first. The package refuses foreign/manual files. Start the panel explicitly after install/update; no KAS auto-install. User settings and KAS core are preserved on package removal.

Source: c3cc2ce. The release tag points at the publication workflow commit; each package BUILD_INFO records the tested binary source. CI checks include real Entware opkg offline-root transactions, Go/race/Node, ARM64/MIPSel CPU emulation and existing native KeeneticOS importer/filter/lifecycle checks. These do not constitute physical acceptance of these IPKs on every architecture.

This release contains ONLY the optional panel, not the laboratory kas-core package. Existing KAS script installations may show the core bundle as absent and watchdog as unrecorded; this does not mean their services are stopped. The overview now reports executable-matched process evidence and sourced versions (Mihomo local API; MagiTrickle package metadata). Doctor displays validated summary findings/counts instead of generic command completion. Script-installed watchdog shows its actual digest. Future package ordering uses a numeric CI run counter, so updating from either prior 0.0.0~git package does not need --force-downgrade.

Instructions: https://github.com/saymer-alt/keenetic-auto-setup/blob/c3cc2ceb417a2fa56eee72d3d2cec277c2564cfa/web/control-center/packaging/README.md
Review: #267

KAS Web: optional experimental IPKs (894a524)

Choose a tag to compare

Optional experimental KAS Control Center IPKs: tabbed UI, authentication settings, configurable port, compiled panel version and read-only component inventory. Includes a project GitHub link.

Fresh IPK installations default to port8081. Authentication and Home-only restriction are optional/off by default. Entware mode verifies the existing root password without storing or changing it. A separate panel password uses login kas.

Install only by choice on a test device. Existing manual panel installations must be removed by their original helper before IPK installation; preserve/save the desired old port first. The package refuses foreign/manual files. Start the panel explicitly after install/update; no KAS auto-install. User settings and KAS core are preserved on package removal.

Source: 894a524. The release tag points at the publication workflow commit; each package BUILD_INFO records the tested binary source. CI checks include real Entware opkg offline-root transactions, Go/race/Node, ARM64/MIPSel CPU emulation and existing native KeeneticOS importer/filter/lifecycle checks. These do not constitute physical acceptance of these IPKs on every architecture.

This release contains ONLY the optional panel, not the laboratory kas-core package. Existing KAS script installations may show the core bundle as absent and watchdog as unrecorded; this does not mean their services are stopped. Doctor command-completion wording remains unchanged.

Instructions: https://github.com/saymer-alt/keenetic-auto-setup/blob/894a5248d53d983c5d66e8ea7bcce5b9a2f10e23/web/control-center/packaging/README.md
Review: #267

KAS Web: MT updates, panel links and themes (66d976e)

Choose a tag to compare

Экспериментальная KAS Web 0.0.1~test11.66d976e83ee1-1.

Включает изменения test10: ручную проверку и обновление MagiTrickle через подключённые репозитории opkg; раздельные сведения о работающем Mihomo, пакете opkg и записи KAS. Добавлены ссылки на MagiTrickle и MetaCubeXD в новых вкладках, кнопка генератора в «Конфигурации» и выбор «Как в системе / Светлая / Тёмная» в настройках.

Ссылки используют текущий HTTP-адрес роутера и стандартные порты 8080/9090, не передают пароль, query или hash. Через внешний HTTPS reverse proxy локальные адреса не угадываются. Для изменённых портов используйте фактические адреса вручную. Генератор открывается как существующее HTTPS Pages-приложение, не включается в IPK. Тема сохраняется только в браузере; не меняет настройки роутера.

Проверки обновлений запускаются вручную. Обновление MT требует отдельного подтверждения, обновляет только magitrickle и его штатные зависимости, перезапускает сервис; возможен временный перерыв DNS/маршрутизации. Автоматического транзакционного отката MT нет. Закрытие браузера не прерывает установку. При ошибке проверяйте фактическое состояние и Doctor. Обновление MT отказывает при остановленном/неподтверждённом сервисе и uptime до 300 секунд.

Все семь exact-source проверок GitHub прошли; IPK скопированы из успешной сборки без пересборки. Локально проверены 51 тест интерфейса, Chromium с ручными/автоматическими темами и перезагрузкой страницы, Go и восемь тестов IPK. Обновление MT и оба изменённых conffiles проверены фактическим Entware opkg в изолированном каталоге с локальным feed; процессы/hooks этого сценария синтетические и не заменяют аппаратную приёмку MT Web update.

Обычный Doctor и отчёт сохранены. Полноценные новые диагностические скрипты ещё предстоит разработать на основе накопленных наработок, затем подключить к Web: #270. Новая проверка конкретного сайта в этой версии не реализована.

Пакет можно установить поверх test9 или test10 обычным opkg install, без force-downgrade. Затем явно запустить S98kas-control-center start и обновить страницу Ctrl+F5. Сохранённые настройки панели остаются. Это только необязательная панель, без лабораторного kas-core; main/stable/latest не изменяются.

Исходники бинарного файла: 66d976e. Тег релиза указывает на коммит публикации; BUILD_INFO внутри IPK фиксирует проверенные исходники.
Изменения: #271
Инструкция: https://github.com/saymer-alt/keenetic-auto-setup/blob/66d976e83ee19820acb949cb68ae923321adbcca/web/control-center/packaging/README.md

KAS Web: MagiTrickle updates (57ea99c)

Pre-release

Choose a tag to compare

Экспериментальная KAS Web 0.0.1~test10.57ea99c75fa5-1.

Добавлены отдельные кнопки проверки и обновления MagiTrickle через подключённые репозитории opkg. Проверка вручную обновляет индексы и читает установленный пакет и list-upgradable. Подтверждённое применение повторяет проверку, устанавливает только magitrickle со штатными зависимостями и перезапускает его сервис. Не используется установка KAS целиком или обновление всех пакетов.

Во время обновления MT возможен перерыв DNS и маршрутизации. Его пакетный postinst может сам перезапустить сервис. Автоматического транзакционного отката MT нет: при ошибке проверяйте фактическое состояние и Doctor. Изменённые conffiles сохраняет opkg; панель сверяет содержимое двух конфигов, установленную версию и работающий процесс. Это не проверка доступа клиентов. Применение отказывает при остановленном/неподтверждённом сервисе и uptime до 300 секунд. Не перезагружайте роутер во время операции.

Mihomo теперь раздельно показывает работающую версию API, сведения opkg и записанный выпуск штатного обновления KAS. Совпадающий или старый выпуск не предлагается к установке; сведения opkg не подменяют версию бинарника. При отсутствии записи KAS выпуск пакета помечается как неподтверждённый. Старая запись KAS связывает версию, архитектуру и размер, а не криптографический хеш.

Оба обновления требуют явного подтверждения и занимают общий слот панели. Установка не прерывается при закрытии браузера. Отмена проверки метаданных ограничена по времени и завершает её дочерний загрузчик. Старый успешный результат не выдаётся за новую операцию после потери HTTP-ответа.

Пакеты скопированы без пересборки из успешного exact-source CI. Проверены Go/race/vet, 44 теста интерфейса, Chromium, фактический Entware opkg с изолированным HTTP feed/IPK (обновление, no-op, оба изменённых conffiles), существующие тесты IPK и нативные KeeneticOS сценарии импорта/фильтров/KAS. Процессы/uptime/hooks нового MT сценария синтетические; физическая приёмка обновления MT через Web ещё не проведена.

Обновляйте существующий IPK панели обычным opkg install и явно запускайте S98kas-control-center start. Сохранённые настройки остаются. Этот релиз содержит только необязательную панель, без лабораторного kas-core; main/stable/latest не изменяются. Watchdog и self-update панели пока не добавлены.

Источник бинарника: 57ea99c. Тег указывает на отдельный коммит публикации; BUILD_INFO внутри IPK фиксирует проверенные исходники. Обновление test9 → test10 не требует force-downgrade.

Для проверки на KN-1010 сначала обновите только панель, выполните Ctrl+F5 и проверьте версии Mihomo и MT отдельными кнопками. Перед реальным обновлением MT учитывайте возможный перерыв DNS/маршрутизации.

Инструкция: https://github.com/saymer-alt/keenetic-auto-setup/blob/57ea99c75fa59ce9165280b9beea0e93fd415fe9/web/control-center/packaging/README.md
Изменения: #269

KAS Web: manual Mihomo updates (08ae70e)

Choose a tag to compare

Экспериментальная KAS Web 0.0.1~test9.08ae70e37291-1: ручная проверка обновлений Mihomo и запуск штатного update-mihomo.sh после подтверждения в панели. Автоматических проверок и обновлений нет.

Обновление панели устанавливается через opkg поверх предыдущего IPK. Сохранённые настройки панели сохраняются. После установки запустите панель явно: sh /opt/etc/init.d/S98kas-control-center start. Порт новой установки — 8081. Этот релиз содержит только необязательную панель, без лабораторного kas-core.

Проверка обновлений обращается к фиксированному каналу saymer-alt/entware-go:latest. Применение использует встроенную точную копию штатного скрипта без произвольных команд, URL и аргументов. Скрипт сохраняет штатные блокировки, правило одного Mihomo, проверку конфигурации и восстановление при предусмотренных ошибках. Закрытие браузера не останавливает операцию. Во время обновления Mihomo может временно остановиться; не перезагружайте роутер.

В интерфейсе различаются изменение бинарного файла, отсутствие изменений и неподтверждённый результат. При ошибке панель не утверждает, что восстановление прошло успешно: проверьте состояние сервиса и Doctor.

Исходники бинарного файла: 08ae70e. Тег релиза указывает на отдельный коммит публикации; BUILD_INFO внутри каждого пакета фиксирует проверенные исходники. Пакеты скопированы без пересборки из успешного CI. Все семь проверок этих исходников прошли: Go/race/Node, ARM64/MIPSel CPU, IPK/lifecycle и нативные KeeneticOS сценарии импорта, фильтрации и установки KAS. Новое обновление через HTTP дополнительно проверено на полном штатном скрипте в изолированных файловых сценариях: замена, отсутствие обновления, ошибка запуска с восстановлением старого бинарного файла и сервиса. Эти сценарии используют синтетические PID и не заменяют аппаратную приёмку нового обновления через Web.

Известное ограничение: метаданные релиза с активами в состоянии starter отклоняются строже, чем в штатном CLI. Обновление MagiTrickle, watchdog и самой панели через Web в этот релиз не входит.

Проверка на KN-1010: обновите только IPK панели, выполните жёсткое обновление страницы, проверьте версию test9 и кнопку «Проверить обновления». Если доступная версия Mihomo старее установленной, применение должно быть недоступно. Не требуется понижать Mihomo ради теста.

Инструкция: https://github.com/saymer-alt/keenetic-auto-setup/blob/08ae70e37291d90c3807b2ac231c7a9e87fd1372/web/control-center/packaging/README.md
Изменения: #268

KAS Web: KN-1010 UI test 66ab147

Pre-release

Choose a tag to compare

Тестовый комплект KAS Web для Keenetic KN-1010 (MIPSel softfloat).
Две кнопки фильтра: Исключить выбранные и Снять фильтр, с подтверждением без отдельного шага применения.
Исправлено определение установленного magitrickled; индикация остаётся проверкой наличия файла.
Home-only ограничение выключено по умолчанию: доступ из SSTP/L2TP и других подсетей определяется firewall/маршрутами KeeneticOS.
Ограничение можно включить в панели; настройка сохраняется. Слушатель остаётся на адресе Home, без wildcard/WAN-привязки.
Исходная ревизия: 66ab147, Draft PR #263.
Комплект перенесён из успешного Actions artifact 40697645736 без пересборки.
Архив содержит панель, установочный скрипт, BUILD_INFO, инструкцию и SHA256SUMS.
Это аппаратная тестовая сборка, не стабильный релиз и не подтверждение приёмки KN-1010.
Тег указывает на коммит публикации; исходная ревизия бинарника отдельно закреплена выше и в BUILD_INFO.
main/stable не изменяются; автоматической установки нет.

KAS Web: KN-1010 SSTP test 58ff21d

Pre-release

Choose a tag to compare

Тестовый комплект KAS Web для Keenetic KN-1010 (MIPSel softfloat).
Home-only ограничение выключено по умолчанию: доступ из SSTP/L2TP и других подсетей определяется firewall/маршрутами KeeneticOS.
Ограничение можно включить в панели; настройка сохраняется. Слушатель остаётся на адресе Home, без wildcard/WAN-привязки.
Исходная ревизия: 58ff21d, Draft PR #263.
Комплект перенесён из успешного Actions artifact 40691209145 без пересборки.
Архив содержит панель, установочный скрипт, BUILD_INFO, инструкцию и SHA256SUMS.
Это аппаратная тестовая сборка, не стабильный релиз и не подтверждение приёмки KN-1010.
Тег указывает на коммит публикации; исходная ревизия бинарника отдельно закреплена выше и в BUILD_INFO.
main/stable не изменяются; автоматической установки нет.

KAS Web: KN-1010 test ef63bcc

Pre-release

Choose a tag to compare

Тестовый комплект KAS Web для Keenetic KN-1010 (MIPSel softfloat).
Исходная ревизия: ef63bcc, Draft PR #263.
Комплект перенесён из успешного Actions artifact 40686364136 без пересборки.
Архив содержит панель, установочный скрипт, BUILD_INFO, инструкцию и SHA256SUMS.
Это аппаратная тестовая сборка, не стабильный релиз и не подтверждение приёмки KN-1010.
main/stable не изменяются; автоматической установки нет.

KAS Web: optional experimental IPKs (c0dac74)

Choose a tag to compare

Optional experimental KAS Control Center IPKs: tabbed UI, authentication settings and configurable port.

Fresh IPK installations default to port8081. Authentication and Home-only restriction are optional/off by default. Entware mode verifies the existing root password without storing or changing it. A separate panel password uses login kas.

Install only by choice on a test device. Existing manual panel installations must be removed by their original helper before IPK installation; preserve/save the desired old port first. The package refuses foreign/manual files. Start the panel explicitly after install/update; no KAS auto-install. User settings and KAS core are preserved on package removal.

Source: c0dac74. The release tag points at the publication workflow commit; each package BUILD_INFO records the tested binary source. CI checks include real Entware opkg offline-root transactions, Go/race/Node, ARM64/MIPSel CPU emulation and existing native KeeneticOS importer/filter/lifecycle checks. These do not constitute physical acceptance of these IPKs on every architecture.

Instructions: https://github.com/saymer-alt/keenetic-auto-setup/blob/c0dac7471aeda115dbcb2c3f4276e4c603eb4b33/web/control-center/packaging/README.md
Review: #265

KAS v1.8.4 — безопасная первая загрузка (bounded bootstrap, #165)

Choose a tag to compare

@saymer-alt saymer-alt released this 21 Oct 20:38
baf7222

KAS v1.8.4 — безопасная, ограниченная по времени первая загрузка

Главное улучшение: начальная установка больше не исполняет curl .../stable/setup.sh | sh. Удалённый ответ больше никогда не попадает в shell без проверки.

Что изменилось

  • Первая ступень установки (README, Quick Start, HOWTO и Entware-руководства, RU+EN) скачивает bootstrap.sh в закрытый временный файл (mktemp, umask 077) и проверяет до исполнения: ненулевое тело, shebang #!/bin/sh, маркер проекта KAS_FIRSTFETCH_V1 и синтаксис sh -n.
  • Ограничение по времени: каждая попытка — curl --connect-timeout 7 --max-time 25; верхняя граница ожидания конечна и видна в выводе.
  • Фолбэки первого этапа: GitHub raw HTTPS → IPv4/X25519 → GitHub Contents API. TLS/CA-проверка обязательна (-k/--insecure не используются), HTML/JSON/неполные ответы отвергаются, временные файлы удаляются на всех путях выхода.
  • bootstrap.sh затем применяет ту же схему (raw → IPv4/X25519 → Contents API) к setup.sh и только после валидации передаёт ему управление. Контракт чистой Entware сохранён: сначала opkg update && opkg install curl.
  • bootstrap.sh --check — read-only проверка доступности и валидности setup.sh без установки и каких-либо изменений системы.
  • Устаревший ручной TLS-retry из документации убран: встроенные фолбэки покрывают этот сценарий.

Полевые проверки (2026-10-21)

  • NC-4210: два успешных read-only --check (из stable и тестовой ветки); рабочая конфигурация домашнего роутера не менялась.
  • KN-1010 (MIPS, 248 МБ RAM, чистая Entware на внешнем EXT4, SWAP ≈468 МБ, zRAM off): чистая установка через новый bootstrap — основной installer PASS (Mihomo 1.19.32-2, MagiTrickle 0.8.2-1, Proxy1 создан и настроен, Netfilter и DNS-перехват PASS, watchdog и cron PASS); Doctor 1.2.18 — OK 35 / WARN 0 / FAIL 0; повторный полный setup.sh — exit 0 (PID Mihomo и SHA-256 config.yaml не изменились, лишние restart/обновления пропущены); s в Config Import корректно завершил мастер.
  • Известное ограничение: в одной из первых сессий после установки импортёр получил лишний/искажённый ввод и завершился с exit 1; при отдельном вводе и повторном запуске дефект не воспроизведён. Причина не доказана — отслеживается в #170.

Границы релиза

  • Не входит в v1.8.4 (остаются открытыми): #169 — тайм-ауты внутренних wget/curl после первого bootstrap; #166 — offline Doctor и дополнительные сетевые диагностики; #167 — дополнительные аппаратные профили и оптимизация opkg; #170 — защита интерактивного импортёра от попадания буферизованного ввода.
  • Новая цепочка делает первый запрос ограниченным по времени и безопаснее, но не гарантирует доступность произвольного провайдера; историческая причина intermittent TLS/DNS на NC-4210 не локализована.

Безопасность

KAS-SAFETY-001 (zRAM + внешний SWAP), one-Mihomo, контракты ProxyN/Netfilter и rollback не менялись: изменения релиза ограничены первой загрузкой, документацией, тестами и CI. Требования 512 MB-класса и все protective gates прежние.

Полный список изменений — CHANGELOG.md, детали — PR #168.