Руководство по подключению

Три способа
подключиться к облачному Mac

Для графического интерфейса подойдут VNC или общий экран macOS, для сборок и скриптов — SSH. Вы подключаетесь к выделенному физическому узлу Apple Silicon, а не к виртуальной машине.

Уже оформили заказ? Проверьте IP-адрес, имя пользователя и порт подключения в сведениях об узле в панели управления, а затем следуйте инструкции ниже. Адрес хоста и порты в статье приведены для примера.

AV / ACCESS / 03 Один узел — два способа работы
GUI

Работа с интерфейсом и экраном

Локальный VNC-клиент или общий экран macOS

SSH-туннель → графический рабочий стол узла
CLI

Сборки без передачи изображения

Локальный терминал или CI runner

SSH → командная строка и процессы сборки
Тип узла
Выделенная физическая машина
Данные для входа
Сведения об узле в панели управления
Примеры портов
SSH 22 / VNC 5900
Рекомендуемый способ
Вход по ключу + графический туннель

Порт зависит от параметров вашего узла. VNC и общий экран обычно используют одну графическую службу — это не два отдельных рабочих стола.

Выберите протокол под задачу

Для графического интерфейса и автоматизации — свои способы

Графический интерфейс / разные ОС

VNC

Подходит для Windows, Linux и iPad. Удалённо запускайте Xcode, проверяйте параметры сборки и работайте с системными диалогами, где нужно нажать кнопку.

  • Укажите адрес хоста, порт и данные для аутентификации, необходимые графической службе.
  • По возможности подключайтесь через SSH-туннель: обычное соединение VNC само по себе не зашифровано.
  • Клиент должен поддерживать способ аутентификации, настроенный на узле. Если протоколы не совпадают, сначала измените настройки аутентификации.

Выбирайте VNC, если у вас не Mac, но нужен полноценный графический интерфейс macOS.

Графический интерфейс / клиент для Mac

Общий экран macOS

Лучший вариант, если вы работаете с Mac. Используйте встроенный клиент общего экрана — устанавливать отдельную программу для просмотра рабочего стола не нужно.

  • В Finder выберите «Переход → Подключиться к серверу» и введите VNC-адрес.
  • Используйте данные пользователя узла, а не пароль для входа на локальный Mac.
  • При подключении через туннель укажите адрес переадресации на этом компьютере, а адрес удалённого хоста оставьте в команде SSH.

Выбирайте этот способ, если у вас Mac и вы хотите обойтись без дополнительной настройки клиента.

Командная строка / автоматизация

SSH

Подходит для запуска xcodebuild, просмотра журналов, синхронизации проектов и управления runner. Рабочий стол не передаётся постоянно, поэтому SSH удобен для длительных сборок.

  • Сначала проверьте отпечаток хоста, затем используйте пароль или ключ.
  • Не рассчитывайте на интерактивное SSH-подключение как на надёжный способ управления фоновой задачей: сессия может прерваться.
  • Для постоянно работающих задач используйте службу runner или управляемый фоновый процесс и сохраняйте журналы сборки.

Выбирайте SSH, если задачу можно выполнить командой или нужно подключить её к CI-конвейеру.

Укажите параметры подключения

Четыре клиентские системы — одни данные узла

В таблице для примера указаны порт SSH 22 и порт VNC 5900. Если у вас другие порты, замените соответствующие числа. Уточните в инструкции к узлу и его текущих настройках, совпадает ли пароль графической службы с паролем SSH. Не перебирайте их наугад.

Клиенты и параметры подключения
Локальная ОС Клиент для графического интерфейса Адрес и порт Подключение по SSH
Windows TigerVNC Viewer; сначала проверьте, поддерживает ли он используемый узлом способ аутентификации VNC. Для прямого подключения заполните поля Host / Port в клиенте. После настройки туннеля по инструкции ниже укажите Host 127.0.0.1 и Port 15900. Windows Terminal и клиент OpenSSH. Выполните команду ssh -p 22 build@HOST_IP.
Linux Режим VNC в Remmina или TigerVNC Viewer с поддержкой нужного способа аутентификации. При подключении через туннель укажите 127.0.0.1:15900. Если клиент предлагает отдельные поля для хоста и порта, заполните их по отдельности, не указывая номер дисплея. OpenSSH в терминале. Сначала войдите по SSH, затем настройте локальную переадресацию порта.
macOS Встроенный клиент «Общий экран». Для прямого подключения используйте vnc://HOST_IP:5900, для подключения через туннель — vnc://127.0.0.1:15900. Команда ssh в терминале. Адрес общего экрана также можно открыть командой open.
iPad VNC-клиент с поддержкой аутентификации macOS и SSH-туннелей. Настройте в клиенте SSH-хост и способ аутентификации, затем укажите адрес графического узла 127.0.0.1:5900. Названия полей зависят от клиента. Используйте SSH-клиент с импортом ключей. Сначала проверьте вход по ключу, затем включите встроенную в клиент переадресацию.
Сделайте это при первом входе

