Claude Code в России
Claude Code в России

Недавно я, не выдержав микроскопических лимитов Cursor (в остальном прекрасный инструмент!) по доступу к передовым моделям Anthropic, захотел получить их по плоским тарифам от фирмы-разработчика. Это такие тарифы с помесячной/годовой оплатой, а не с оплатой за каждый запрос к API.

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

В итоге я всё настроил: Claude работает как родной, и в этой статье — мой опыт, а также тесты разных VPS-локаций.

Я опишу настройку под Linux-десктоп, но в конце в качестве бонуса будет настройка и под Windows.

Вводные

В России Claude Code, а также сайт claude.com никто не блокирует. Это Anthropic блокирует целые страны. Видимо, это очень богатая фирма, которой не нужны наши кровно заработанные рублики.

Ведь даже Google с её Antigravity, а тем более нищий стартап Cursor не блокирует по IP нашу страну и позволяет свободно использовать любые модели, включая самую дорогую Opus 4.6. Но лимиты настолько малы, что иногда их хватает на 4 часа работы, а иногда и на 20 минут.

Anthropic, как разработчик, может себе позволить давать более щедрые лимиты, чем сторонние организации, которые выкупают у него доступ к API.

Подсев на Opus, уже не хочется ничего другого, ну разве что Gemini Pro 3 и 3.1. Но в Antigravity тоже на них низкие лимиты, хотя и не настолько низкие, как на Opus.

Сразу скажу, что почти все настройки делаются на локальном компе, кроме загрузки сертификатов на VPS. То есть, в простейшем случае, VPS нас устраивает как есть, даже настраивать ничего не нужно.

На Хабре про VPS и Claude уже что-то было…

Да, выходила пара статей о том, что для обхода региональных ограничений люди запускали Claude Code на VPS. Меня такой способ использования не устраивает по разным причинам.

  1. Хороший VPS, который потянет всё моё рабочее окружение, стоит дорого. А дешёвые VPS предлагают 1 vCPU и 1–2 GB памяти. На таком железе сборка моих программ будет длиться вечность.

  2. Работать в IDE (VS Code, Cursor) с удалёнными папками и файлами не так комфортно, как с локальными.

Приятный сюрприз от Anthropic

Оказывается, Claude Code поддерживает проксирование из коробки. Многие из его корпоративных клиентов (Пентагон, например) не имеют прямого доступа к сети, так как сидят за плотными файрволами и для доступа используют прокси.

# HTTPS proxy (recommended)
export HTTPS_PROXY=https://proxy.example.com:8080

К сожалению, Claude не поддерживает мой любимый socks-прокси. Но мы обойдём эту проблему.

Чем хорош Socks5-прокси

Тем, что его не нужно устанавливать. Если у вас есть доступ к какому-то VPS с заграничным IP, то буквально нужно набрать одну команду, чтобы его поднять на локальном компе. Всё дело в том, что стандартный ssh-сервер и клиент умеют пробрасывать на локальную машину порт, к которому вы можете подключаться по протоколу socks5.

Делается это так. Для тестирования доступа достаточно буквально добавить несколько букв к вашей стандартной строке ssh.

В минимальном варианте это:

ssh -D 1080 root@your_vps_ip

В чуть более продвинутом варианте тестирования это:

ssh -D 1080 -S none -o Ciphers=aes128-ctr -o ServerAliveInterval=15 -o ServerAliveCountMax=2 root@your_vps_ip

Тут мы отключаем мультиплексирование (мало у кого есть, но я использую), выбираем самоё лёгкое шифрование и заставляем ssh поддерживать канал редкими пакетами, если нет трафика.

Командная строка для ежедневного использования другая и о ней позже.

Установка Claude Code

После запуска socks5-прокси посредством ssh установить Claude Code локально на macOS, Linux, WSL можно так:

ALL_PROXY="socks5h://127.0.0.1:1080" curl -fsSL https://claude.ai/install.sh | bash

Методика тестирования

В RUVDS есть возможность выбирать VPS на разных площадках в разных странах.

Разные дата-центры
Разные дата-центры

Я собираюсь протестировать, как разные площадки работают с Claude: ping до площадки, пинг до Claude, скорость работы API.

