Ошибка 403 в Claude Code: регион, шлюз, TLS или вход?
Определите причину сбоя Claude Code: региональная или сетевая блокировка, проверка безопасности на шлюзе, недоверенный сертификат либо истёкшая авторизация. Проверьте исправления в 2.1.317 и 2.1.318, учтите исключение для apiKeyHelper и сравните режимы Manual и Auto. Перед повторным входом уточните фактический Base URL и источник учётных данных.
Содержание

Ошибка HTTP 403 в Claude Code сама по себе не означает, что аккаунт заблокирован. Обновитесь до Claude Code 2.1.318 или новее: эта версия включает описанные ниже исправления диагностики, работы со шлюзами и сертификатами. Затем выберите проверку по тексту ошибки, а не повторяйте вход.
В описании выпуска 2.1.317 Anthropic разделяет региональные или сетевые блокировки и ошибки входа. В выпуске 2.1.318 исправлена обработка повреждённых файлов сертификатов и уточнены сообщения об истёкшей авторизации. Эти изменения помогают найти причину сбоя. Они не снимают ограничения доступа и не исправляют любую конфигурацию шлюза.
Начните с версии и короткого запроса
По состоянию на 2026-11-10 версия 2.1.318 — минимальная, которая включает все рассматриваемые исправления, а не обязательно самая новая. Отдельные исправления впервые появились в следующих выпусках.
| Симптом | Первый выпуск с соответствующим исправлением | Что проверить сначала |
|---|---|---|
| Региональная или сетевая блокировка HTTP 403 показана как ошибка входа | 2.1.317 | Прочитайте объяснение блокировки и определите, какой сервис ответил |
| После региональной или сетевой блокировки VS Code открывает экран входа | 2.1.317 | Повторите запрос в том же интерфейсе VS Code |
| Auto выдаёт ошибку на каждом ходе, когда шлюз из Base URL отвечает 403 или 422 на проверку безопасности | 2.1.317 | Сравните Manual и Auto; исключение для 403 с apiKeyHelper сохраняется |
unable to get local issuer certificate после обновления корневого сертификата прокси с проверкой TLS-трафика | 2.1.317 | Проверьте согласованную с ИТ-службой цепочку сертификатов и версию клиента |
Пустой файл NODE_EXTRA_CA_CERTS, содержимое не в PEM или повреждённый первый сертификат нарушают соединения | 2.1.318 | Исправьте файл и проверьте предупреждения при запуске |
| Обязательный шлюз Claude apps gateway недоступен | 2.1.317 | Проверьте сетевую доступность и доверие к сертификату |
| Истёк срок действия сохранённой авторизации claude.ai | 2.1.318 | Обновите данные входа, а не настройки сети |
В Bash проверьте именно тот CLI, которым пользуетесь:
claude --version
claude auth status
В справочнике CLI команда claude auth status описана как отчёт о состоянии аутентификации. Она показывает состояние настроенного способа входа, но не доказывает, что запросы к модели проходят.
Обновляйте клиент способом, который соответствует вашей установке. Для нативной установки выполните:
claude update
claude --version
Для установки через пакетный менеджер или централизованного развёртывания следуйте инструкции по установке и обновлению. Убедитесь, что выведенная версия не ниже нужной. Повторите проверку там, где возник сбой: успешный запрос из терминала не подтверждает работу подключения в VS Code.
Затем отправьте короткий запрос из той же оболочки Bash:
claude -p 'Reply with exactly OK. Do not use tools.'
Ожидаемый результат — OK без ошибки соединения или аутентификации. Так вы проверите обычный запрос к модели. Эта команда не проверяет механизм контроля действий в Auto и совместимость со всеми функциями.
Региональная блокировка — не истёкшая авторизация
Если сообщение указывает на блокировку, проверяйте сеть и причину отказа в доступе. Повторный вход — не первое действие при таком симптоме.
В журнале изменений 2.1.317 сказано, в переводе:
Исправлено отображение региональной или сетевой блокировки (HTTP 403) как ошибки входа. Теперь сообщение объясняет блокировку.
Тот же выпуск отдельно исправляет открытие экрана входа в VS Code при такой блокировке. Ни одно из исправлений не означает, что обновление разрешает заблокированный запрос.
Запустите Claude Code и выполните /status. По инструкции подключения к шлюзу проверьте фактический адрес и источник учётных данных. До проверки аккаунта выясните, отправляются ли запросы прямо в Anthropic или через настроенный шлюз.
В корпоративной сети попросите ИТ-службу проверить настройки прокси именно для процесса, в котором возникла ошибка. В частности, проверьте HTTPS_PROXY и HTTP_PROXY: они описаны в руководстве по настройке сети. Если подтверждена региональная блокировка, уточните доступность сервиса у провайдера, а не обновляйте данные входа снова.
Сохраните тело ответа, имя целевого хоста, время запроса и его идентификатор, если он доступен. Не отправляйте в поддержку дамп переменных окружения, секретные учётные данные или полные промпты.
Отдельное уведомление о приостановке аккаунта требует обращения в поддержку аккаунтов. В справочнике ошибок Anthropic этот случай описан как приостановленный аккаунт. Ещё одна возможная причина — отсутствие доступа к выбранной модели. Руководство по установке и аутентификации описывает такой ответ 403 даже после успешного входа.
Для проверки повторите короткий запрос через нужное, разрешённое подключение. Если снова получен 403, сопоставьте объяснение в ответе с записями провайдера. Самого кода ответа недостаточно, чтобы сделать вывод о блокировке аккаунта.
Auto выдаёт ошибку на каждом ходе через шлюз
Проверяйте механизм безопасности, если Manual работает, а Auto постоянно выдаёт ошибку через тот же шлюз. Исправление в 2.1.317 касается определённого случая. В переводе запись выглядит так:
Исправлен сбой Auto на каждом ходе, когда LLM-шлюз, заданный как базовый URL, отвечает 403 или 422 на серверную проверку безопасности. Поведение при 403 с
apiKeyHelperне изменилось.
Исключение для apiKeyHelper важно: если он активен, ответ 403 не покрывается этим изменением. Попросите администратора шлюза проверить учётные данные и порядок авторизации. Не раскрывайте секретные значения, которые возвращает apiKeyHelper.
В руководстве по совместимости шлюзов указаны значение anthropic-beta и поле запроса safeguards, связанные с серверной проверкой. Отказ шлюза поддерживать такую проверку нужно разбирать отдельно от отказа принять учётные данные. Код ответа сам по себе не различает эти причины.
Сравните два сеанса в рабочей копии доверенного Git-репозитория. Не меняйте модель, адрес API, учётные данные и задачу между проверками.
Запустите claude --permission-mode default. Попросите Claude выполнить git status --short через Bash и сообщить результат, ничего не меняя в файлах. Если появится запрос разрешения, подтвердите действие.
Завершите сеанс, запустите claude --permission-mode auto и повторите ту же задачу. По инструкции управления режимами разрешений убедитесь, что Auto действительно включён. Если сеанс не перешёл в Auto, его результат не подтверждает работу этого режима.
Если ошибка возникает только в Auto, найдите соответствующий запрос в записях шлюза. Попросите его администратора сверить причину отказа с руководством по совместимости. Сравнение сужает поиск, но не доказывает, какое именно правило шлюза вызвало сбой.
С согласия администратора можно временно переключиться с серверной проверки на отдельные запросы классификатора Claude Code — модели, которая проверяет действия:
CLAUDE_CODE_AUTO_MODE_SERVER=0 claude --permission-mode auto
Переключатель описан в справочнике переменных окружения. Он меняет способ проверки, а не отключает контроль разрешений. Классификатор по-прежнему обращается к модели. Прежде чем оставить настройку, оцените расход на запросы и задержку.
Если этот сеанс работает, а обычный Auto — нет, проверяйте совместимость с серверной проверкой. Если оба варианта завершаются ошибкой, разбирайте указанную проблему учётных данных, модели или шлюза. Не считайте автоматически, что причина покрывается этим исправлением.
Различия в оплате разобраны в статье о серверном классификаторе и резервной проверке. Отдельные запросы классификатора не означают работу без сети или обязательно бесплатный резервный вариант.
Исправьте доверие к сертификату, а не вход
Сообщение unable to get local issuer certificate указывает на проблему доверия к сертификату. Такой сбой возникает на другом уровне, чем HTTP-ответ об отказе в доступе.
В журнале изменений 2.1.317 сказано, в переводе:
Исправлены сбои API-запросов с ошибкой “unable to get local issuer certificate” при работе через некоторые прокси с проверкой TLS-трафика после обновления корневого сертификата.
Исправление относится именно к описанной проблеме после обновления сертификата. Это не означает, что любая ошибка сертификата издателя вызвана той же причиной.
Сначала проверьте версию клиента. Затем уточните у ИТ-службы, менялся ли корневой сертификат прокси и какой набор сертификатов удостоверяющих центров (CA) должен использовать клиент. Возьмите согласованный PEM-файл, а не сертификат из непроверенного источника.
Если вашей сети нужен собственный набор доверенных сертификатов, сохраните выданный ИТ-службой файл как $HOME/company-ca.pem. Запустите новый процесс Claude Code из той же оболочки Bash:
export NODE_EXTRA_CA_CERTS="$HOME/company-ca.pem"
claude -p 'Reply with exactly OK. Do not use tools.'
Это соответствует документированной настройке собственных CA. Путь в примере — выбранное вами локальное имя файла. Сами сертификаты должна предоставить ваша организация.
Признак успеха — завершённый запрос без ошибки сертификата издателя. Если ошибка остаётся, попросите ИТ-службу проверить выданный файл и цепочку сертификатов, которую клиент получает через прокси.
Не задавайте NODE_TLS_REJECT_UNAUTHORIZED=0. В рекомендациях Anthropic по ошибкам сертификатов указано, что эта настройка полностью отключает проверку сертификатов.
Пустой или повреждённый файл NODE_EXTRA_CA_CERTS
Если проблема в самом файле дополнительных CA, используйте 2.1.318 или новее. В журнале изменений сказано, в переводе:
Исправлен сбой всех соединений, когда файл
NODE_EXTRA_CA_CERTSпуст, имеет формат не PEM или начинается с повреждённого сертификата. Теперь используются сертификаты, которые удалось прочитать, а предупреждение выводится в stderr.
Проверяйте не только результат соединения, но и предупреждения в стандартном потоке ошибок — stderr. Исправление позволяет использовать читаемые сертификаты. Оно не восстанавливает файл и не добавляет отсутствующий сертификат, необходимый для вашего прокси.
Замените пустой или повреждённый набор согласованным PEM-файлом. Удаляйте случайно заданную переменную NODE_EXTRA_CA_CERTS только после проверки, что сеть не требует её использования. Затем запустите новый процесс и повторите короткий запрос.
Если запрос прошёл, но предупреждение о файле осталось, сначала исправьте набор сертификатов. Пока предупреждение сохраняется, настройку нельзя считать законченной.
Обязательный Claude apps gateway недоступен
Восстановите соединение с обязательным шлюзом, прежде чем менять рабочие данные входа. Запись в 2.1.317, в переводе:
Улучшена ошибка запуска при недоступности обязательного Claude apps gateway. Теперь она указывает на сеть, а не на вход, и сообщает, если TLS-сертификат шлюза не удаётся проверить.
Здесь речь об обязательном шлюзе Claude apps gateway. Не переносите это исправление автоматически на любой сторонний адрес ANTHROPIC_BASE_URL.
Передайте администратору шлюза имя проблемного хоста и сообщение без секретных данных. Попросите проверить доступность сервиса, DNS, правила прокси и доверие к сертификату. Если сообщение указывает на проверку сертификата, вернитесь к разделу о CA вместо сброса данных входа.
Проверка состоит из двух этапов: Claude Code должен запуститься без ошибки шлюза, а затем выполнить короткий запрос к модели. Если после этого возникает ошибка аутентификации, разбирайте её отдельно.
Повторите вход, только если истёк срок авторизации
Обновите сохранённую авторизацию claude.ai, если сообщение прямо указывает на истечение её срока. В описании выпуска 2.1.318 этот случай отделён от сетевой блокировки. Перевод записи:
Исправлена ошибка входа при истечении срока действия сохранённой авторизации claude.ai. Теперь сообщение объясняет причину, а в
claude -pуказывает командыclaude auth loginиclaude setup-token.
Для интерактивной работы, в которой должен использоваться ваш аккаунт claude.ai, выполните в Bash:
claude auth login
claude auth status
claude -p 'Reply with exactly OK. Do not use tools.'
Завершите вход, прежде чем проверять состояние аутентификации и отправлять запрос. Ожидаемый результат — нужный способ аутентификации и успешный ответ модели.
Выпуск также указывает claude setup-token для восстановления доступа при неинтерактивной работе. Следуйте руководству по аутентификации, а не встраивайте токен в скрипт.
Учётные данные, выданные шлюзом, нужно восстанавливать у того, кто их выдал. Вход в claude.ai не проверяет эти данные. Если после обновления авторизации остаётся ошибка региона, сети или шлюза, вернитесь к соответствующему разделу вместо очередного повторного входа.
Проверьте ANTHROPIC_BASE_URL и активные учётные данные
Перед дальнейшими изменениями проверьте подключение внутри сеанса, где возникает сбой. Инструкция подключения рекомендует /status: команда показывает фактический Base URL и источник учётных данных.
Используйте базовый адрес шлюза, указанный для Anthropic-совместимого протокола. Руководство по протоколу связывает ANTHROPIC_BASE_URL с форматом Anthropic Messages и путём /v1/messages. Не копируйте сюда адрес OpenAI-совместимого API без проверки протокола. Различия объясняет руководство по базовым адресам и конечным точкам API.
Выберите переменную учётных данных под заголовок, который ожидает шлюз. В документации Anthropic ANTHROPIC_AUTH_TOKEN соответствует Authorization: Bearer, а ANTHROPIC_API_KEY — X-Api-Key. Следуйте инструкции шлюза, а не записывайте один ключ во все доступные переменные.
Если у вас уже настроено подключение через BetterToken API, его инструкция для Claude Code задаёт https://bettertoken.ai без /v1 и переменную ANTHROPIC_AUTH_TOKEN. По состоянию на 2026-11-10 в каталоге есть claude-sonnet-5-5. Это отдельный API-доступ, а не подписка Claude и не гарантия работы каждой функции Claude Code.
По состоянию на 2026-11-10, согласно документации BetterToken о доступе из России, его API в обычном сценарии доступен из России без VPN. Это относится только к API BetterToken. Доступность сторонних сайтов, скачивания клиента, входа в аккаунты и обновлений нужно проверять отдельно.
Если фактическое подключение отличается от задуманного, используйте инструкцию проверки активного провайдера Claude Code. Сопоставьте короткий запрос с записями нужного провайдера, затем повторите действие, которое вызывало ошибку. Обычного ответа достаточно для базовой проверки соединения. При сбое Auto нужно также успешно повторить сравнение режимов.