Сначала настройте безопасное подключение

  1. 01

    Проверьте адрес и отпечаток

    Найдите IP-адрес узла, порт SSH и имя пользователя в панели управления. При первом подключении сверьте отпечаток хоста. Если он не отображается в панели, уточните его через запрос в поддержку. После переустановки отпечаток может измениться: сначала проверьте причину, затем обновите локальную запись. Не обходите предупреждение отключением проверки хоста.

  2. 02

    Смените начальный пароль

    После первого входа смените пароль текущего пользователя командой passwd и проверьте, какой способ аутентификации использует графическая служба. Если для VNC задан отдельный пароль, смените и его. Не сохраняйте пароли в репозитории, журналах сборки или общих скриптах.

  3. 03

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

    Добавьте открытый ключ, созданный на локальном компьютере, в файл ~/.ssh/authorized_keys на узле. Закрытый ключ храните только на доверенных клиентах. Откройте новое окно терминала и проверьте вход; лишь после этого при необходимости ужесточайте настройки парольной аутентификации. Не закрывайте исходное подключение, чтобы не потерять доступ из-за ошибки.

  4. 04

    Ограничьте доступ к графической службе

    Включайте графическую службу только тогда, когда нужен рабочий стол. В macOS проверьте «Системные настройки → Основные → Общий доступ → Общий экран» и ограничьте список пользователей. Прежде чем отключать или перенастраивать службу, убедитесь, что SSH работает. Шифрование туннеля не отключает прослушивание удалённого порта из интернета.

Создайте ключ локально, на узел скопируйте только открытый

Выполняйте команды ниже на локальном компьютере. Замените build и HOST_IP данными из инструкции к узлу. При создании ключа задайте парольную фразу для закрытого ключа.

ssh-keygen -t ed25519 -f ~/.ssh/armvnc_build
cat ~/.ssh/armvnc_build.pub
ssh -p 22 build@HOST_IP

Войдя на узел, создайте каталог, откройте файл с открытым ключом и задайте права доступа. Вставьте скопированный выше открытый ключ целиком в одну строку. Не вставляйте закрытый ключ.

mkdir -p ~/.ssh
chmod 700 ~/.ssh
nano ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

Вернитесь на локальный компьютер и проверьте вход: ssh -i ~/.ssh/armvnc_build -p 22 build@HOST_IP

Откройте рабочий стол через SSH-туннель

Для локального порта используйте 15900, для удалённого — 5900. Переадресация привязана к локальному адресу loopback и недоступна другим устройствам в сети.

ssh -i ~/.ssh/armvnc_build -p 22 \
  -N -T \
  -o ExitOnForwardFailure=yes \
  -o ServerAliveInterval=30 \
  -o ServerAliveCountMax=3 \
  -L 127.0.0.1:15900:127.0.0.1:5900 \
  build@HOST_IP

Оставьте команду работать. Если ошибок нет, подключитесь к локальному порту 15900 из графического клиента. В macOS можно открыть отдельный терминал и выполнить:

open 'vnc://127.0.0.1:15900'

Туннель не отключает аутентификацию VNC. Закончив работу, закройте графический клиент, затем нажмите Ctrl + C в терминале с туннелем.

Сначала уменьшите изображение, затем проверьте сеть

Настройте качество под задачу — не обязательно передавать каждый пиксель

Это начальные настройки для диагностики, а не гарантия пропускной способности или задержки. Возможность изменить глубину цвета и сжатие зависит от реализации протокола в клиенте. Меняйте по одному параметру и сравнивайте результат на одном и том же действии: например, перемещайте окно Xcode, прокручивайте журнал или вводите текст.

Повседневная работа с кодом и сборками

Начальное разрешение
1440 × 900
Глубина цвета
24 бита
Сжатие
Авто или среднее

