Перейти к основному содержимому

30 записей с тегом "tuna"

Посмотреть все теги

🦎 Туннели стали высокодоступными

· 10 мин. чтения
Анимация: один из трёх дата-центров горит, а запросы посетителей идут через два оставшихся по туннелю в home lab, и сайт продолжает работать

С рождения сервиса туннели Tuna жили на простой схеме. Адрес туннеля вёл прямо на конкретный сервер, и этот сервер делал всё сразу: принимал трафик из интернета, держал подключения клиентов и передавал одно в другое. Для запуска это было разумно. Но Tuna выросла. Сегодня у нас одновременно онлайн больше тысячи туннелей, а туннельные ноды принимают десятки тысяч подключений в сутки. Для такого сервиса схема «всё на одном сервере» уже не годилась. Стоило серверу уйти на перезагрузку или потерять сеть, и все туннели на нём лежали вместе с ним.

14 октября мы закончили переезд, который готовили с лета, и туннели наших пользователей стали по-настоящему высокодоступными. Без преувеличения, это самое большое изменение в инфраструктуре Tuna с момента запуска. Ни один сервер и ни один дата-центр больше не является единственной точкой отказа. Делать для этого ничего не нужно. Адреса и сертификаты переехали сами.

📒 Туннель для 1С — база в интернете одной командой

· 4 мин. чтения

База 1С стоит на компьютере в офисе, а поработать с ней нужно из дома, из командировки или показать её заказчику. Обычно выбирают между удалённым рабочим столом, VPN и публикацией базы на веб-сервере. Последний вариант самый удобный для пользователей — база открывается прямо в браузере, — но и самый хлопотный: нужно поставить Apache или IIS, подключить к нему модуль 1С, пробросить порт на роутере, получить «белый» IP и выпустить сертификат.

В tuna-cli 0.37 появилась команда tuna 1c, которая делает всё это сама. Одна команда — и база доступна по HTTPS-адресу:

tuna 1c "Моя база" --basic-auth="login:password"

☸️ Kubernetes-туннель — временный доступ к кластеру по одной ссылке

· 4 мин. чтения

Знакомая ситуация: подрядчику нужно посмотреть логи в staging-кластере, коллеге из соседней команды — помочь с отладкой, а API-сервер кластера закрыт от интернета. Дальше обычно выбирают между «завести человеку VPN и учётку» и «скинуть свой kubeconfig» — и оба варианта плохие.

В tuna-cli 0.36 появился новый тип туннеля — Kubernetes. Одна команда, и гость получает ссылку на готовый kubeconfig, с которым работает обычный kubectl:

tuna kubernetes --context=staging --service-account=shop/debug --preset=debug --ttl=4h

🎁 Бесплатный тариф без таймера и с постоянным поддоменом

· 3 мин. чтения

У бесплатного тарифа Tuna было два ограничения, на которые жаловались чаще всего: туннель жил только 30 минут, а адрес при каждом запуске был новым. Оба ограничения мы убрали:

  • HTTP-туннель на бесплатном тарифе работает без ограничения по времени — сколько нужно;
  • у каждого пользователя есть собственный постоянный поддомен вида brave-otter-4821.ru.tuna.am, который не меняется между запусками.

🧑‍💻 Terraform-провайдер для Tuna

· 3 мин. чтения

Когда туннелей, доменов и шлюзов становится больше десятка, настраивать их кликами в личном кабинете уже неудобно: сложно повторить конфигурацию для второго окружения, непонятно, кто и когда что поменял. Поэтому мы выпустили Terraform-провайдер yuccastream/tuna — теперь инфраструктуру Tuna можно хранить в git рядом с остальным кодом, ревьюить в merge request'ах и применять через terraform apply.

terraform {
required_providers {
tuna = {
source = "yuccastream/tuna"
}
}
}

resource "tuna_domain" "preview" {
subdomain = "myapp-preview"
location = "ru"
}

🖥️ tuna-cli 0.36 — интерфейс в терминале и большое обновление

· 6 мин. чтения

За последние два релиза консольный клиент tuna-cli изменился сильнее, чем за весь предыдущий год. Главное — у туннелей появился полноэкранный интерфейс в терминале: вместо бегущего текстового лога вы видите ленту запросов, метрики, сессии баз данных и SSH и можете разобрать любой запрос, не выходя из консоли.