Вы легко можете повторить это тестирование сами. Достаточно выбирать сервер с оплатой «За ресурсы», а не помесячной. Для этого можно взять серверы на всех площадках сразу и протестировать их, а потом удалить. Единственное, что взимается установочный платёж — 99 рублей, но я всё сделал за вас, так что можете сэкономить.

Тариф за ресурсы имеет плюсы: вы можете арендовать много ядер и памяти, а платить за то, что реально потребляете.

Вот комментарий от службы поддержки:

По умолчанию в наших образах на Linux файл подкачки — 1 ГБ. Без него вообще никак, за оптимальный принят именно этот объём. Если софт не умещается в память, её нехватка в любом случае вызовет тормоза или невозможность использования. Софт должен умещаться в память, файл подкачки — не волшебная таблетка от нехватки RAM. Реальное использование RAM определяется по занятой RAM. Буквально. Linux не захватывает всю память, что видит. Да, операции кэшируются в RAM, но работает это иначе. К тому же видеть он будет только ту память, которая будет выделена. Гипервизор видит, сколько памяти запрашивает ВМ, и выделяет ей нужное количество; при таком раскладе свободной памяти будет совсем немного. Да, есть статистика по использованным ресурсам. Верхняя граница — это то, что заказал клиент. Заказал 1 CPU и 1 RAM — получил 1 CPU и от 512 MB до 1 GB RAM (512 — нижняя граница в любом случае). Заказал 4 CPU и 8 RAM — получил 4 CPU и от 512 MB до 8 GB RAM. Процессор нельзя менять динамически, поэтому сколько CPU заказал, столько и получил. При оплате учитывается суммарная нагрузка на все ядра. Т. е. 1 CPU, нагруженный на 20%, будет стоить столько же, сколько 4 CPU, нагруженные на 5% каждый.

Вот как выглядит оплата за ресурсы у меня:

Поминутный учёт
Поминутный учёт

При заказе услуги сразу видна помесячная плата при условии, что ваш сервер стоит без нагрузки.

Методика тестирования скорости АПИ

Внутри VPS я вызывал команду:

ALL_PROXY="socks5h://127.0.0.1:1080" curl -s -o /dev/null   -w "DNS Lookup (Поиск DNS):\t\t%{time_namelookup} s\nConnect (Подключение):\t\t%{time_connect} s\nTLS Handshake (TLS-рукопожатие):\t%{time_appconnect} s\nTTFB (Время до первого байта):\t%{time_starttransfer} s\nTotal Time (Общее время):\t\t%{time_total} s\n"   https://api.anthropic.com/v1/messages

Эта команда обращается к апи Антропик через curl с компьютера пользователя и заставляет апи выдать простейший ответ.

Результаты тестирования

Вот таблица, составленная на основе предоставленных данных. Для показателей «пинг» указано среднее значение (avg) и процент потерь. Время загрузки API приведено в секундах.

Дата-центр (локация)

Пинг комп-сервера (avg / loss)

Пинг сервер-api.anthropic.com (avg / loss)

Время загрузки API (мин / среднее / макс), с

Комментарий

ТТС (Казахстан, Алматы)

70.86 ms / 8.33%

53.61 ms / 5.56%

~0.5 / ~1.0 / ~9

Нестабильное соединение, высокие потери пакетов, редкие выбросы до 9 с

Netdirekt (Турция, Измир)

82.83 ms / 0%

13.93 ms / 0%

~0.4 / ~0.4 / 0.4

Очень стабильно, минимальные задержки API

Ovio (Армения, Ереван)

33.68 ms / 0%

76.87 ms / 5.41%

0.36 / 0.5 / 1.45

Потери при пинге до Anthropic, но время ответа в целом приемлемое

ZUR1 (Швейцария, Цюрих)

43.85 ms / 0%

1.08 ms / 0%

0.11 / 0.18 / 0.21

Лучшие показатели: ни одного потерянного пакета, сверхнизкий пинг и быстрый ответ API

Telehouse (Германия, Франкфурт)

41.04 ms / 0%

2.34 ms / 0%

0.16 / 0.17 / 0.18

Иногда пинг до Антропик подскакивает до 11.5 ms

LD8 (Англия, Лондон)

46.12 ms / 0%

5.79 ms / 0%

