setup: одна команда на установку (VPS и роутер)

setup-vps.sh — на VPS: снос+установка сервера туннеля одной командой,
опционально сразу `add <peer-name>` третьим аргументом.

setup-router.sh — на роутере: снос+установка панели keenetic_ssh-web и
(если заданы 4 ENV-переменные) клиента туннеля. Без ENV — только панель.

Обёртки нужны, чтобы пользователь копировал ровно ОДНУ строку, без
переменных типа $RAW, которые ломаются при копи-паст из markdown-чата.
This commit is contained in:
Андрей Бобырев
2026-04-26 14:31:42 +03:00
parent 3684c0dc0b
commit 88827ad2b5
2 changed files with 104 additions and 0 deletions

42
setup-vps.sh Executable file
View File

@@ -0,0 +1,42 @@
#!/bin/bash
# setup-vps.sh — turnkey: снос + установка WireGuard-сервера kssh-tunnel.
#
# Запуск (любой из вариантов):
# curl -fsSL https://raw.githubusercontent.com/andrey271192/keenetic_ssh-web/main/setup-vps.sh | sudo bash
# curl -fsSL https://raw.githubusercontent.com/andrey271192/keenetic_ssh-web/main/setup-vps.sh | sudo bash -s -- add <peer-name>
#
# Что делает (одной командой):
# 1) сносит предыдущий kssh-tunnel сервер (если был)
# 2) ставит сервер заново (apt install wireguard, ключи, wg0, kssh-tun)
# 3) если передан "add <name>" — сразу добавляет peer и печатает ENV-блок
#
# Что НЕ трогает: HydraRoute, любые ваши приложения, Docker, чужие правила
# iptables, apt-пакет wireguard (не делает remove).
set -e
REPO="${KSSH_REPO:-andrey271192/keenetic_ssh-web}"
BRANCH="${KSSH_BRANCH:-main}"
RAW="https://raw.githubusercontent.com/${REPO}/${BRANCH}"
if [ "$(id -u)" -ne 0 ]; then
echo "Запустите через sudo." >&2
exit 1
fi
echo "==> [1/3] Снос предыдущей установки kssh-tunnel сервера…"
curl -fsSL "$RAW/tunnel/server-uninstall.sh" | bash || true
echo
echo "==> [2/3] Установка сервера kssh-tunnel…"
curl -fsSL "$RAW/tunnel/server-install.sh" | bash
if [ "${1:-}" = "add" ] && [ -n "${2:-}" ]; then
echo
echo "==> [3/3] Добавление peer '$2'…"
/usr/local/bin/kssh-tun add "$2"
else
echo
echo "==> [3/3] Сервер готов. Добавьте роутер командой:"
echo " sudo kssh-tun add <name>"
echo " (выдаст 5-строчный блок для копирования на роутер)"
fi