🗝️ Секреты целиком из консоли — большое обновление tuna secrets

· 4 мин. чтения

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

В tuna-cli 0.35 tuna secrets стал полноценным инструментом: секретами, проектами, окружениями и сервисными ключами теперь можно управлять целиком из терминала, а вывод команд удобно разбирать в скриптах и CI.

💳 Оплата международными картами — подключили PayPro Global

· 3 мин. чтения

Пожалуй, самая долгожданная просьба в нашей поддержке наконец закрыта: подписку в Tuna теперь можно оплатить международной картой. Мы подключили платёжного провайдера PayPro Global и принимаем оплату в долларах картами Visa и Mastercard практически любой страны.

Переключатель валюты оплаты в личном кабинете Tuna — рубли или доллары США

🔐 Ключи доступа (passkeys) — вход в Tuna без пароля

· 4 мин. чтения

Пароли всем надоели: их придумывают, забывают, пересылают в чат «на пару минут», а потом меняют после очередной утечки. В Tuna появился способ забыть о них насовсем — вход по ключам доступа (passkeys). Приложили палец, взглянули в камеру или ввели PIN — и вы уже в аккаунте. Ни пароля, ни кода из приложения-аутентификатора.

Кнопка «Войти с ключом доступа» на странице входа Tuna

🔐 Безопасность Секретов и отличие от Паролей - мастер-ключ, шифрование и общая архитектура.

· 9 мин. чтения

Когда вы отдаёте свои пароли, токены и ключи доступа во внешний сервис, главный вопрос — можно ли ему доверять. Поэтому мы решили показать, как устроена безопасность Tuna Секретов изнутри: где хранится мастер-ключ, каким алгоритмом шифруются данные и — самое важное — что произойдёт, если нашу инфраструктуру взломают и утечёт вся база данных.

🆕 Приложения — Zero Trust доступ к вашим сервисам

· 5 мин. чтения

Мы рады представить новый компонент платформы Tuna — Приложения. Это защищённый reverse proxy, который закрывает любой ваш веб-сервис авторизацией, SSO и гранулярным контролем доступа — без единой строчки изменений в самом сервисе.

Перейти к разделу Приложения в документации

Главная страница приложений

Поддержка PROXY Protocol в TCP туннелях

· 2 мин. чтения

В консольном клиенте tuna добавлена поддержка PROXY Protocol для TCP туннелей. Теперь вы можете передавать оригинальный IP-адрес и порт клиента напрямую вашему приложению.

$ tuna tcp 54321 --proxy-protocol=2
INFO[22:08:58] Welcome to Tuna
INFO[22:09:00] Forwarding tcp://ru.tuna.am:22347 -> 127.0.0.1:54321

Перейти к документации

🆕 Мониторы - новый функционал

· 4 мин. чтения

Мы рады представить новый компонент платформы Tuna — Мониторы. Функционал для отслеживания работоспособности ваших сервисов, туннелей, задач и инфраструктуры с уведомлениями через различные каналы связи.

Перейти к разделу Мониторы в документации

Главная страница мониторов

IP фильтры в TCP, SSH, Postgres и Redis туннелях

· 3 мин. чтения

В консольном клиенте tuna версии v0.25.0 мы добавили возможность ограничивать IP и подсети с которых можно подключаться. Это повышает уровень безопасности и особенно важно в приложениях без встроенной авторизации.

🆕 Секреты - новый функционал

· 4 мин. чтения

Мы рады представить новый компонент платформы Tuna - Секреты. Предназначенный для централизованного и безопасного управления конфиденциальными настройками и переменными окружения. Это мощная альтернатива .env файлам, переменным в GitLab/GitHub CI и прочим локальным хранилищам.

Перейти к разделу Секретов в документации

Ошибка ERR_NGROK_9040. Ngrok закрыл доступ для всех российских IP-адресов

· 1 мин. чтения

Пользователи массово столкнулись с проблемами в работе ngrok в России — при попытке запустить туннель отображается ошибка ERR_NGROK_9040: "We do not allow agents to connect to ngrok from your IP address". Это связано с санкциями, которые запрещают предоставление сервиса пользователям из России.