0.16 / 0.19 / 0.22

Пинг чуточку нестабильный, как до сервера, так и до Антропик, т.к. идёт через море, но быстрый

Как видно из таблицы, победителями оказались Швейцария (Цюрих) и Германия (Франфуркт). Третье и четвёртое место — Англия и Турция. В этой связи удивила Турция, несмотря на несколько более медленный пинг, он очень стабилен и скорость не плавает. У меня ещё была возможность протестировать несколько американских VPS в разных штатах, и, что интересно, ни один из них не дал суммарный пинг меньше, чем у нашей четвёрки победителей — самый быстрый пинг до VPS был 105 ms, а пинг до api.anthropic.com — 1.788 ms.

Такое ощущение, что у Anthropic есть какой-то европейский дата-центр: пинг из Москвы составляет 2.58 ms.

Решение проблемы socks-прокси

Как мы помним, claude не поддерживает socks-прокси, самый наипростейший прокси на свете. Поэтому я поставил на свой комп простенькую программу под названием privoxy, которая переделывает открытый сокс-прокси в http-прокси и положил её в уровень запуска default (это если у вас система инициализации OpenRC).

rc-update add privoxy default

Для немедленного старта:

/etc/init.d/privoxy start

Если в вашем дистрибутиве systemd, то добавляем в автозагрузку и сразу запускаем так:

sudo systemctl enable --now privoxy

В конфиге /etc/privoxy/config написал следующее:

# Иногда Клод долго думает
socket-timeout 900
# Раскомментировал
listen-address 127.0.0.1:8118

Все остальные настройки оставил по умолчанию. Privoxy знает стандартный порт для сокс-прокси (1080), поэтому его можно не прописывать в конфиге.

Настройка SSH на VPS — ключи, порты и пользователь

Я создал на VPS нерутового пользователя (команда useradd), изменил порт для ssh на 2222, чтобы меньше ломились боты. Порт менять нужно аккуратно, его ещё нужно открыть для доступа снаружи перед перезапуском ssh.

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

Этот шаг необязателен. Можно работать из под рута и не менять порт.

Чтобы наш скрипт или фоновый процесс мог автоматически подключаться к VPS и поднимать прокси, ему нужен ключ.

Суть проста: мы создаём на своём компьютере пару ключей (закрытый остаётся у нас, открытый — отправляем на VPS). Когда мы стучимся на VPS, он проверяет наш закрытый ключ с помощью открытого, и если они совпадают, пускает нас без пароля.

1. Создаём ключ (одинаково для Linux, macOS и Windows)

Современная Windows 10/11 имеет тот же встроенный клиент OpenSSH, что и Linux. Поэтому генерация ключа везде выглядит абсолютно одинаково.

Откройте терминал (или командную строку / PowerShell) и введите:

ssh-keygen -t ed25519 -C "ваша_почта@example.com"

Здесь мы используем ed25519 — это современный и надёжный алгоритм. Он лучше и короче старого RSA.

Система задаст вам три вопроса:

  1. Куда сохранить ключ? Просто нажмите Enter, чтобы использовать путь по умолчанию.

  2. Введите кодовую фразу (passphrase). Если вы введёте пароль, то при каждом подключении система будет просить этот пароль. Так как наша цель — автоматизация в фоне, оставьте поле пустым и нажмите Enter.

  3. Повторите кодовую фразу. Снова Enter.

Готово! Ключ создан.

2. Загружаем открытый ключ на VPS

Если вы на Linux (WSL или macOS): Есть специальная утилита ssh-copy-id. Просто введите команду:

ssh-copy-id username@ваш_ip -p 2222

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

Первый коннект нужно делать самому, в командной строке. Так как ssh будет у вас просить разные разрешения.

После того как ключ загружен на сервер, попробуйте подключиться:

ssh username@ваш_ip -p 2222

Если сервер пустил вас сразу, не спросив пароль — поздравляю, вы справились!

Автозагрузка прокси

А потом положил исполнимый файл ssh_proxy.start в папку /etc/local.d (у меня Calculate Linux, у дистрибутивов на основе Дебиан папка будет /etc/rc.local).

Во многих дистрибутивах в этих папках лежат программы, которые специфичны для данного конкретного ПК и должны быть запущены после запуска всех стандартных сервисов.