В первую очередь добейтесь чёткого текста. Если окно клиента слишком маленькое, включите пропорциональное масштабирование. Не повышайте одновременно разрешение удалённого экрана и коэффициент локального масштабирования.

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

Большое расстояние или ограничения сети

Начальное разрешение
1280 × 800
Глубина цвета
16 бит (если доступно)
Сжатие
Высокое

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

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

Длительные сборки и автоматизация

Основное подключение
SSH
Рабочий стол
По необходимости
Управление задачами
Служба runner

Если изображение не нужно, просто сохраняйте журналы сборки и артефакты. Разрыв графического соединения не завершает сеанс macOS и не должен использоваться для остановки задачи.

Подходит для: постоянно работающих CI-задач, скриптов без участия пользователя и повторяющихся сборок.

Выбирая узел, учитывайте тип задачи. Для интерактивной работы важен сетевой маршрут от вас до узла; для сборок — также скорость загрузки репозитория и зависимостей, а также отправки артефактов. Плавность одного движения мыши ничего не говорит о скорости компиляции.

Определите источник проблемы

Разделите проблемы сети, аутентификации и рабочего стола

Сначала проверьте SSH, затем графическое подключение. Если SSH работает, а VNC — нет, проверьте графическую службу и адрес туннеля. Если не работает ни то ни другое, проверьте состояние узла, адрес, локальную сеть и порты. Не начинайте с переустановки системы.

Соединение постоянно обрывается. Нужно ли запускать задачу заново?

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

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

pgrep -fl xcodebuild
tail -n 80 ~/build.log

Вторая команда подойдёт, только если вы сохраняли журнал по этому пути. Если файла нет, проверьте расположение журнала, указанное в скрипте сборки.

После блокировки экрана появился чёрный экран. Перезагружать узел?

Сначала отключитесь в графическом клиенте, затем подключитесь снова и проверьте, что не включён режим «Только просмотр». Убедитесь, что клиент показывает экран аутентификации. Чёрный экран после успешной аутентификации — это не то же самое, что невозможность подключиться.

Если SSH доступен, не закрывайте сессию и проверьте настройки общего экрана, список пользователей и текущий сеанс. Не завершайте принудительно системные графические процессы и не перезагружайте узел, пока выполняется сборка. Если восстановить доступ не удаётся, создайте запрос в панели управления. Укажите, появился ли чёрный экран до или после блокировки, а также название и версию клиента.

Рабочий стол виден, но буфер обмена не синхронизируется

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

Уточните, нужно ли отдельно отправлять содержимое буфера обмена, и при необходимости переподключитесь. Для передачи файлов проекта используйте SCP или SFTP. Не вставляйте пароли, закрытые ключи и данные подписи в общий буфер обмена для проверки.

SSH не отвечает или сообщает об ошибке аутентификации

Тайм-аут обычно возникает до начала аутентификации. Проверьте IP-адрес и порт, убедитесь, что локальная сеть не блокирует порт, и посмотрите в подробном журнале, на каком этапе останавливается подключение. Если появилось сообщение Permission denied, проверьте имя пользователя, содержимое открытого ключа, права доступа к файлам и выбранный клиентом закрытый ключ.

ssh -v -i ~/.ssh/armvnc_build -p 22 build@HOST_IP

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

Неправильный размер изображения или раскладка клавиатуры

Если изображение обрезано, сначала проверьте масштабирование и подгонку окна в клиенте, затем откройте на узле «Системные настройки → Дисплеи». Изменение размера окна клиента не обязательно меняет разрешение удалённого рабочего стола.

Если клавиши срабатывают неправильно, проверьте локальную раскладку, переназначение клавиш в клиенте и способ ввода на удалённом узле. Сначала протестируйте буквы, цифры и символы в обычном текстовом редакторе, а затем вводите пароль или команду. В Windows сочетания Ctrl / Alt могут отличаться от Command / Option в macOS; их иногда нужно переназначить отдельно.

Подключились? Запустите первую сборку

Подготовьте окружение по инструкции для начала работы. Если возникли вопросы по активации, подключению или оплате, загляните в центр помощи. Ещё не арендовали Mac? Выберите конфигурацию и узел на странице заказа.

Оплата только в USD: USDT-TRC20 и Visa / Mastercard / Amex через Stripe. Доступные способы оплаты зависят от платёжного шлюза при оформлении заказа.