harnsy Max
Открыть дашборд снаружи: пошаговая инструкция
Для человека, который хочет заходить в harnsy с телефона или с ноутбука вдали от дома.
Что понадобится
- harnsy Max на этой машине (флаг лицензии
mobile). Без него страница откроется, но ничего не заработает. - Имя, например
harnsy.example.com, которым вы управляете в DNS. - Путь из интернета до harnsy. Выберите один:
- Машина сама в интернете (VPS, сервер): рецепт A. Самый простой.
- harnsy работает дома, а «дверью» служит небольшой арендованный VPS : рецепт B. VPS пропускает только зашифрованные байты и прочитать их не может. Лучший вариант для домашней машины.
- У вас уже есть nginx с сертификатом и VPN до машины : рецепт C. Он же может пускать только клиентов VPN.
- Телефон или ноутбук с passkey: телефон с блокировкой экрана (Android 9+, iPhone) или ноутбук с Windows Hello, Touch ID или ключом безопасности.
Шаги по порядку
Выберите «дверь» выше и пройдите её рецепт в
gateway-recipes.mdдо файла настроек. Направьте DNS-запись вашего имени на машину, которая смотрит в интернет.Впишите настройки в
~/.harnsy/config.yamlи перезапустите harnsy (они читаются один раз, при старте). Короткая форма для рецепта A:~/.harnsy/config.yaml
gateway: addr: ":443" hosts: harnsy.example.com tls: acme: true email: you@example.comacme: trueпозволяет harnsy самому получить сертификат. Вhostsукажите одно имя: passkey принадлежит тому имени, на котором создан.Проверьте на самой машине: откройте дашборд, Система › «Доступ снаружи». Там видно, слушает ли шлюз, на каком адресе и имени и как получается сертификат. Если шлюз не открыт, страница скажет почему; сначала исправьте это.
Привяжите телефон. На той же странице нажмите «Создать код» в шаге «Привяжите телефон или ноутбук». Появится QR-код: он работает один раз и 5 минут. Отсканируйте его телефоном. (На VPS без экрана откройте дашборд через
ssh -L 7788:127.0.0.1:7788 you@vps, рецепт A, шаг 5.)Сразу создайте passkey. Телефон предложит «Создать passkey»: подтвердите отпечатком, лицом или PIN. Это нужно сделать в течение 15 минут после сканирования и только один раз на одно сканирование. До этого телефон может только читать.
Войдите по passkey. Сессия, которую дал QR-код, нужна только для привязки: она может читать, поставить команду на паузу после шага и создать passkey, и она заканчивается через сутки. Откройте страницу входа и нажмите её кнопку (ни имени, ни пароля). Менять что-либо может только сессия, вошедшая по passkey. Она держится до 7 дней без использования и не дольше 30 дней; потом войдите так же снова.
Работа снаружи
- Чтобы читать, хватает сессии. Чтобы что-то менять (из сессии, вошедшей по passkey: отправить сообщение, ответить агенту, решить по задаче), один раз нужен passkey, и проверка действует 15 минут.
- Полное управление — отдельный переключатель, его можно включить только на локальном дашборде: ввод в терминалы, запуск агентов, мгновенная остановка команды, смена настроек. По умолчанию выключено и само выключается через 2 часа (от 1 до 24, задаётся рядом с переключателем). Включайте его только на время работы.
- Каждое новое устройство, созданный код, добавленный passkey и включённое полное управление появляются на «Главной» («Ждёт тебя») на машине.
Если что-то не работает
| Что вы видите | Обычно |
|---|---|
| на странице входа написано, что доступ снаружи не разрешён | в лицензии нет флага mobile |
| страница не открывается совсем | DNS, файрвол или порт; локальная страница из шага 3 скажет, слушает ли шлюз |
421 | имени из браузера нет в hosts |
| ошибка сертификата | для acme: true порт 443 должен быть доступен из интернета (рецепт A/B) либо укажите свои файлы |
| «Создать passkey» отказывает | прошло 15 минут или это сканирование уже создало passkey: сделайте новый код |
| изменение снова просит подтвердить passkey | 15-минутная проверка истекла; подтвердите ещё раз. Телефон только с QR-сессией сначала должен войти по passkey (шаг 6) |
| изменение отклонено с «полное управление выключено» | включите его на локальном дашборде (оно могло выключиться само) |
429 | слишком много попыток с одного адреса; подождите немного |
Устройство потеряно или украдено: выключите его на локальном дашборде (Доступ снаружи › Устройства) или выйдите на всех устройствах.
Подробности: gateway.md (что разрешено, лимиты, модель угроз) и gateway-recipes.md (три способа дотянуться до узла, все команды).