Файл ssh_proxy.start:

#/bin/sh

# Поднимаем сокс-прокси.
AUTOSSH_LOGFILE=/var/log/autossh.log autossh -M 0 -D 1080 -C -N -f \
  -o "Ciphers=aes128-ctr" \
  -o "ServerAliveInterval=15" \
  -o "ServerAliveCountMax=2" \
  inetstar@ваш_ip -p 2222

Делаем исполнимым:

chmod +x ssh_proxy.start

Программа autossh сама запускает и перезапускает процесс ssh, если он завис или его кто-то прибил.

Теперь у меня прокси включается при включении компа автоматически.

В принцице можно запускать autossh как сервер, но это необязательно. autossh сделана так, что после запуска постоянно висит в памяти и сама контролирует ssh-соеддинение.

Просим работать как родного

Я хотел использовать Claude Code в разных IDE на основе VS Code (Cursor, Antigravity), так как есть удобный плагин. Мне нравится возможность смотреть код и давать конкретные указания LLM.

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

Также мне хотелось, чтобы прокси был только для Claude, чтобы все остальные сайты работали естественным образом, не тратя трафик VPS и без задержкек проксирования.

Для этого я через .bashrc сделал самый первый путь к моей папке ~/bin, куда положил обёртку — текстовый файл под названием claude:

#!/bin/bash

# Запускаем целевую программу
# "$@" передает все аргументы командной строки "как есть" (с сохранением кавычек)
# exec заменяет процесс оболочки процессом программы, экономя ресурсы
export HTTPS_PROXY="http://127.0.0.1:8118"
exec ~/.local/bin/claude "$@"

Файл .bashrc:

export PATH="$PATH:$HOME/bin:$HOME/.local/bin"

Клод ставит себя по умолчанию в папку $HOME/.local/bin, поэтому мне нужно было добиться, чтобы вызывалась именно моя обёртка первая.

Бонус: Как настроить всё это под Windows

Принципиально подход для Windows такой же: нам всё так же нужен SSH-туннель для socks5, локальный конвертер в HTTP и обёртка для прозрачного запуска. Разница лишь в инструментах и путях, так как под Windows нет ни OpenRC, ни .bashrc.

1. Создаём и загружаем SSH-ключ на VPS

Та же команда, что и для Linux:

ssh-keygen -t ed25519 -C "ваша_почта@example.com"

А вот утилиты ssh-copy-id для загрузки открытого ключа на VPS в «чистой» Windows нет (если только вы не используете Git Bash или WSL). Вам нужно скопировать публичный ключ на VPN любым способом: из под WSL, Total Commander + плагин SFTP или таким однострочником в PowerShell.

Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | ssh username@ваш_ip -p 2222 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys"

Что здесь происходит: Мы читаем содержимое вашего открытого ключа и по SSH передаём его на сервер. Там сервер создаёт папку .ssh (если её нет), дописывает ваш ключ в файл авторизованных ключей и строго настраивает права доступа (в Linux с этим строго: если права на чтение ключа будут у кого-то другого кроме целевого пользователя, SSH откажется с ним работать).

2. Поднимаем Socks-прокси через встроенный SSH

Современная Windows 10/11 имеет встроенный клиент OpenSSH, поэтому ничего дополнительно ставить не нужно. Для тестирования соединения можно просто открыть командную строку или PowerShell и ввести нашу любимую команду:

ssh -D 1080 -o Ciphers=aes128-ctr -o ServerAliveInterval=15 -o ServerAliveCountMax=2 root@ваш_vps_ip

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

powershell.exe -WindowStyle Hidden -Command "Start-Process ssh -ArgumentList '-N -D 1080 -o Ciphers=aes128-ctr -o ServerAliveInterval=15 -o ServerAliveCountMax=2 username@ваш_ip -p 2222' -WindowStyle Hidden"

Тут я уже указал новый порт 2222 и подразумеваю, что на VPS вы создали username. Хотя можно и работать и под root

Теперь при старте системы туннель будет тихо подниматься в фоне.

3. Конвертируем Socks5 в HTTP с помощью Privoxy

