Skip to content
Run Caddy server on Zyxel Keenetic in Debian chroot
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
caddy
initd+services+caddyfile.zip

README.md

debian-keenetic-caddy

Run Caddy server on Zyxel Keenetic in Debian chroot

Установка Caddy-сервера на Zyxel Keenetic Giga II (Версия NDMS 2.09.C.1.0-1) под Debian (http://keenetic-gi.ga/2017/06/21/debian-via-chroot/)

Скачиваем http://keenetic-gi.ga/assets/2017-06/debian_keenetic.tgz на флешку и действуем по инструкции: http://keenetic-gi.ga/2017/06/21/debian-via-chroot/. Всё описанное работает без сбоев и проблем на Zyxel Keenetic Giga II (Версия NDMS 2.09.C.1.0-1) - обращаем внимание на прошивку (на некоторых версиях не завелось). Можно пробросить порты за NAT и настроить как маленький домашний web-сервер c выходом в мир (установить Hugo - генератор статических страниц или что-то из мира PHP) - опять же не забываем про то какой у Вас IP (статический, динамический, белый, серый и т.п., т.к. ddns служба на роутере может не заработать как нужно). Сразу предупреждаю - работает заметно хуже, чем на моём VPS с SSD (но опять же - вопрос с чем сравнивать... т.к. у Zyxel Keenetic Giga II все порты USB2.0, а на Zyxel Keenetic Giga III - USB3.0 + процессор несколько мощнее). Установку PHP, Mysql не рассматриваю - ставятся стандартно через apt-get install (возможно ещё придётся добавить репозитарии, но для данного случая поставилось всё из родных, только версии пакетов несколько староваты).

  1. На Zyxel-Keenetic Debian работает в chroot окружении (подмена корневого каталога) и из этого следуют проблемы: если кратко, то из описания установки запуска Caddy как сервиса на Debian из поставки исходников Caddy не работает команда setcap (sudo apt-get install libcap2-bin, при запуске setcap нет привязки capabilities к исполняемому файлу). И есть ещё проблема путей для нашего окружения, для её решения добавил в исходник префикс "/opt/".
  • Вопрос решается скачиванием initd+services+caddyfile.zip файла из моего репозитария и копированием caddy (модифицированный sysvinit /etc/init.d/caddy) в папку /etc/init.d и назначением на него прав 0755 от пользователя root.
  1. Второй вопрос - нужно скомпилировать Caddy-сервер для Mips-процессора.
  • Просто скачайте готовый исполняемый файл caddy из моего репозитария и поместите его в папку /usr/local/bin с назначением прав 0755 от пользователя www-data
  1. Прописываем пути в файле конфигурации Caddyfile (они должны начинаться с "/opt/home/caddy/" ) и запускаем сервис "service caddy start|stop|restart|reload|status от root-пользователя. Права на папку и подпапки caddy выставьте от пользователя www-data. Пример файла конфигурации Caddyfile в архиве initd+services+caddyfile.zip

  2. Прописать автозагрузку caddy в /etc/ndm/ services.txt (на случай перезагрузки роутера), пример файла в архиве initd+services+caddyfile.zip

  3. Теоретически данный способ работает на любом железе (роутеры, Android-приставки и т.д), где возможен запуск Debian в chroot-окружении (нужно скомпилировать Caddy для соответствующей платформы и настроить должным образом сервисы)

You can’t perform that action at this time.