Вернулся на 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 статьи:
- https://help.keenetic.com/hc/ru/articles/360000948719-OPKG
- https://help.keenetic.com/hc/ru/articles/360021888880-%D0%A3%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0-OPKG-Entware-%D0%BD%D0%B0-%D0%B2%D1%81%D1%82%D1%80%D0%BE%D0%B5%D0%BD%D0%BD%D1%83%D1%8E-%D0%BF%D0%B0%D0%BC%D1%8F%D1%82%D1%8C-%D1%80%D0%BE%D1%83%D1%82%D0%B5%D1%80%D0%B0
В целом, получается еще один отдельный ssh в систему, это доступ к уже работающему Linux.
Так же из второй статьи понимаем, что у меня архитектура aarch64 aka arm64 – пригодится, чтобы понять какой Caddy качать.
Ставим Caddy
opkg install curl
curl -fLO https://github.com/caddyserver/caddy/releases/download/v2.8.4/caddy_2.8.4_linux_arm64.tar.gz
gunzip caddy_2.8.4_linux_arm64.tar.gz
tar -xvf caddy_2.8.4_linux_arm64.tar
mv caddy /opt/usr/bin
caddy --help
rm caddy_2.8.4_linux_arm64.tar LICENSE README.md
Настраиваем 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
И контрольная перезагрузка роутера, чтобы проверить, что все стартует.