C↗ / ПРАКТИКУМWINDOWS → SSH → DEBIAN
ПРАКТИЧЕСКОЕ РУКОВОДСТВО / 01

Как подключить Codex на Windows к своему VPS по SSH

Вы пишете задание на Windows.
Codex выполняет его на вашем сервере.

01 / Windows→ SSH →02 / Ваш VPS

Пройдём весь путь: войдём на Debian, подготовим Codex, создадим отдельный SSH-ключ и отправим первое задание в удалённый проект.

Всегда смотрите на подпись над командой. Она показывает, где её выполнять: на Windows, на VPS или в чате Codex.
ШАГ 01

Что потребуется

Подготовьте компьютер с Windows, настольное приложение ChatGPT с режимом Codex и вкладкой SSH, VPS с Debian, адрес VPS, имя пользователя и действующий SSH-порт. Задание вы пишете в чате удалённого проекта в приложении Windows. Агент выполняет команды на подключённом VPS и возвращает результат в этот чат.

Здесь все адреса и примеры вывода условные. Заменяйте ПОРТ действующим SSH-портом, а IP_СЕРВЕРА — адресом своего VPS. Названия пунктов приложения могут немного отличаться между версиями.

ШАГ 02

Первый вход из Windows

Откройте PowerShell и проверьте, установлен ли SSH-клиент:

PowerShell на Windows
ssh -V

Ожидается строка с версией OpenSSH. Если команда не найдена, включите компонент «Клиент OpenSSH» в дополнительных компонентах Windows. Затем подключитесь:

PowerShell на Windows
ssh -p ПОРТ root@IP_СЕРВЕРА

При первом соединении сверьте отпечаток ключа сервера с доверенным источником: например, через консоль VPS у провайдера. Только после совпадения подтвердите соединение словом yes. При вводе пароля символы и звёздочки не отображаются — это нормально.

ШАГ 03

Проверка и установка Codex на VPS

В окне с открытым SSH-сеансом выполните:

Терминал Debian на VPS
whoami
command -v codex
codex --version

Для этого примера whoami возвращает root. Следующие команды должны показать путь к Codex и его версию. Если Codex уже установлен и работает, пропустите установку. Если видите codex: command not found, используйте способ, которым мы воспользовались:

Терминал Debian на VPS
apt update
apt install -y curl ca-certificates
curl -fsSL https://chatgpt.com/codex/install.sh | sh
export PATH="$HOME/.local/bin:$PATH"
codex --version

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

ШАГ 04

Вход в аккаунт на VPS

Терминал Debian на VPS
codex login --device-auth

Откройте выданный командой адрес в браузере на своём компьютере. Войдите в аккаунт ChatGPT, введите выданный одноразовый код и вернитесь в терминал. Никому не отправляйте этот код. Затем проверьте вход:

Терминал Debian на VPS
codex login status

Ожидаемый ответ в нашем случае: Logged in using ChatGPT. Если вход по коду недоступен, проверьте, разрешена ли device code authentication в настройках безопасности аккаунта или рабочей области.

ШАГ 05

Отдельный SSH-ключ на Windows

Оставьте первое окно с терминалом VPS открытым. Откройте ВТОРОЕ окно PowerShell на Windows. Убедитесь, что видите приглашение вида PS C:\…>, и выполните именно в нём:

PowerShell на Windows
New-Item -ItemType Directory -Force "$env:USERPROFILE\.ssh" | Out-Null
ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\codex_vps" -C "codex-windows"

SSH попросит парольную фразу и её повтор. Она защищает закрытый ключ. В нашем примере для автоматического входа нажали Enter дважды и оставили её пустой; тогда доступ к файлу ключа позволяет использовать его без этой дополнительной защиты.

Создаются два файла: codex_vps — закрытый ключ, остаётся на Windows; codex_vps.pub — открытый ключ, его добавляем на сервер. Закрытый ключ не вставляйте в чат и не загружайте на VPS.

ШАГ 06

Добавление открытого ключа на Debian

Во втором окне Windows покажите открытый ключ:

PowerShell на Windows
Get-Content "$env:USERPROFILE\.ssh\codex_vps.pub"

Скопируйте одну строку целиком. Переключитесь в первое окно, где всё ещё открыт SSH-сеанс VPS под root:

