Свой сервер с Claude
Инструкция · macOS

Свой сервер: Xray, Claude Code и Remote Control

Один промт для Claude на Mac проведёт от голого сервера до окружения, которое открывается с телефона. У нас это заняло два вечера. С этим промтом быстрее: ошибки, на которые мы тогда потратили время, в нём уже учтены.

Mac→ ssh →сервер→ Xray →VPN→Anthropic←телефон

Что подготовить

Этапы

Claude проходит их по порядку, после каждого показывает проверку и ждёт вашего «ок».

  1. SSH по ключу
    Отдельный ключ, алиас srv, вход по паролю отключается.
  2. Xray
    Клиент VPN на сервере с вашей подпиской и ежедневным автообновлением.
  3. Прозрачный прокси
    Весь исходящий HTTPS идёт через VPN. С российского IP Anthropic отвечает 403.
  4. Claude Code
    Установка и вход через claude.ai. Ссылку для входа откроете на Mac.
  5. Remote Control
    Постоянный сервис: сервер появляется в claude.ai/code и в приложении на телефоне.
  6. Перезагрузка и шпаргалка
    Проверка, что всё поднимается само, и памятка, где что лежит.

Как выполнять команды

Разбираться в терминале не нужно. Когда нужно что-то выполнить, Claude присылает команду отдельным блоком, а справа у блока есть две кнопки.

ssh-copy-id -i ~/.ssh/id_ed25519_srv root@IP Выполнить команду Скопировать
Нажмите ▷, и команда выполнится в панели терминала рядом с чатом. Кнопка справа копирует команду, если Claude попросит вставить её куда-то ещё. Если кнопки ▷ нет, напишите Claude: «дай команду отдельным блоком с кнопкой запуска».
Терминал % ssh-copy-id -i ~/.ssh/id_ed25519_srv root@IP root@IP's password: Введите пароль и нажмите Enter Символы при вводе не видны. Так и должно быть.
Если команда просит пароль, вводите его в панели терминала, а не в чат. Пароль понадобится один раз, на первом этапе.

Промт

Впишите IP и ссылку, они подставятся в текст. Страница ничего не сохраняет и никуда не отправляет. Потом скопируйте промт целиком в новую сессию Claude.

Можно оставить поля пустыми и вписать данные прямо в чате вместо <IP> и <ССЫЛКА>.

Важно

При выполнении промта Claude может обнаружить особенности вашей системы. Отвечайте на его вопросы и переспрашивайте всё, что непонятно.

Промт для Claude

    

Если что-то пошло не так

Этап 2Claude пишет, что ссылка зашифрована (happ://crypt)

Вы вставили ссылку для приложения Happ. Серверу нужна обычная ссылка от Василия, которая начинается с https://sinergium.glotov-online.ru/api/sub/. Попросите её у Василия и отправьте Claude.

Этап 4Anthropic отвечает 403

Трафик идёт мимо VPN. Попросите Claude проверить xray-redir status и что curl https://ipinfo.io показывает IP VPN.

Этап 5Ошибка «400 plain HTTP request sent to HTTPS port»

Где-то прописан HTTPS_PROXY, чаще всего в ~/.claude/settings.json. Его нужно убрать: доступ обеспечивает прозрачный прокси.

Этап 1Не пускает по ssh

Скорее всего, сервер временно заблокировал ваш IP после нескольких неудачных попыток входа. Подождите 15 минут и не пытайтесь войти: каждая попытка может продлить блокировку. Если Claude сам пробует подключиться, напишите ему «не подключайся, ждём». Через 15 минут попросите его подключиться один раз, лучше через раздачу интернета с телефона. Если не пускает и так, напишите Василию: у него есть доступ к веб-консоли сервера. Ему нужно снять блокировку (fail2ban-client unban --all) и проверить, что ваш ключ есть в /root/.ssh/authorized_keys. Вывод команд перешлите Claude.

Если Claude видит ошибку «Bad owner or permissions», попросите его исправить права на ключ: chmod 600 ~/.ssh/id_ed25519_srv ~/.ssh/config.