mirror of
https://github.com/andrey271192/kaskad_web_vpn.git
synced 2026-09-21 12:01:59 +00:00
feat: kaskad memo site with Basic Auth
Flask + Docker, header support links, install/uninstall curl scripts, password file or ADMIN_PASSWORD. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
71
README.md
Normal file
71
README.md
Normal file
@@ -0,0 +1,71 @@
|
||||
# kaskad_web_vpn
|
||||
|
||||
Мини-сайт на Flask с **HTTP Basic Auth**: памятка про каскад **AmneziaWG**, без сторонней рекламы. В шапке — ссылки автора на поддержку (GitHub, Boosty, Ozon СБП, Telegram).
|
||||
|
||||
Репозиторий: [github.com/andrey271192/kaskad_web_vpn](https://github.com/andrey271192/kaskad_web_vpn)
|
||||
|
||||
## Требования
|
||||
|
||||
- Docker с доступом для текущего пользователя (или запуск скриптов от root).
|
||||
|
||||
## Установка одной командой
|
||||
|
||||
На сервере (порт хоста по умолчанию **8088**, логин **user1**, пароль генерируется и пишется в `/root/kaskad_web.initial-password`):
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/install.sh | sudo bash
|
||||
```
|
||||
|
||||
Свой пароль и порт:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/install.sh | sudo \
|
||||
env ADMIN_PASSWORD='ваш_секрет' HOST_PORT=8443 bash
|
||||
```
|
||||
|
||||
Опционально ссылка на вашу веб-панель Amnezia (подставится на страницу):
|
||||
|
||||
```bash
|
||||
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` | Куда распаковать исходники для сборки |
|
||||
|
||||
## Удаление
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/uninstall.sh | sudo bash
|
||||
```
|
||||
|
||||
Удалить ещё и Docker-образ:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/andrey271192/kaskad_web_vpn/main/uninstall.sh | sudo env REMOVE_IMAGE=1 bash
|
||||
```
|
||||
|
||||
## Локально без Docker
|
||||
|
||||
```bash
|
||||
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
|
||||
Reference in New Issue
Block a user