01 · ключ
Рождается у вас
Закрытая половина остаётся на диске и к нам не приезжает. Восстановить её мы не сможем, и это единственно правильное поведение для ключа.
ssh-keygen -t ed25519 \ -f ~/.ssh/demo
Reverse tunnel · SSH · TCP · OAuth
Сервис работает на вашей машине: за NAT, без белого IP, без единого порта, открытого на роутере. Наружу выходит только имя с сертификатом, и гаснет оно в ту секунду, когда вы закрываете терминал.
Бесплатно и бессрочно. Карта не нужна.
в потоке 8 раствор 0.60
Обратный проброс по SSH-ключу. Ключ рождается на вашей машине, наружу уходит только публичная половина. Потяните сцену, чтобы осмотреть горловину.
Зачем
Маршрут
Всё делается в кабинете и в вашем терминале. Заявок, согласований и ожидания ответа в этом процессе не существует.
01 · ключ
Закрытая половина остаётся на диске и к нам не приезжает. Восстановить её мы не сможем, и это единственно правильное поведение для ключа.
ssh-keygen -t ed25519 \ -f ~/.ssh/demo
02 · адрес
Запись в системе доменных имён создаётся сама, сертификат выпускается сам. Вам остаётся выбрать имя и сказать, какой локальный порт публиковать.
demo.tunnellio.site → 127.0.0.1:3000
03 · мост
Кабинет выдаёт готовую команду под вашу систему. Мост существует ровно столько, сколько выполняется команда, и ни секундой дольше.
ssh -i ~/.ssh/demo -N \ -R demo:80:127.0.0.1:3000 \ -p 2222 tunnel@tunnellio.site
Термины этой страницы разобраны в глоссарии: русское название, англоязычное написание и объяснение обычными словами. Полный список запросов - в справочнике API.
Транспорт
Корпоративная сеть режет исходящий SSH. Гостевой Wi-Fi рвёт долгие сессии. Внешнему клиенту нужен OAuth, а не ключ. Поэтому транспортов три, и переключаются они одним полем в свойствах домена.
| Транспорт | Когда выбирать | Ключ | Держит разрыв | OAuth |
|---|---|---|---|---|
| Direct SSHОбратный проброс по ключу | Свой сервер или машина разработчика, сеть не мешает исходящему SSH | нужен | переподключение | нет |
| TCP-мостСвой протокол, порт 7835 | SSH закрыт или сессия живёт минуты. Обходной путь, который проходит почти всегда | не нужен | да, heartbeat | нет |
| Cloud proxyС авторизацией и проверкой токена | Внешний клиент, которому доступ выдают по правилам, а не по секрету | не нужен | да | да, PKCE |
Клиент
Туннель можно поднять голым SSH, и мы показываем эту команду честно. Но в работе нужен не запуск, а то, что вокруг: перезапуск после обрыва, проверка живости адреса, несколько туннелей на машине и возможность спросить у клиента, какой адрес он в итоге получил. Это и есть наш клиент.
tunnellio connect --transport tcp-bridge \ --domain random --local-port 3000 --run
tunnellio connect --domain existing:demo \ --local-port 3000 --run --watch --name prod
tunnellio show-config --name prod
Сценарии
Модель обращается к инструменту, который живёт у вас на диске. Cloud proxy добавляет авторизацию, поэтому доступ выдают приложению, а не раздают секрет.
mcp.tunnellio.site
Платёжный шлюз и мессенджер требуют публичный адрес с сертификатом. Постоянное имя означает, что настройку делают один раз, а не при каждом запуске.
hooks.tunnellio.site
Ветка запущена локально, показать нужно сейчас. Пароль на TCP-мост даёт публичный адрес с закрытым доступом: ссылка существует, войти по ней нельзя.
preview.tunnellio.site
Цена
0 ₽в месяц
Бессрочно. Карта не требуется.
300 ₽в месяц
Или $4 картой иностранного банка. Вернуться на Free можно в любой день: ресурсы остаются на месте.
Оплата картой на странице платёжной системы: номер карты и код проверки сервису не передаются. Порядок оплаты, момент открытия доступа и возвраты — в документе об оплате.
Вопросы
Нет. Соединение всегда исходящее: его открывает ваша машина, изнутри своей сети. Портов наружу открывать не нужно, настройки маршрутизатора не меняются. Работает из домашней сети, из офисной и из-под мобильного оператора.
Он не покидает вашу машину. Ключевая пара создаётся у вас, к нам приезжает только открытая половина, и восстановить закрытую мы физически не можем. Если файл потерян, ключ удаляют и добавляют новый; поддомен при этом остаётся за вами.
Поток проходит через сервер, иначе моста бы не было. Мы его не записываем и не разбираем: в журнал попадают факт подключения, домен и время, а не содержимое. Если и этого много, поднимайте свой экземпляр: проект разворачивается на вашем сервере одной командой.
Да. Поддомен закреплён за вашей учётной записью и не меняется, пока вы его не удалите. Именно поэтому его можно вписать в настройки обратного вызова и в документацию. Отдельно есть временные домены на сутки, для одноразовых задач.
Переключить транспорт на TCP-мост: он работает по своему протоколу на порту 7835, ключ ему не нужен, а обрыв связи он переживает сам. Адрес поддомена при смене транспорта не меняется.
Нет, он бессрочный и карту не требует. До 10 поддоменов, до 3 SSH-ключей и до 3 OAuth-приложений. Программный интерфейс и пароль на TCP-мост доступны на Pro: 300 ₽ в месяц. Вернуться на Free можно в любой день, ресурсы сверх лимитов не удаляются, а помечаются как доступные на Pro.
Дальше
Регистрация, ключ, домен, команда. Дальше сервис работает у вас, а мы держим только вход.