Безопасность: что мы можем и чего не можем

Чтобы завести сервер за вас, toNet просит API-ключ вашего хостинг-провайдера. Это самое серьёзное, о чём мы просим, — серьёзнее любого платежа. Ниже разбор: что этот ключ даёт, как мы его храним, как его отобрать и что вообще остаётся у нас после вас.

Что мы видим

  • Адрес почты для входа
  • API-ключ хостинга — только зашифрованным, в интерфейсе маска
  • Заказ у провайдера: локация, срок аренды, статус установки

Чего не видим

  • Ваш трафик: наших серверов в маршруте нет
  • Приватные ключи протоколов: они не покидают сервер
  • Карту и платежи: оплата идёт напрямую хостингу

Зачем нужен API-ключ хостинга

Ключ нужен, чтобы мастер сам оформил сервер, дождался его выдачи и поставил на него конфигурацию. Без ключа всё это пришлось бы делать руками: регистрировать заказ, копировать root-пароль, ходить по SSH, ставить пакеты, выпускать сертификаты.

У провайдера нет разграничения прав. Ключ — это один токен на весь аккаунт. По нему можно заказать и удалить VPS, получить учётные данные root, узнать баланс и пополнить его. Ограничить его только созданием серверов нельзя: в API провайдера такой настройки нет.

Что ограничивает ключ на стороне провайдера

Ограничить ключ можно только белым списком IP в его настройках, и это в ваших руках. В мастере настройки мы показываем один адрес, с которого ходим; вы вносите его в белый список, и запрос с любого другого адреса получает отказ. Ключ, утёкший куда-то ещё, без вашего адреса бесполезен.

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

Как ключ хранится

В базе ключ лежит только в зашифрованном виде: AES-256-GCM, конверт с версией, идентификатором мастер-ключа, вектором инициализации и тегом целостности. Сам мастер-ключ живёт в окружении приложения, а не в базе — дампа базы недостаточно, чтобы что-то расшифровать.

Шифротекст привязан к конкретной строке через дополнительные аутентифицируемые данные: перенести его в другую запись и расшифровать не получится, проверка целостности не пройдёт. Идентификатор мастер-ключа внутри конверта позволяет менять мастер-ключ, не перешифровывая всё разом.

Ключ расшифровывается в одном месте кода, на время одной операции, и только в памяти. В логи и в ответы браузеру ключ не попадает никогда. В интерфейсе вы видите только маску вида abcd…wxyz — по ней можно узнать свой ключ, но нельзя его восстановить.

Как отозвать доступ

В «Настройках» есть отзыв ключа. Отзыв подтверждают, набрав слово, а не нажав «ОК»: действие необратимое. После отзыва шифротекст стирается из базы безвозвратно, строка остаётся только ради истории — расшифровывать в ней уже нечего.

Ваши серверы после этого продолжают работать как работали. Меняется только одно: мы перестаём их видеть и ничем управлять не можем. Сам ключ остаётся в кабинете провайдера — удалите его и там.

Чего toNet технически не может

Смотреть ваш трафик. Соединение идёт с вашего устройства напрямую на ваш сервер; наших серверов в маршруте нет вообще, так что перехватывать нечего и негде.

Знать приватные ключи протоколов. Они генерируются на самом сервере при установке и оттуда не уезжают.

Списать с вас деньги. Мы не принимаем платежей и не спрашиваем карту: баланс и оплата — это ваши отношения с хостингом.

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

Какие данные о вас остаются

Адрес почты — единственное, что нужно для входа. Пароля нет, вход по одноразовой ссылке. Имя и аватар мы не запрашиваем: поля под них есть в таблице как часть библиотеки авторизации и остаются пустыми.

API-ключ в зашифрованном виде и его маска для показа в интерфейсе.

Технические записи о серверах: идентификатор заказа у провайдера, локация, срок аренды, статусы установки, а также адрес, которым нас видит провайдер при проверке ключа.

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

toNet — не оператор связи

Мы не оператор связи и услуг связи не оказываем. Мы не даём доступ к своим серверам — в этой схеме их нет. Сервер арендуете и оплачиваете вы, у хостинг-провайдера, на своё имя; мы автоматизируем его настройку. Что делать с собственным сервером, решаете тоже вы — см. условия использования.

Нашли проблему

Пишите на support@tonet.it-ranch.ru. Отвечаем в течение одного рабочего дня. Если нашли уязвимость — опишите, как её воспроизвести, и дайте нам разумное время на исправление до публикации.

Заведите свой VPN-сервер

Вход по ссылке из письма — пароль придумывать не нужно. Дальше мастер всё настроит сам.

Создать свой VPN