mirror of
https://github.com/andrey271192/kaskad_web_vpn.git
synced 2026-09-20 11:55:35 +00:00
6e5cb44c51b2b6b27d10c107cbfdf40eddf741f2
Co-authored-by: Cursor <cursoragent@cursor.com>
kaskad_web_vpn
Мини-сайт на Flask с HTTP Basic Auth: памятка про каскад AmneziaWG, без сторонней рекламы. В шапке — ссылки автора на поддержку (GitHub, Boosty, Ozon СБП, Telegram).
Репозиторий: github.com/andrey271192/kaskad_web_vpn
Требования
- Docker с доступом для текущего пользователя (или запуск скриптов от root).
Установка одной командой
На сервере (порт хоста по умолчанию 8088, логин user1, пароль генерируется и пишется в /root/kaskad_web.initial-password):
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/install.sh | sudo bash
Свой пароль и порт:
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/install.sh | sudo \
env ADMIN_PASSWORD='ваш_секрет' HOST_PORT=8443 bash
Опционально ссылка на вашу веб-панель Amnezia (подставится на страницу):
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/install.sh | sudo \
env PANEL_URL='https://panel.example.com' bash
Переменные окружения установки:
| Переменная | По умолчанию | Описание |
|---|---|---|
HOST_PORT |
8088 |
Порт на хосте (HOST_PORT:8088 в контейнере) |
BASIC_AUTH_USER |
user1 |
Логин Basic Auth |
ADMIN_PASSWORD |
— | Пароль; если не задан — берётся из файла или генерируется |
PASSWORD_FILE |
/root/kaskad_web.initial-password |
Файл с паролем при автогенерации |
PANEL_URL |
пусто | URL панели для блока на главной |
KASKAD_REPO |
andrey271192/kaskad_web_vpn |
Репозиторий GitHub |
KASKAD_REF |
main |
Ветка |
KASKAD_INSTALL_ROOT |
/opt |
Куда распаковать исходники для сборки |
Удаление
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/uninstall.sh | sudo bash
Удалить ещё и Docker-образ:
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/uninstall.sh | sudo env REMOVE_IMAGE=1 bash
Локально без Docker
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
export BASIC_AUTH_PASSWORD='secret'
flask --app app run --host 0.0.0.0 --port 8088
Проверка без авторизации: GET /health.
Лицензия
MIT
Languages
Python
46.7%
HTML
15.7%
CSS
14.7%
JavaScript
12.3%
Shell
8.2%
Other
2.4%