Я сделаль. И запаковал сервер так, что его можно поднять с телефона: вбил IP и root-пароль - и нода в библиотеке. Цепочка из нескольких VPS - entry → relay → exit. Теперь даже на сервер заходить не надо.

[Любые совпадения случайны, присутствует сарказм и мета-ирония — прим. автора]

Преамбула

Раньше я делал Naive-клиент, и он нормально работал. Но потом клоуны решили включить поведенческий анализ. И вот - все. Ничего не работает. Дальше опять начинается гуглинг и, в итоге, опять я прихожу к VLESS с кучей надстроек, эмуляций различных браузеров, игр и так далее. Ах да, еще надо это все настраивать, делать цепочки из нескольких серверов, чтобы выход и вход не совпадал, заниматься скриптингом и снова молиться, что все заработает и будет работать дальше. А тем временем ssh -D отлично работал все это время, и я такой, а почему бы не выдать root всем завернуть это все внутрь ssh, да еще и по цепочке, да еще и чтобы настраивалось одной кнопкой. И не прокси, а полноценный VPN.

Ведь протокол уже есть - SSH. Его не надо изобретать. Им пользуются все, как и https. Если клоуны заблокируют SSH, то это будет конечно весело, тут уже, боюсь, я ничем помочь не смогу. Осталось лишь написать клиент под это дело, опубликовать его в сторах, доказать опять Apple что это приложение уникальное (как они достали с этим), рассказать ревьюверам в Гугле что такое SSH и как оно работает... тяжела жизнь Open Source программиста. Но я справился.

Представляю ɹǝddoH - (его тяжело будет найти в списке приложений на устройстве, ибо попробуйте это напечатать). Идея простая как тапок: телефон поднимает обычный Packet Tunnel / VpnService, а дальше весь IPv4 уходит сырыми IP-пакетами поверх SSH на entry-ноду. Там крутится hopperd, который гоняет трафик дальше по цепочке (снова по SSH) до exit, где TUN + NAT в интернет. Комбинируйте цепочки и сервера как хочется. Как насчет того, чтобы сделать нейронную сеть?

Снаружи с телефона до первого хопа - это SSH. Между хопами - тоже SSH. Чистейший. Никакого "ещё одного модного handshake'а, который завтра отфигнерят (именно отфингерят, а не отфингерпнинтят)". Вроде никто еще не запретил загружать файлы на сервера, а серверам - обмениваться информацией по зашифрованному каналу.

Подробности и исходники - ZonD80/hopper. Клиент сам провиженит цепочку: по SSH ходит exit к entry, поднимает hopperd, потом VPN-расширение коннектится только к первому хопу и уже через него едет весь трафик.

Почему хопы по SSH, а не ещё один VLESS

Во-первых, VLESS это модно. Я уже писал про это.

Плюс тренда - море инструкций. Минус - однотипные паттерны и постоянная гонка "какой transport сегодня не режут". Но когда нужно несколько своих машин подряд и NAT на выходе - прокси-клиенты начинают превращаться в оркестр костылей, которым надо как-то управлять. Тут же - настроил и забыл. Не работает - пересоздал ноду за секунды. Я на этот раз не стал даже показывать QR коды на сервере - все деплоится прямо из приложения!

SSH multi-hop в админском мире существует сто лет (ProxyJumpssh -J). Не хватало одного: чтобы это было VPN в прямом смысле слова, а не прокси. Нужен был еще и серверный компонент, ибо SSHd не умеет то, что нужно, из коробки. А еще я люблю все запаковывать в один бинарник, чтобы если что - удалил и все.

ɹǝddoHd - как раз про это. Один бинарник hopperd на Linux, один протокол data plane (iptunnel поверх byte stream), клиенты на iOS (Network Extension) и Android (VpnService). Несколько цепочек на одних и тех же VPS. Несколько устройств на одной цепочке - каждому свой адрес из 10.64.{octet}.0/24.

Технически это то, что вы подумали - L3: телефон получает адрес из пула цепочки, default route уходит в туннель, exit делает NAT - до 250 подключений на сервер (или до лимита tun интерфейсов) - хостинги, welcome.

А как этим пользоваться?

Купите дешевую ubuntu vps (и попрощайтесь с ней), дальше все настроится само (почти).

Откройте ɹǝddoH → Configure chains → Server library → Deploy → host/IP, root, порт 22, пароль root → дождитесь деплоя. Сервер сам попадёт в библиотеку. Повторите для каждого хопа. Соберите цепочку entry → … → exit → Connect.

И все! Никаких сканирований QR кодов (хотя это тоже есть, ибо sharing is caring), вам даже не нужен компьютер, в отличие от ситуации с моим Naive-клиентом.

Клиенты

iOS/Android приложение: библиотека серверов, цепочки, Deploy / QR / Import JSON, Connect. Профили совместимы между платформами - можно шарить JSON/QR (они содержат ключи, это секреты, но вы и так уже попрощались с VPSкой, не так ли)?

Доступно:

Again, исходники открыты - hopper - you're welcome.

PS: Одной ноды мало?

Одна VPS = однохоповая цепочка (entry = exit). Две и больше — настоящий multi-hop. Один и тот же сервер может быть entry в одной цепочке и exit в другой.

Великий комбинатор
Великий комбинатор

Что я прошу у сообщества

Проект живой и боевой. Поэтому искренне приветствую:

  • больше тестов на разных сетях, операторах и странах;

  • pull request'ы - от мелких правок до аккуратных улучшений UX;

  • отзывы - что болит, чего не хватает, где я накосячил;

  • one-click-QR-коды для импорта готовых серверов, хостинги - предлагаю продавать лопаты во время золотой лихорадки - давайте запилим партнерку!

Legal notice: следуйте законам вашей страны и пробрасывайте туннели только туда, куда можно; любите ближнего (в рамках скреп).

Купите мне кофе, если хотите.

Комментарии (5)


  1. UplandDivan
    20.07.2026 11:04

    Если клоуны заблокируют SSH, то это будет конечно весело, тут уже, боюсь, я ничем помочь не смогу.

    SSH не священная корова. Как минимум случаи ограничения по скорости или объёму трафика на нём уже были.


    1. Z55
      20.07.2026 11:04

      Уже несколько месяцев не могу войти по ssh, на один из своих vps. Блокируют именно протокол, т.к. другие сервисы на нём работают и доступны.


  1. Z55
    20.07.2026 11:04

    Представляю ɹǝddoH

    А нафига такое название, которое набрать невозможно (очень сложно)?


    1. ZonD80 Автор
      20.07.2026 11:04

      Ну хоть какая-то изюминка должна же быть?)