Недавно я написал две статьи про решение проблем с доступом с Claude Code, Antigravity и другими сервисами из России (часть 1, часть 2), но практика показала, что доступ мне к ним нужен не только с домашнего компьютера, но и с телефона, когда я нахожусь на улице. А с этим сложнее. У мобильных операторов какие-то свои, особые правила маршрутизации интернета.
В прошлый раз мы решали проблемы с использованием VPS с заграничным IP, но на улице они не работают, поэтому там, где не помогает 1 VPS, проблему решат 2 VPS.
Я расскажу о треугольнике SSH, который можно настроить буквально одной командой. Он позволит вам иметь доступ с улицы к зарубежным сервисам, вашему домашнему компьютеру, а также из-за границы — к российским сервисам.
У этого подхода есть масса других применений (например, доступ Telegram-ботов к вашему API), которые читатель, понявший идею, с лёгкостью воплотит.
Полный треугольник проще всего реализовать на Linux-десктопе, но если вам не нужен доступ к домашнему компьютеру, то можно только настроить VPS.
Суть решения
Используя 2 VPS, из которых 1 российский, а второй на заграничном IP, мы через российский VPS получаем доступ к нужным нам сервисам. Трафик при этом идёт вначале на российский VPS, а потом на западный. Находясь за границей, через заграничный VPS мы получаем доступ к российскому, через который уже открываем Госуслуги и всё остальное.
Системный сервис SSH, который есть на абсолютно любом VPS на Linux, позволяет одной командой сделать прямой и реверсный проброс портов. То есть на российском VPS мы получаем порт, дающий прямой доступ к западному VPS, а на западном — порт дающий доступ к российскому VPS.
А если у вас есть доступ к порту VPS, то у вас есть и доступ ко всему, что доступно из той страны.
До кучи, абсолютно также мы получаем порт на российском VPS, дающий доступ к домашнему компу. И это даст полный треугольник SSH — домашний комп, российский VPS и заграничный VPS.
Итак, я приведу эту магическую команду. На российском VPS нужно поставить в скрипт, который запускается при старте сервера, следующее:
AUTOSSH_LOGFILE=/var/log/autossh.log autossh -M 0 -D 1080 -C -N -f \ -o "Ciphers=aes128-ctr" \ -o "ServerAliveInterval=15" \ -o "ServerAliveCountMax=2" \ -R 777:127.0.0.1:7777 \ -L 0.0.0.0:333:127.0.0.1:3333 \ root@ip_заграничного_vps -p 3333
autossh — это команда-надстройка над SSH для стабильности соединения. Она перезапускает соединение в случае каких-либо проблем. Её нужно предварительно установить с помощью вашего пакетного менеджера.
Легенда:
-
333 — порт на российском VPS, через который вы имеете доступ к заграничному VPS
-
3333 — порт SSH заграничного VPS
-
7777 — порт, на котором работает SSH российского VPS
-
777 — порт российского VPS, который открыт на заграничном VPS
-
-D 1080 — порт, на котором внутри российского VPS откроется доступ к socks5-прокси. Например, для работы со старой версией Claude Code (которая на Node.JS)
Этой чудо-командой можно пробросить в обе стороны хоть 100 портов и сделать связным то, что по воле корпораций разорвано.
Восстановление работы Telegram-ботов
Если у вас есть какой-то Telegram-бот, к API которого не может достучаться Telegram, то добавляем ещё строку:
-R 8443:127.0.0.1:443 \
В настройках бота в качестве УРЛ, к которому обращается Telegram, указываем tg.mydomain.ru:8443.
Чтобы всё работало, нужно поставить утилиту autossh, все новые порты открыть и прописать в конфиги ssh на каждом VPS.
Также нужно сгенерировать ключ для доступа к заграничному VPS (подробнее тут или спрашиваем ИИ) и загрузить открытую часть этого ключа в российский VPS.
В настройках обоих VPS разрешаем проброс портов. В папке /etc/ssh/sshd_config.d создаём файл gateway.conf.
GatewayPorts yes
После изменения конфигурации перезапускаем службу:
# или sshd в зависимости от дистрибутиваsystemctl restart ssh
Регистрируем домен
Работать с IP-адресами неудобно, поэтому можно зарегистрировать любой домен. В этом случае при смене VPS достаточно будет только изменить соответствие доменного имени IP-адресу. Пример доменных имён третьего уровня:
home.mydomain.rurussia.mydomain.ruzagran.mydomain.ru
Добавляем домашний комп в треугольник SSH
На gentoo-based дистрибутивах в папку автозапуска /etc/local.d кладём файл ssh_tunnel.start. На других дистрибутивах используем аналогичные механизмы.
AUTOSSH_LOGFILE=/var/log/autossh.log autossh -M 0 -f \-o ServerAliveInterval=20 -o Compression=no \-R russia.mydomain.ru:9999:localhost:22 \-N root@russia.mydomain.ru -p 7777
Делаем скрипт исполняемым:
chmod +x /etc/local.d/ssh_tunnel.start
Наш домашний компьютер теперь доступен извне на российском VPS через порт 9999. Крайне желательно, чтобы доступ был через SSH-сертификат или крайне сложный пароль.
Теперь мы можем контролировать работу Claude Code и других агентов на своём компе во время прогулки по городу. Claude Code запускаем в tmux. А подсоединяемся к сессии после логина через SSH с помощью tmux attach.
Я использую Android-утилиту JuiceSSH, другие люди рекомендуют Termius.
Даём доступ себе и друзьям (Android и iPhone)
Мне понравилась opensource-утилита NekoBox. Для современных Android-телефонов выбираем версию, которая кончается на arm64-v8a.apk.
Там указываем ip российского VPS с портом, на который мы пробросили ssh заграничного VPS.
Я туда добавил два VPS: заграничный и российский. Когда на Wi-Fi, то работает заграничный. А когда на улице, работает тоже он, но через российский IP. Пинг получается примерно 167 ms. Небыстро, но работать можно.
На iPhone аналогичная программа называется Npv Tunnel.
В этих утилитах выбираем тип доступа SSH.
Чтобы не давать root-доступ друзьям, можно делать пользователей, которые начинаются с tun_, а в папке /etc/ssh/sshd_config.d создаём файл tunnel_user.conf:
Match User tun_* PasswordAuthentication yes PubkeyAuthentication yes PermitTTY no AllowTcpForwarding yes GatewayPorts no X11Forwarding no ForceCommand /bin/false
Они не смогут логиниться на сервер, а только использовать его как точку выхода. Генерируйте друзьям сложные пароли из 16+ символов, иначе ботнеты подберут доступ.
Пользователей можно добавлять так:
adduser tun_friend
Заключение
Пока открыт хоть один порт, мы — благородные корсары цифровых океанов, вооружившись SSH-туннелями, будем смело рассекать информационные волны на фрегатах наших VPS!
P.S. В RUVDS сейчас акция — при оплате на 1 год есть скидка 30%. Выбрать VPS на разных площадках в разных странах можно на сайте.
© 2026 ООО «МТ ФИНАНС»
ссылка на оригинал статьи https://habr.com/ru/articles/1049502/