TunnelHunt против Ngrok: Почему стандартного SSH достаточно
Когда речь заходит о предоставлении доступа к localhost
, многие разработчики первым делом вспоминают Ngrok. Это мощный и популярный инструмент, который отлично справляется со своей задачей. Но что, если мы скажем, что у вас уже есть все необходимое для создания туннелей, и для этого не нужно ничего устанавливать?
В этой статье мы сравним два подхода к туннелированию: использование специализированного клиента (Ngrok) и использование стандартного протокола SSH (TunnelHunt).
Подход 1: Специализированный клиент (Ngrok)
Ngrok требует скачивания и установки бинарного файла для вашей операционной системы. После установки вы запускаете туннель командой вроде:
ngrok http 3000
Плюсы:
- Очень простая команда для запуска.
- Предоставляет удобный веб-интерфейс для инспекции трафика.
- Хорошо документирован и известен в сообществе.
Минусы:
- Требует установки и, возможно, добавления в
PATH
вашей системы. - Это еще одна зависимость в вашем наборе инструментов.
- Бесплатная версия имеет ограничения, например, случайные адреса, которые меняются при каждом запуске.
Подход 2: Стандартный инструмент (TunnelHunt и SSH)
TunnelHunt использует для своей работы обратное туннелирование через SSH — протокол, который является “родным” для любой современной ОС, будь то Linux, macOS или Windows (с WSL/PowerShell).
Команда для запуска выглядит так:
ssh -R 80:localhost:3000 -p 2222 nokey@tunnelhunt.ru
Плюсы:
- Ноль установки. Вы используете инструмент, который уже есть в системе. Никаких
brew install
,apt-get
или скачивания архивов. - Прозрачность. Вы используете стандартный, открытый и проверенный временем протокол. Команда
ssh
знакома большинству разработчиков. - Минимализм. Никаких лишних файлов или зависимостей на вашем компьютере. Это просто одна команда в вашем терминале.
- Безопасность. Весь туннель шифруется с помощью криптографии промышленного уровня, встроенной в SSH.
Минусы:
- Команда SSH может показаться длиннее, чем у Ngrok. (Хотя ее легко сохранить как алиас в вашей оболочке, например:
alias hunt='ssh -R 80:localhost:3000 -p 2222 nokey@tunnelhunt.ru'
). - На бесплатном тарифе нет встроенного инспектора трафика.
Так что же выбрать?
Выбирайте Ngrok, если:
- Вам абсолютно необходим встроенный инспектор трафика для каждого запроса.
- Вы не против установки дополнительного ПО и уже привыкли к его экосистеме.
Выбирайте TunnelHunt, если:
- Вы цените минимализм и не хотите засорять систему лишними утилитами.
- Вы предпочитаете использовать стандартные, универсальные инструменты.
- Вы хотите запустить туннель максимально быстро на любой машине, где есть терминал, даже без прав администратора.
В конечном счете, оба сервиса решают одну и ту же задачу. TunnelHunt предлагает более “нативный” и легковесный путь, делая ставку на то, что лучшие инструменты — это те, которые у вас уже есть.