Критерии приёмки первого часа: оба канала должны работать
После аренды облачного Mac больше всего времени уходит не на установку ПО, а на неразрешённый выбор способа доступа: кто-то живёт только в VNC и не может автоматизировать CI; кто-то настраивает только SSH, а при одобрении системного расширения или входе в App Store вынужден искать графический рабочий стол. Мы считаем «первый час завершён», когда выполнены все четыре пункта:
- SSH по ключу работает, password authentication отключён
- Браузерный Web VNC открывает рабочий стол macOS и позволяет выполнить хотя бы одно действие мышью
- В локальном
~/.ssh/configпрописан Host-алиас — после перезапуска терминала достаточно одной команды - Зафиксированы часовой пояс узла, версия macOS и номер заказа в консоли — для последующих обращений в поддержку
Ниже — порядок «сначала учётные данные → SSH, потом VNC → оптимизация задержки → финальная настройка». Тестовая среда: JexMac Mac mini M4 на узле Гонконг (16 GB Unified Memory, 256 GB NVMe, выделенный канал 1 Gbps), окно тестирования — июль 2026; от статуса «Доставлено» в консоли до успешного SSH по ключу — медиана около 8 минут (с генерацией ключей).
Где в консоли лежат учётные данные: четыре поля
Для гостевой оплаты без регистрации и для заказа под аккаунтом расположение данных одинаково: войдите в консоль, выберите инстанс, блок «Подключение» / «Access Terminal». До завершения доставки показывается анимация «Генерация данных доступа»; после перехода в «Доставлено» одновременно появляются четыре поля:
| Поле консоли | Назначение | Типичный формат |
|---|---|---|
| Публичный IP | Целевой адрес для SSH и стороннего VNC | Отдельный IPv4, на всех пяти узлах — 1 Gbps выделенный канал |
| SSH | Готовая команда для копирования | ssh admin@<IP> -p <порт> |
| Пароль | Первый вход по SSH или VNC (лучше быстро заменить ключом) | Кнопка «Показать» → копировать; не публикуйте в открытых чатах |
| Web VNC | Кнопка в шапке или dock — браузерный удалённый рабочий стол | Без установки клиента; сессия после аутентификации в консоли |
Частая ошибка: сохранить гостевую ссылку доступа в закладки без регистрации аккаунта — у Guest-заказа учётные данные действуют только в текущей сессии браузера; при смене устройства или очистке кэша восстановление идёт через email оплаты. Для командной работы сразу после оплаты зарегистрируйтесь и привяжите заказ к аккаунту, чтобы пароли не расходились по мессенджерам.
После первого успешного входа: сохраните пароль консоли в менеджере паролей, затем по следующему разделу включите Ed25519 и отключите SSH password login. Пароль VNC обычно совпадает с начальным SSH-паролем — смена на ключ не меняет VNC автоматически; графическая сессия использует пароль из консоли, пока вы не измените настройки Screen Sharing в macOS.
Ed25519: генерация на локальной машине и ssh-copy-id
На локальном компьютере (macOS, Linux или Windows 11 с OpenSSH) создайте отдельную пару ключей — не переиспользуйте ключ от личного GitHub: компрометация ключа облачного Mac равносильна полному захвату физической машины.
-
01
Сгенерировать пару Ed25519
ssh-keygen -t ed25519 -C "jexmac-cloud-mac" -f ~/.ssh/jexmac_ed25519Passphrase рекомендуется — при утере ноутбука зашифрованный ключ на диске не даст мгновенный доступ злоумышленнику.
-
02
Первый вход по паролю и запись публичного ключа
Скопируйте SSH-команду из консоли, затем:
ssh-copy-id -i ~/.ssh/jexmac_ed25519.pub -p <порт> admin@<публичный-IP>Если
ssh-copy-idнедоступен:cat ~/.ssh/jexmac_ed25519.pub | ssh -p <порт> admin@<IP> "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys" -
03
Проверить вход без пароля
ssh -i ~/.ssh/jexmac_ed25519 -p <порт> admin@<IP> "uname -a && sw_vers"Ожидается ядро
Darwinи номер версии macOS — без запроса пароля. -
04
Записать Host-алиас в SSH config
Host jexmac-hk HostName <публичный-IP> Port <порт> User admin IdentityFile ~/.ssh/jexmac_ed25519 IdentitiesOnly yesДальше достаточно
ssh jexmac-hk.
На Windows config лежит в C:\Users\<вы>\.ssh\config; PowerShell 7 и Windows Terminal понимают тот же синтаксис. Если ключи созданы в WSL, а подключение идёт из PowerShell (или наоборот), .ssh не общий — генерируйте ключи в той среде, откуда будете подключаться, иначе получите «в WSL настроил, в PowerShell не работает».
Базовая безопасность SSH: отключить пароль, зафиксировать fingerprint
Меняйте серверную конфигурацию только после успешной проверки ключа — иначе можно остаться снаружи и восстанавливаться только через VNC.
-
01
Проверить права authorized_keys
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keysСлишком широкие права — OpenSSH игнорирует ключ и снова просит пароль; частая причина «ключ не принимается» при первом подключении.
-
02
Отключить password authentication (нужен sudo)
В
/etc/ssh/sshd_config:PasswordAuthentication no PubkeyAuthentication yes PermitRootLogin noПосле сохранения:
sudo launchctl kickstart -k system/com.openssh.sshdили перезагрузка инстанса. Перед изменением откройте второй терминал и убедитесь, что вход по ключу всё ещё работает. -
03
Зафиксировать fingerprint в known_hosts
ssh-keyscan -p <порт> <IP> >> ~/.ssh/known_hostsСнижает риск привычного «yes» при MITM. В командной wiki можно хранить общий fingerprint узла.
После отключения пароля, если ключ не пускает — не перезагружайте инстанс подряд: откройте «Web VNC» в консоли, в терминале macOS проверьте /etc/ssh/sshd_config и ~/.ssh/authorized_keys. При необходимости перезапустите инстанс из консоли; в крайнем случае — тикет на support@jexmac.com с номером заказа и перечнем уже выполненных шагов.
Браузерный Web VNC: первое подключение без клиента
Web VNC нужен для первого входа на рабочий стол, авторизации в App Store, одобрения системных расширений — чистый SSH этого не заменит. В консоли JexMac сессия открывается одной кнопкой; под капотом noVNC рендерит экран в браузере, RealVNC Viewer не требуется.
-
01
Запустить сессию из консоли
В карточке инстанса — «Web VNC» / «Удалённый рабочий стол» в шапке или боковом dock. Откроется вкладка
vnc.htmlс экраном «Подключение к macOS…». -
02
Дождаться первого кадра и ввести пароль
Первый кадр обычно за 12 секунд (узел Гонконг, домашний канал 100 Mbps). При запросе VNC-аутентификации — пароль из блока «Подключение»; совпадает с начальным SSH-паролем.
-
03
GUI-приёмка
«Системные настройки → Основные → Об этом Mac» — чип Apple M4, память 16 GB; в Терминале
hostnameдолжен совпадать с тем, что видите по SSH — оба канала на одном инстансе. -
04
Завершение сессии
«Вернуться в консоль» в HUD или закрыть вкладку — отдельный logout в macOS не обязателен. При долгом простое сессия может оборваться; откройте VNC снова из консоли.
Браузеры: Chrome / Edge / Safari последней стабильной версии; Firefox работает, но при программном WebGL FPS ниже. Корпоративная сеть, блокирующая WebSocket, оставляет вечное «Подключение…» — проверьте через мобильный hotspot или попросите IT разрешить HTTPS исходящий трафик.
Сторонний VNC-клиент: снижение задержки
Для длительной работы с Xcode или временной шкалой Instruments браузерного VNC может не хватить — после стабильного SSH имеет смысл настроить RealVNC Viewer или Jump Desktop. У вас полные права администратора: можно включить «Общий экран» macOS или установить RealVNC Server, если не предустановлен.
Эмпирические настройки (узел Гонконг, uplink 100 Mbps из ЮВА):
| Параметр | Рекомендация | Комментарий |
|---|---|---|
| Качество / Compression | Medium или Automatic | Только терминал — Low; UI-разработка — Medium баланс задержки и чёткости |
| Кодек | H.264 / аппаратное кодирование Apple | На M4 аппаратный кодек даёт на 30–40% меньше задержки, чем чистый JPEG |
| Масштаб | 100% или половина Retina | Слишком высокое разрешение съедает канал — курсор «плывёт» |
| Адрес | Публичный IP из консоли + VNC-порт | Порт смотрите в данных инстанса; по умолчанию открыты туннель консоли и SSH |
Jump Desktop точнее передаёт жесты трекпада на Apple Silicon; RealVNC легче на Windows-хосте. Оба требуют однократного разрешения «Запись экрана / Универсальный доступ» в графической сессии — поэтому порядок всегда SSH → Web VNC → сторонний клиент.
Трансграничная сеть: выбор узла и диагностика маршрута
«SSH timeout» и «чёрный VNC» в половине случаев — проблема маршрута, а не поломка инстанса. У JexMac пять узлов — Сингапур, Япония (Токио), Корея (Сеул), Гонконг, Восток США — одинаковое железо и цены; отличаются RTT и потери в часы пик.
Грубый выбор для разных аудиторий:
- Разработчики из РФ / СНГ, работающие с APAC: начните с Гонконга или Сингапура — RTT из Москвы часто 150–190 ms, из Алматы — 80–120 ms
- Локализация под Японию или App Store JP: Япония (Токио)
- Корейский рынок или region-specific RPC: Корея (Сеул)
- Северная Америка, US API, TestFlight для US: Восток США — 120–160 ms из восточного побережья США нормально; не сравнивайте с задержкой до Гонконга
Диагностика на локальной машине:
ping -c 20 <публичный-IP>
mtr -rwzc 50 <публичный-IP>
ssh -vvv jexmac-hk
Потери ping стабильно выше 5% — смените сеть (мобильный hotspot), чтобы исключить перегрузку международного пиринга провайдера. Если mtr показывает потери с определённого backbone-hop, соседний узел часто эффективнее тикета на reboot. Зависание ssh -vvv на Connecting — неверный порт или локальный firewall; сверьте порт SSH с консолью.
| Симптом | Вероятная причина | Действия по порядку |
|---|---|---|
SSH Connection timed out |
Инстанс ещё доставляется, неверный IP или блокировка не-443 портов | Обновить консоль → проверить IP/порт → другая сеть |
SSH Permission denied (publickey) |
Ключ не записан или неверные права authorized_keys |
VNC → проверить ~/.ssh → повторить ssh-copy-id |
| VNC: чёрный экран, курсор есть | Зависшая сессия или сон дисплея | Закрыть VNC и открыть снова → reboot инстанса, подождать 2–3 мин |
| VNC лагает, SSH плавный | Мало bandwidth или программный декод в браузере | Снизить разрешение → сторонний клиент → проверить uplink |
Дополнительные ответы — в Справочном центре · Удалённый доступ. Если не помогло — тикет из консоли со скриншотом mtr, версией браузера и номером заказа; поддержка 7×24 обычно отвечает в течение часа.
Финал первого часа: часовой пояс, обновления, командные правила
Когда оба канала стабильны, последние десять минут — базовая настройка «чтобы не наступать на те же грабли»:
-
01
Часовой пояс и locale
sudo systemsetup -gettimezoneРасхождение с локальной машиной даёт «сборка сдвинута на 8 часов» в CI-логах. При необходимости:
sudo systemsetup -settimezone Europe/MoscowилиAsia/Almaty. -
02
Отложить major-обновления macOS
«Системные настройки → Основные → Обновление ПО» — пауза на major upgrade, чтобы Runner не перезагрузился посреди job. Security-патчи — вручную в окно обслуживания.
-
03
Command Line Tools, если не установлены
xcode-select --installНужен клик в GUI — при ошибке в SSH-only переключитесь на Web VNC и подтвердите установку.
-
04
Правила для команды
Host-алиас, регион узла и номер заказа — во внутренней wiki; ключ на человека, приватные ключи не в репозиторий. Guest-заказы быстро привязать к аккаунту.
Чеклист первого часа закрыт. Дальше — установка Xcode, регистрация GitHub Actions Runner или OpenClaw sandbox — всё опирается на SSH для автоматизации и VNC для «спасения»; без одного из каналов стоимость отладки растёт кратно.
Нет локального Mac: аренда удалённой среды под ритм проекта
Многие арендуют облачный Mac не ради круглосуточного uptime, а потому что на неделе релиза нужна стабильная macOS, а в обычные дни железо содержать не хочется. Покупка Mac mini — закупка, colocation и выезд при ротации сертификатов; «одолжить» Mac коллеги — конфликт версий Xcode и sleep, обрывающий сборку.
JexMac даёт выделенный физический Mac mini M4 (не виртуализированный VPS): 16 GB Unified Memory, 256 GB NVMe, 1 Gbps выделенный канал. От $21.5/день, $57.9/нед., $107.3/мес.; учётные данные SSH/VNC через 1–5 минут после оплаты, без контрактной привязки. Пять узлов — по географии аудитории: для команд в Европе и СНГ, работающих с APAC, часто подходят Гонконг или Сингапур; для US TestFlight — Восток США.
В отличие от shared remote-desktop SaaS, выделенное железо не делит CPU/RAM с соседями — время xcodebuild и Instruments не скачет от чужих job. В отличие от cloud VM — полные права admin macOS: Screen Sharing, Keychain и Homebrew ведут себя как на локальном Mac. Короткий спринт, долгий CI или эксперимент с OpenClaw — один и тот же onboarding; этот чеклист можно использовать как SOP для каждого нового инстанса.
Активируйте и пройдите чеклист — продуктивность в первый час
Все шаги проверены на выделенном JexMac Mac mini M4. Заказ → учётные данные в консоли → SSH по ключу + Web VNC; за час можно ставить Xcode или гонять скрипты. Аренда по дням — после проекта освобождаете узел.