Тут всё даже проще, чем на Linux, потому что у Privoxy есть готовый инсталлятор.

  1. Скачиваем Privoxy для Windows с официального сайта и устанавливаем.

  2. В меню «Пуск» находим Privoxy, открываем Options -> Edit Main Configuration (откроется текстовый файл config.txt).

  3. Находим и раскомментируем строку: listen-address 127.0.0.1:8118

  4. Добавляем в конец файла таймаут, чтобы Клод мог долго думать: socket-timeout 900

  5. Сохраняем файл.

Саму программу Privoxy тоже стоит закинуть в автозагрузку (в ту же папку shell:startup), чтобы она висела в трее и переживала перезагрузки.

4. Обёртка для Windows

При установке под Windows нативными скриптами (install.ps1 или install.cmd), Anthropic кладёт готовый исполняемый файл claude.exe в папку пользователя: %USERPROFILE%\.local\bin\.

Чтобы Cursor и другие IDE могли прозрачно дёргать Клода, а прокси применялся только к нему и не тормозил остальной интернет, мы сделаем свою обёртку. Нам нужно, чтобы система находила наш скрипт раньше, чем оригинальный бинарник.

  1. Создайте где-нибудь на диске папку для своих скриптов, например C:\bin.

  2. Добавьте эту папку в системную переменную PATH (через «Изменение системных переменных среды»). Важно: переместите C:\bin в списке ВЫШЕ, чем путь %USERPROFILE%\.local\bin.

  3. В папке C:\bin создайте текстовый файл claude.cmd со следующим содержимым:

@echo off
:: Устанавливаем прокси только для текущей сессии этого скрипта
set HTTPS_PROXY=http://127.0.0.1:8118

:: Вызываем оригинальный нативный бинарник Клода напрямую
"%USERPROFILE%\.local\bin\claude.exe" %*

Вот и всё. Теперь, когда вы в терминале или плагин в вашей IDE запускает claude, Windows находит ваш .cmd-файл первым. Он устанавливает переменную среды HTTPS_PROXY и передаёт управление оригинальному claude.exe. Трафик идёт в Privoxy, оттуда в локальный socks5-порт, а далее через SSH-туннель прямиком к серверам Anthropic, которые думают что получают запрос из Швейцарии или Германии.

Впечатления о плоских тарифах

К сожалению, не всё так хорошо, как я представлял. На плоских тарифах с фиксированной оплатой очень большие задержки. На тарифе за 20 долларов они могут достигать 10 минут и даже больше. Если лимит заканчивается, Клод может «висеть» и 40 минут, никак об этом не сообщая.

На тарифе за 100 долларов задержки в среднем составляют 3–5 минут. По конспирологическим версиям, Клод думает так долго, чтобы понять, что из ваших данных может принести пользу Anthropic. Я же склоняюсь к тому, что на плоских тарифах запросы ставятся в очередь, хотя не исключаю и других вариантов.

Пользоваться тем же Opus 4.6 из Cursor намного приятнее, так как там идёт моментальный доступ по платному API, но вот лимит вылетает в трубу за считанные часы.

Впечатления об агентах

Иногда Claude запускает в фоне агентов, которые ищут информацию в интернете или выполняют фоновые задачи. На практике для меня они оказались бесполезны — они «высаживают» лимиты, а фоновые агенты часто приходят со своими выводами, когда основная сессия уже решила проблему. ИМХО, это изобретение, чтобы заставить потратить больше токенов.

Я бы предпочёл моментальную работу по API, чем тормозную с использованием агентов.

Удалённая работа

Я запускаю Claude в tmux и с телефона через ssh-клиент подключаюсь к компу. Это позволяет давать разрешения, чтобы Claude мог продолжать работу. Я не разрешаю ему всё по умолчанию, так как часто он предлагает что-то удалить в процессе разработки.

Заключение

Самой сложной проблемой оказалась не техническая, а проблема с оплатой. В конечном счёте я нашёл один из крупных банков России, который сделал мне физическую карту одной из стран СНГ. Сразу скажу, что виртуальные карты (Лондон) и карты Белоруссии у меня не сработали.

А доступ к Claude через VPS работает прекрасно. Да, не быстро, но это особенность плоских тарифов.

Всех благ и хорошего вайбкодинга!

© 2026 ООО «МТ ФИНАНС»