Терминал Debian на VPS
mkdir -p /root/.ssh
chmod 700 /root/.ssh
cat >> /root/.ssh/authorized_keys

После последней команды терминал ждёт ввод. Вставьте скопированную строку открытого ключа, нажмите Enter, затем Ctrl+D. Когда вернётся приглашение сервера, выполните:

Терминал Debian на VPS
chmod 600 /root/.ssh/authorized_keys
ШАГ 07

Проверка входа по ключу

Во втором окне PowerShell на Windows выполните:

PowerShell на Windows
ssh -o IdentitiesOnly=yes -i "$env:USERPROFILE\.ssh\codex_vps" -p ПОРТ root@IP_СЕРВЕРА

Ожидаемый результат — приглашение сервера без запроса пароля пользователя root. Если ключ защищён парольной фразой, SSH может отдельно запросить её. После подключения это окно тоже выполняет команды на Debian; чтобы вернуть его на Windows, выполните exit.

ШАГ 08

Подключение в графическом приложении

Переключитесь в Codex и откройте Настройки → Подключения → SSH → Добавить. Если список пуст и написано «SSH-подключения не найдены», выберите «Добавить вручную».

ПолеЧто указать
Отображаемое имяЛюбое понятное название, например «Мой VPS»
Имя хостаroot@IP_СЕРВЕРА
Порт SSHТот же порт, который сработал в PowerShell
ИдентификаторПолный путь к закрытому ключу codex_vps, без .pub

Чтобы узнать полный путь, в PowerShell Windows, вне SSH-сеанса, выполните:

PowerShell на Windows
Write-Output "$env:USERPROFILE\.ssh\codex_vps"

Выберите файл или укажите полученный путь и нажмите «Сохранить». Ориентир успешного подключения — зелёная точка и статус «Подключено».

ШАГ 09

Создание удалённого проекта

В терминале VPS создайте рабочую папку:

Терминал Debian на VPS
mkdir -p /root/server-admin

В приложении Windows нажмите значок папки с плюсом справа от SSH-подключения. Выберите /root/server-admin, назовите проект «Управление VPS» и нажмите «Создать проект».

Когда появится «Доверять этой папке?», сверьте сервер и путь. В нашем примере папку только что создал сам пользователь, поэтому выбрали «Доверять папке».

ШАГ 10

Где писать первый промт

Вернитесь в основное окно приложения. Слева в разделе «Проекты» откройте свой удалённый проект «Управление VPS», затем откройте в нём чат. Вставьте туда проверочное задание:

Чат Codex в приложении Windows
Выполни hostname, whoami, pwd, cat /etc/os-release, uptime, free -h и df -h /. Кратко сообщи имя сервера, пользователя, рабочую папку, версию ОС, нагрузку, доступную память и место на диске. Ничего не изменяй и не устанавливай. Не читай пароли, токены и приватные ключи

Подключение работает, если имя узла в ответе совпадает с именем в SSH-терминале, рабочая папка — /root/server-admin, а результаты появились в чате Windows. Для сверки имени выполните в SSH-терминале:

Терминал Debian на VPS
hostname
ПОДСКАЗКИ

Если застряли

codex: command not found

Проверьте, что вы в терминале Debian. Если установка ещё не выполнена, вернитесь к шагу 3. Если выполнена — повторите export из шага 3: PATH мог не сохраниться в новом сеансе.

SSH всё ещё просит пароль

Отличайте пароль root от парольной фразы ключа. Проверьте пользователя, адрес, порт и путь после -i. На сервер добавляется одна полная строка из .pub, а на Windows используется файл без .pub. Проверьте права 700 у /root/.ssh и 600 у authorized_keys. Не закрывайте работающий SSH-сеанс и не меняйте настройки SSH наугад.

Приложение не нашло подключений

Пустой список не означает, что VPS недоступен. Выберите «Добавить вручную» и заполните поля шага 8, используя параметры уже проверенного входа PowerShell.

Непонятно, где писать промт

Выйдите из настроек в основное окно. Слева откройте «Проекты» → «Управление VPS», затем чат внутри проекта. Поле ввода находится в чате, а не на странице SSH-подключений.