[2026-05-13] Add kraken-access.md: SSH via VPS tunnel, cloudflared summary
This commit is contained in:
@@ -0,0 +1,84 @@
|
||||
# Kraken — Внешний доступ
|
||||
|
||||
> Обновлено: 2026-05-13
|
||||
|
||||
## SSH с любой машины
|
||||
|
||||
```bash
|
||||
ssh kraken.qentra.top
|
||||
```
|
||||
|
||||
`~/.ssh/config` на Eagle:
|
||||
```
|
||||
Host kraken.qentra.top
|
||||
HostName 91.207.28.205
|
||||
Port 2223
|
||||
User kraken
|
||||
IdentityFile ~/.ssh/id_rsa
|
||||
StrictHostKeyChecking no
|
||||
```
|
||||
|
||||
`kraken.qentra.top` — просто алиас. Реально подключается на VPS `91.207.28.205:2223` → tunnel → `localhost:22` Кракена.
|
||||
|
||||
---
|
||||
|
||||
## Как устроен туннель
|
||||
|
||||
Кракен держит постоянный **reverse SSH tunnel** на VPS через autossh:
|
||||
|
||||
```
|
||||
Кракен (RPi 5, 192.168.1.14)
|
||||
└── autossh → ssh -R 2223:localhost:22 root@91.207.28.205
|
||||
↓
|
||||
VPS (91.207.28.205)
|
||||
слушает :2223 → перенаправляет на Кракен:22
|
||||
```
|
||||
|
||||
Аналогично Тайге (у неё порт 2222).
|
||||
|
||||
### Управление туннелем на Кракене
|
||||
|
||||
```bash
|
||||
sudo systemctl status kraken-tunnel
|
||||
sudo systemctl restart kraken-tunnel
|
||||
sudo journalctl -u kraken-tunnel -n 20
|
||||
```
|
||||
|
||||
Файл сервиса: `/etc/systemd/system/kraken-tunnel.service`
|
||||
SSH-ключ Кракена: `/home/kraken/.ssh/id_ed25519`
|
||||
Публичный ключ добавлен в `/root/.ssh/authorized_keys` на VPS.
|
||||
|
||||
### Проверить с VPS
|
||||
|
||||
```bash
|
||||
ssh root@91.207.28.205 "ss -tlnp | grep 2223"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Cloudflared (для будущих сервисов)
|
||||
|
||||
Контейнер `cloudflared` запущен на Кракене (`unless-stopped`), туннель `kraken` активен в CF Zero Trust.
|
||||
Hostname: `kraken.qentra.top → SSH → localhost:22` (настроен но не используется — SSH идёт через VPS).
|
||||
Можно добавить другие сервисы (OMV, Portainer) через Public Hostnames в Zero Trust.
|
||||
|
||||
---
|
||||
|
||||
## Portainer API (локально)
|
||||
|
||||
```bash
|
||||
BASE=http://localhost:9000
|
||||
KEY="ptr_AJY+Ba9A7f6pcAHZfDD5koU4stkKgJCdbTEXLDLxn0g="
|
||||
EP=3 # endpoint ID на Кракене = 3, не 1!
|
||||
|
||||
curl -s -H "X-API-Key: $KEY" "$BASE/api/endpoints/$EP/docker/containers/json?all=true" \
|
||||
| jq '[.[] | {name: .Names[0], status: .Status}]'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Связанные заметки
|
||||
|
||||
- [[kraken-portainer-access]] — полная инструкция по деплою cloudflared через Portainer
|
||||
- [[openmediavault-rpi5]] — настройка Кракена (Docker, Hermes, структура папок)
|
||||
- [[truenas-remote-access-reverse-proxy]] — аналогичный туннель для Тайги
|
||||
Reference in New Issue
Block a user