Tuna 0.15.0 — как развивается наш аналог Ngrok

Я продолжаю делиться новостями развития нашего проекта Tuna — консольной утилиты, которая помогает получить прямой доступ из интернета к запущенным локально на ПК сайтам или приложениям. В прошлый раз я рассказывал о новой функциональности, делился находками багов от клиентов и дорожной картой. Что же, давайте посмотрим, что мы сделали за прошедший месяц.

Документация

Новый сайт с документацией
Новый сайт с документацией

Мы наконец оформили сайт с документацией, куда добавили инструкции по установке, кейсы и прочую информацию. Ну и продолжаем активно его пополнять. Нашим пользователям и нам самим стало намного проще.

Стандартный 443 порт подключения к ноде для создания туннеля

Изначально мы использовали порт 2022 для подключения к нашему серверу организации туннелей, мы знали, что это тех. долг и рано или поздно пользователи начнут жаловаться и придётся это переделывать. По закону жанра это наступило рано и пришлось переделывать эту часть инфраструктуры достаточно оперативно.

Так как на 1 хосте работает nginx (он терминирует TLS для HTTP туннелей) и tuna-node (наш сервер через который собственно создаётся подключение), а TCP порт может слушать только 1 программа, пришлось выдумывать схему с 2-мя публичными IP адресами и 2-мя маршрутами по умолчанию с разной метрикой. Впрочем обошлись базовыми знаниями работы сетей 😉.

Ну и так как документация у нас уже есть, сразу описали эту проблему там.

Статичный пароль для SSH

Это очередной запрос от нашего клиента. Оказалось, что некоторые устройства типа NAS не имеют встроенного SSH сервера, а заходить на него удалённо иногда хочется, и тут Tuna решила сразу 2 проблемы одним выстрелом, встроенный SSH сервер + туннель за NAT. Правда осталась проблема того, что при рестарте TCP порт подключения сменится, но я надеюсь этот функционал мы тоже скоро добавим.

Какие у нас планы по дальнейшему развитию?

Я решил оставить этот блог как в прошлый раз, и просто подсветить (так как оказалось, что зачёркнутый текст на VC сделать нельзя) то, что уже сделано 🙂, а ещё мы добавили такой же блог в документации.

  1. Очень просят статичные TCP порты и мы постараемся сделать это к следующему большому релизу.
  2. Новый сайт и личный кабинет, текущий сделан на коленке, и содержит не весь функционал а хочется красиво 🙂
  3. Документация. Сейчас её нет вообще, а ведь там можно описать как устанавливать клиент из репозиториев, которые уже есть, какие-то рецепты и так далее...
  4. Новый UI для инспектора запросов http.
  5. Чтение тела запроса, для отображения в инспекторе.
  6. Запись действий клиента SSH сессии. Сейчас клиент может подключиться, но какие он вводит команды, неизвестно.

Как видите бэклог не всегда отражает то, что ты будешь делать на самом деле, как говорится живём по аджайлу 😃

На этом у меня всё, спасибо что дочитали до конца 🙂

Контакты

Подробнее можете посмотреть всё на сайте https://tuna.am, надеюсь вам понравится работать с tuna.

Если возникли вопросы, можете задать их нам по почте info@tuna.am

66
6 комментариев

Обслуживания UDP тоже нет, как у Ngrok?

1
Ответить

Пока это архитектурное ограничение, вообще UDP только у localxpose видели

1
Ответить

Документация — это всегда кстати, и новый сайт с инструкциями — отличная идея.

1
Ответить

Такое - мы любим!
Молодцы!!

1
Ответить

А теперь вы зажрались и на 1 пользователя разрешаете 1 тунель 🤣 Так не делают в воскресенье вечером

Ответить

Нет, условия те же. Если у вас какие то проблемы в работе сервиса, лучше обратитесь пожалуйста в поддержку.

Ответить