GoPublic: open-source туннель с Telegram OAuth и TUI интерфейсом | AiManual
AiManual Logo Ai / Manual.
28 Дек 2025 Инструмент

GoPublic: обзор open-source аналога ngrok с Telegram OAuth и TUI

Обзор GoPublic — open-source аналога ngrok с аутентификацией через Telegram, TUI интерфейсом и вебхуками. Сравнение с альтернативами и примеры использования.

Что такое GoPublic и зачем он нужен

GoPublic — это современный open-source инструмент для создания безопасных туннелей, который позволяет разработчикам выставлять локальные сервисы в интернет. Если вы когда-либо использовали ngrok для тестирования веб-приложений или API, то GoPublic предлагает аналогичный функционал, но с открытым исходным кодом и уникальными особенностями.

Основная идея инструмента — предоставить простой способ доступа к локальным сервисам извне без необходимости настройки сложных сетевых конфигураций, проброса портов или использования облачных сервисов. Это особенно полезно для:

  • Тестирования веб-приложений на реальных устройствах
  • Демонстрации проектов клиентам
  • Разработки вебхуков, которые требуют публичного URL
  • Совместной работы над локальными сервисами
  • Отладки мобильных приложений, взаимодействующих с локальным бэкендом
💡
GoPublic написан на Go, что обеспечивает высокую производительность и простоту развертывания. Инструмент использует протокол yamux для мультиплексирования соединений и библиотеку Bubble Tea для создания интуитивного TUI интерфейса.

Ключевые возможности GoPublic

GoPublic выделяется среди аналогичных инструментов несколькими уникальными функциями:

ФункцияОписаниеПреимущество
Telegram OAuthАутентификация через Telegram Bot APIНе требует отдельной регистрации, использует существующий Telegram аккаунт
TUI интерфейсТекстовый пользовательский интерфейс на основе Bubble TeaУдобная навигация без необходимости запоминать команды
ВебхукиПоддержка входящих вебхуковТестирование интеграций с внешними сервисами
МультиплексированиеИспользование протокола yamuxЭффективное использование одного TCP соединения для множества потоков
Open-sourceПолностью открытый исходный кодВозможность самостоятельного хостинга и модификации

1Telegram OAuth: безопасность без паролей

Одна из самых интересных особенностей GoPublic — интеграция с Telegram для аутентификации. Вместо создания отдельной учетной записи или использования токенов, инструмент использует Telegram Bot API для безопасного входа.

# Пример запуска с Telegram аутентификацией
gopublic --telegram-bot-token YOUR_BOT_TOKEN

Пользователь получает ссылку для авторизации через Telegram, после чего может управлять своими туннелями. Это не только удобно, но и безопасно — не нужно хранить пароли или настраивать сложные системы аутентификации.

2TUI интерфейс на Bubble Tea

GoPublic использует библиотеку Bubble Tea для создания современного текстового интерфейса. Это делает инструмент интуитивно понятным даже для новичков:

# Запуск с TUI интерфейсом
gopublic tui

В интерфейсе можно:

  • Создавать и управлять туннелями
  • Просматривать статистику использования
  • Настраивать параметры безопасности
  • Управлять вебхуками

TUI интерфейс особенно полезен в ситуациях, когда доступ к графическому интерфейсу ограничен — например, при работе на удаленных серверах через SSH.

Сравнение с альтернативами

Давайте сравним GoPublic с другими популярными инструментами для создания туннелей:

ИнструментЛицензияАутентификацияИнтерфейсОсобенности
GoPublicOpen-sourceTelegram OAuthTUI (Bubble Tea)Вебхуки, самостоятельный хостинг
ngrokПроприетарнаяАккаунт ngrokCLI / Веб-панельОблачный сервис, платные тарифы
localhost.runFreemiumSSH ключиCLIПростота использования
Cloudflare TunnelFreemiumCloudflare аккаунтCLI / ДашбордИнтеграция с Cloudflare

Основное преимущество GoPublic — возможность самостоятельного развертывания и полный контроль над инфраструктурой. В отличие от облачных решений, вы не зависите от внешних сервисов и их ограничений.

Примеры использования GoPublic

Тестирование веб-приложения

Предположим, вы разрабатываете веб-приложение на локальном сервере и хотите протестировать его на реальном мобильном устройстве:

# Запускаем локальный сервер на порту 3000
python -m http.server 3000

# Создаем туннель к этому порту
gopublic expose 3000

# Получаем публичный URL, например: https://abc123.gopublic.example.com

Теперь вы можете открыть этот URL на любом устройстве с доступом в интернет и протестировать работу приложения.

Разработка вебхуков

При разработке интеграций с внешними сервисами (GitHub, Stripe, Telegram боты) часто требуется публичный URL для получения вебхуков. GoPublic идеально подходит для этой задачи:

// Пример простого сервера для обработки вебхуков
const express = require('express');
const app = express();

app.post('/webhook/github', (req, res) => {
  console.log('Получен вебхук от GitHub:', req.body);
  // Обработка события
  res.status(200).send('OK');
});

app.listen(4000, () => {
  console.log('Сервер вебхуков запущен на порту 4000');
});
# Создаем туннель к серверу вебхуков
gopublic expose 4000 --subdomain webhooks

Теперь вы можете настроить GitHub на отправку вебхуков на ваш публичный URL и тестировать интеграцию в реальном времени.

Демонстрация проекта клиенту

Если нужно быстро показать прототип клиенту, не развертывая его на продакшн-сервере:

# Запускаем демо-версию приложения
docker-compose up

# Создаем туннель к основному порту приложения
gopublic expose 8080 --auth telegram

# Отправляем клиенту уникальную ссылку с доступом
💡
Использование Telegram OAuth позволяет контролировать доступ к туннелю — вы можете ограничить доступ только определенным пользователям Telegram.

Кому подойдет GoPublic

GoPublic — это инструмент, который найдет применение в различных сценариях:

  • Индивидуальные разработчики, которые хотят быстро тестировать свои проекты на реальных устройствах
  • Команды разработчиков, нуждающиеся в безопасном способе демонстрации прототипов
  • DevOps инженеры, которые ценят open-source решения и контроль над инфраструктурой
  • Создатели ботов и интеграций, разрабатывающие вебхуки для различных сервисов
  • Преподаватели и студенты, демонстрирующие учебные проекты

Если вы ищете альтернативу облачным сервисам вроде ngrok, но с возможностью самостоятельного хостинга и уникальными функциями вроде Telegram OAuth, GoPublic — отличный выбор. Инструмент особенно актуален в контексте современных тенденций разработки, где важны безопасность и контроль над инфраструктурой.

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

Заключение

GoPublic представляет собой интересную open-source альтернативу популярным инструментам для создания туннелей. Сочетание Telegram OAuth, современного TUI интерфейса и поддержки вебхуков делает его универсальным решением для различных задач разработки.

Как и другие специализированные инструменты для разработчиков, такие как Gemini 3 Flash для разработчиков или решения для упаковки знаний вроде Agent Skills, GoPublic решает конкретную проблему — предоставляет простой и безопасный доступ к локальным сервисам.

Если вы устали от ограничений облачных сервисов или просто хотите больше контроля над своими туннелями, стоит попробовать GoPublic. Инструмент активно развивается и имеет все шансы стать популярным решением в арсенале современных разработчиков.