2.7 KiB
Kraken — Внешний доступ
Обновлено: 2026-05-13
SSH с любой машины
ssh kraken.qentra.top
~/.ssh/config на Eagle:
Host kraken-ssh
HostName 91.207.28.205
Port 2223
User kraken
IdentityFile ~/.ssh/id_rsa
StrictHostKeyChecking no
kraken.qentra.top — CNAME на CF туннель, используется для Hermes API.
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).
Управление туннелем на Кракене
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
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 (локально)
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 — аналогичный туннель для Тайги