Сначала найдите данные для подключения, затем настройте вход по ключу и выполните первую сборку. Руководство поможет подключить облачный Mac к повседневной работе команды — шаг за шагом.
Вы получаете выделенный физический сервер, а не виртуальную машину. Графический интерфейс macOS и командная строка доступны полностью.
От заказа до первого подключения
Сначала убедитесь, что сервер готов
Закажите сегодня — сервер будет готов сегодня. Ниже — примерная последовательность действий, всего около 4 минут. Статус оплаты и готовность сервера проверяйте в консоли: не создавайте повторный заказ после оплаты.
1
Оформите заказ: выберите сервер и срок
Выберите расположение одного из четырёх серверов: Сингапур, Токио, Сеул или Гонконг, а затем срок аренды — день, неделю, месяц или квартал. Проверьте модель, дополнительные опции и дату окончания аренды.
около 1 минуты
2
Оплатите заказ и сохраните его данные
Поддерживаются только USDT-TRC20 и карты Visa, Mastercard и Amex через Stripe. Оплата принимается в долларах США. Доступные способы оплаты проверяйте по ответу интерфейса на стороне сервера.
около 1 минуты
3
Дождитесь готовности сервера и настройки системы
Подключайтесь, когда физический сервер будет назначен и система подготовлена. Если заказ оплачен, но сервер ещё готовится, сначала проверьте его статус — не принимайте отсутствие готовности за сетевую проблему.
около 2 минут
4
Получите данные для входа: откройте сведения о нужном сервере
Войдите в консоль, откройте список экземпляров и выберите сервер из своего заказа. Там указаны адрес хоста, SSH-порт и имя пользователя. Ориентируйтесь на данные в карточке и перед подключением проверьте номер сервера.
после готовности
Всего ≈ 4 минуты. Если заказ оплачен, но данные для входа по-прежнему недоступны, отправьте заявку в поддержку через консоль, указав номер заказа и текущий статус. Не публикуйте полные учётные данные, закрытый ключ или данные платёжной карты.
Первое подключение
Сначала проверьте подключение, затем инструменты
В примере ниже используется сервер в Токио. Показаны фрагменты команд для входа по SSH, проверки SDK, создания архива и загрузки приложения. Укажите фактическое имя хоста, рабочую область, схему и название процесса fastlane для своего проекта. Это не тест производительности и не журнал реального заказа.
Сервер в Токио · имя хоста YOUR_NODE_HOST · примеры фрагментов команд и вывода
$ ssh -v -i ~/.ssh/minissh_ed25519 -p "$NODE_SSH_PORT" "$NODE_USER@$NODE_HOST"
debug1: Server host key: ssh-ed25519 SHA256:…
debug1: Authentication succeeded (publickey).
Authenticated using publickey.
Welcome to your Mac mini.
$ xcodebuild -showsdks
iOS SDKs:
iOS -sdk iphoneos
$ xcodebuild -workspace App.xcworkspace -scheme App -archivePath build/App.xcarchive archive
** ARCHIVE SUCCEEDED **
$ fastlane upload
Uploading build to App Store Connect
Upload complete
Первое подключение по SSH: сначала задайте NODE_HOST,NODE_USER и NODE_SSH_PORT по значениям из карточки сервера. При первом подключении проверьте отпечаток ключа хоста. Если не можете его подтвердить, сначала уточните данные через заявку в поддержку — не отключайте проверку подлинности хоста.
Первая сборка: сначала выполните xcodebuild -version и xcodebuild -showsdksи запишите версии установленного набора инструментов. Создавайте архив только после подготовки зависимостей проекта, материалов для подписи и конфигурации сборки;fastlane upload можно использовать, только если в проекте настроен соответствующий процесс и есть разрешение на загрузку.
Проверьте каждый этап: успешный вход по SSH ещё не означает, что проект готов к сборке; успешное создание архива не означает, что приложение загружено. Сохраняйте результаты подключения, создания архива и загрузки отдельно — так при поиске неполадки будет ясно, на каком этапе она возникла.
Безопасное подключение
Сначала проверьте ключ, затем отключите вход по паролю
Выдавайте каждому пользователю доступ по его открытому ключу — не отправляйте один закрытый ключ всей команде. При изменении настроек аутентификации оставьте текущий сеанс открытым и проверьте новое подключение во втором терминале. Только после этого завершайте исходный сеанс.
01
Создайте ключ на своём компьютере
Выполните следующую команду на своём компьютере и задайте пароль для закрытого ключа. Загружать или передавать можно только файл с открытым .pub ключом. Закрытый ключ без расширения всегда храните локально.
ssh-keygen -t ed25519 -f ~/.ssh/minissh_ed25519
02
Добавьте открытый ключ и проверьте вход
Добавьте открытый ключ в файл пользователя на сервере ~/.ssh/authorized_keys, поместив каждый ключ на отдельную строку. Передать ключ можно через уже проверенное подключение. Затем проверьте права доступа к каталогу и файлу.
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Откройте новый терминал и проверьте вход, явно указав закрытый ключ. Убедитесь, что подключились к нужному серверу под нужным пользователем, и только потом меняйте настройки аутентификации.
03
Отключите вход по паролю
Попросите участника с правами администратора проверить действующую конфигурацию SSH и задать для PasswordAuthentication и KbdInteractiveAuthentication значение no. После изменения проверьте синтаксис и итоговые значения: убедитесь, что их не переопределяют другие настройки.
Примените настройки согласно способу управления службами в вашей системе и проверьте новое подключение. Если не уверены в конфигурации, сначала отправьте заявку в поддержку. Не перезапускайте службу и не отключайте удалённый вход в единственном работающем сеансе.
04
Подключайтесь к рабочему столу через туннель
Убедитесь, что на сервере настроены общий доступ к экрану и права нужного пользователя, затем создайте локальный SSH-туннель. В примере локальный порт 15900 перенаправляется на порт 5900 по адресу loopback сервера. Прослушивание порта в локальной сети не открывается.
Затем подключитесь из локального клиента удалённого рабочего стола к адресу 127.0.0.1:15900. После закрытия терминала с туннелем подключение прервётся. Если SSH работает, а подключение к рабочему столу — нет, сначала проверьте службу общего доступа на сервере, а не открывайте порт рабочего стола напрямую.
Работа в разных часовых поясах
Один сервер — отдельная учётная запись для каждого
Выделенный сервер означает, что физический узел используется вами, но задачи разных пользователей автоматически не изолируются. Если команда в Северной Америке и Азиатско-Тихоокеанском регионе работает на одном сервере Mac mini, сначала создайте отдельные учётные записи, затем согласуйте время сборок и фиксируйте передачу задач.
Отдельная учётная запись для каждого участника
Создайте для каждого участника отдельную учётную запись macOS и добавьте только его открытый ключ. Для повседневной разработки используйте обычные права, а изменения на уровне системы поручайте назначенному администратору.
После ухода участника удалите выданные ему разрешения и проверьте сохранённые в инструментах сборки токены доступа. Одной смены общего пароля недостаточно.
При передаче: учётные записи, ключи, ответственный администратор.
Планируйте ресурсоёмкие задачи по очереди
Сначала договоритесь, по какому часовому поясу планировать сборки. Перед созданием архива участниками из Азиатско-Тихоокеанского региона проверьте, не выполняются ли ещё задачи коллег в Северной Америке. По возможности не запускайте одновременно крупные сборки, установку зависимостей и обновление системы.
Разделите каталоги проектов и результатов сборки по пользователям или веткам, чтобы никто не удалил артефакты, нужные другому участнику.
При передаче: ответственный за задачу, время начала и окончания, путь к результатам.
Записывайте конфигурацию и результаты задач
Перед сменой укажите версию кода, версию Xcode, выполненные команды и код завершения. Если нужно обновить набор инструментов, предупредите следующую смену заранее, чтобы коллеги не обнаружили изменения среды уже после начала работы.
Качество удалённого взаимодействия зависит от сети у каждого участника. Для длительных задач используйте SSH и сохраняйте журналы сборки, к которым можно вернуться.
При передаче: версии, команды, журналы, нерешённые вопросы.
Добавьте срок аренды в календарь проекта
На сезон пиковой нагрузки добавьте сервер, а до окончания аренды заберите данные
Постоянные и временные задачи можно планировать отдельно. Дополнительный сервер арендуется как отдельный экземпляр: код, зависимости, ключи и артефакты сборки с исходного сервера не копируются автоматически. Сначала настройте среду, затем перенесите задачи.
01
Закажите дополнительный сервер для проекта
Закажите ещё один сервер через форму заказа и выберите срок по длительности задач: день, неделю, месяц или квартал. Доступны две модели: MiniSSH M4 Core (M4 / 16 ГБ RAM / SSD 256 ГБ) и MiniSSH M4 Plus (M4 / 24 ГБ RAM / SSD 512 ГБ). Цены и дополнительные опции смотрите на странице тарифов.
02
Перенесите временные задачи
Перенесите код и зависимости проекта, а на новом сервере отдельно настройте права доступа. Сначала выполните сборку, которую можно повторить, и убедитесь, что результат удаётся получить. Затем переносите другие ветки или пакетные задачи. Не храните единственную резервную копию на временном сервере.
03
Проверьте, что аренда не продлевается
Проверьте дату окончания аренды временного сервера в консоли и не продлевайте её. Если в интерфейсе доступна настройка автопродления, убедитесь, что она отключена. После окончания срока аренды сервер отключается без дополнительной платы за отключение. До этой даты сохраните артефакты и журналы и отзовите токены доступа, чтобы не искать файлы после освобождения сервера.
Сначала сохраните данные, затем отправьте заявку в поддержку
Сервер работает круглосуточно, 365 дней в году. При неполадке отправьте заявку через консоль и добавляйте информацию в ту же заявку. Не переустанавливайте систему, не меняйте настройки многократно и не оплачивайте заказ повторно — так будет сложнее восстановить ход событий.
Проблема
Что проверить сначала
Что приложить к заявке
Не удаётся подключиться по SSH
Проверьте готовность сервера, а также совпадают ли адрес, порт и имя пользователя с данными в карточке. Уточните, возникает ли тайм-аут, отказ в подключении или ошибка аутентификации. Сохраните полный текст ошибки.
Номер сервера, город, время начала проблемы и часовой пояс, сеть подключения и текст ошибки SSH без конфиденциальных данных.
Сборка зависла или завершилась с ошибкой
Проверьте свободное место на диске, другие задачи на сервере и недавние изменения набора инструментов или зависимостей. Уточните, перестали ли появляться новые записи в журнале или процесс действительно завершился.
Команда, версия Xcode, время начала, последние строки журнала, код завершения и сведения о том, воспроизводится ли проблема стабильно.
Нужно переустановить систему
Сначала сохраните код, артефакты сборки и необходимые настройки. Запишите, какую среду нужно сохранить или настроить заново. Переустановка затронет данные, хранящиеся на сервере.
Номер сервера, причина переустановки, готова ли резервная копия и удобное время для выполнения операции. Согласуйте объём работ в заявке перед началом.
Вопрос по оплате или продлению
Сначала проверьте статус нужного заказа и счёта, а также к какому серверу относится операция, чтобы не оплатить повторно другой заказ.
Номер заказа. Для платежа USDT-TRC20 приложите хеш транзакции; для оплаты картой через Stripe — номер заказа и текст ошибки в интерфейсе. Не отправляйте полный номер карты.
Всегда указывайте часовой пояс: запись «14:30 по местному времени, UTC+8» понятнее, чем «после обеда не подключается». Если команда работает в Азиатско-Тихоокеанском регионе и Северной Америке, укажите также время, когда с вами удобно связаться.
Проверяйте статус в исходной заявке: Войдите в консоль, откройте список заявок и выберите нужную запись, чтобы прочитать ответ или добавить материалы. Если войти не удаётся, отправьте письмо на адрес support@minissh.comи укажите адрес электронной почты аккаунта и номер заказа. Не отправляйте пароль или закрытый ключ.
Если нужна подробная инструкция, найдите в списке технических статей материалы по трём темам ниже. Команды на этой странице показывают порядок действий; каталоги, права доступа и версии инструментов проверяйте для своей среды.
Настройка среды удалённой разработки
Изучите распределение учётных записей, каталоги проекта, подготовку зависимостей и передачу задач между часовыми поясами. Сначала создайте воспроизводимую среду разработки, затем подключайте коллег.
SSH-туннели и безопасность доступа
Изучите аутентификацию по открытому ключу, отключение входа по паролю и перенаправление локальных портов. Перед изменением настроек безопасности всегда оставляйте проверенное подключение.
Облачная сборка Xcode
Изучите проверку SDK, параметры archive и процесс fastlane. Проверяйте создание архива и загрузку отдельно: успешное завершение одного этапа ещё не гарантирует, что весь процесс работает стабильно.
Аренда посуточно — от $20.8 в день. Если сервер уже есть, проверьте данные для входа в консоли. Если ещё не заказывали, выберите срок по длительности проекта.