SSH-ки наголо! Цифровой океан ждёт нас!
SSH-ки наголо! Цифровой океан ждёт нас!

Недавно я написал две статьи про решение проблем с доступом с 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.ru
russia.mydomain.ru
zagran.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.

Внешний вид Nekobox
Внешний вид Nekobox

Там указываем 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 ООО «МТ ФИНАНС»