Вернулся на Keenetic. С ним можно использовать -1 сервер (и никаких постоянных серверов).

Например:

  • PPPoE
  • WiFi mesh
  • extra providers (when needed): 4g, wifi, 2nd ethernet
  • DHCP & DNS
  • VPN client
  • VPN server
  • Torrent-client
  • DLNA-server
  • External LB with https from Let’s Encrypt (Caddy)
  • Static internal homepage (Caddy)
  • Exchange folder (SFTP-server)
  • Back-up server (to external hdd, sftp protocol or time machine)

Чтобы разместить внутреннюю стартовую страницу потребовался Caddy. Посмотрим как это можно поставить и настроить.

OPKG

2 статьи:

В целом, получается еще один отдельный ssh в систему, это доступ к уже работающему Linux.

Так же из второй статьи понимаем, что у меня архитектура aarch64 aka arm64 – пригодится, чтобы понять какой Caddy качать.

Удаление OPKG

Для переустановки всего с нуля.

Команды:

no opkg disk
no system mount storage:
erase storage:

Меняем диск на другой (можно временно флешку вставить) через http://192.168.1.1/opkg – иначе заново не поставится, будет ответ Opkg::Manager: Disk is unchanged. и все.

Ставим OPKG

  1. http://192.168.1.1/opkg – ставим сам opkg (Встроенное хранилище, /opt/etc/init.d/rc.unslung)
  2. Основные настройки:
exec sh
opkg update
opkg upgrade
passwd root

opkg install rsync curl jq
opkg list-installed

Caddy

Ставим Caddy

mkdir 1
cd 1
curl -fLO https://github.com/caddyserver/caddy/releases/download/v2.11.4/caddy_2.11.4_linux_arm64.tar.gz
# or  and `rsync caddy_2.11.4_linux_arm64.tar.gz kopg:1/` if curl fails with 500
gunzip caddy_2.11.4_linux_arm64.tar.gz 
tar -xvf caddy_2.11.4_linux_arm64.tar 
mv caddy /opt/usr/bin
caddy --help
cd
rm -rf ~/1

Настраиваем Caddy

mkdir /opt/var/log/caddy
mkdir /opt/share/caddy
mkdir /opt/share/caddy/start
mkdir /opt/etc/caddy

cat > /opt/etc/caddy/Caddyfile << EOF
{
 storage file_system /opt/share/caddy
 default_bind 192.168.1.1
}

:8080 {
 root * /opt/share/caddy/start
 file_server
}
EOF
caddy fmt --overwrite /opt/etc/caddy/Caddyfile

cat > /opt/share/caddy/start/index.html << EOF
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Caddy</title>
  </head>
  <body>
    Caddy works! 🎇🎇🎇
  </body>
</html>
EOF

cat > /opt/etc/init.d/S98caddy << \EOF
#!/bin/sh

ENABLED="yes"
PROCS="caddy"
ARGS="start --config /opt/etc/caddy/Caddyfile"
WORK_DIR="/opt/share/caddy"
DESC=$PROCS
PREARGS=""
PRECMD="export GOMAXPROCS=1"
POSTCMD=""

. /opt/etc/init.d/rc.func
EOF
chmod +x /opt/etc/init.d/S98caddy

/opt/etc/init.d/S98caddy start
/opt/etc/init.d/S98caddy check

Установим rsync для обновления статичного сайта через rsync:

opkg install rsync

И контрольная перезагрузка роутера, чтобы проверить, что все стартует.