첫 1시간 완료 기준: 두 경로를 각각 한 번씩 검증
클라우드 Mac을 임대한 뒤 시간을 가장 많이 낭비하는 구간은 소프트웨어 설치가 아니라 접속 방식을 정하지 못한 상태입니다. VNC 그래픽 화면만 쓰다 보면 CI 스크립트를 자동화할 수 없고, SSH만 구성해 두면 시스템 확장 승인이나 App Store 로그인처럼 GUI가 필요한 순간마다 데스크탑을 찾게 됩니다. 「첫 1시간 완료」를 아래 네 항목이 모두 체크된 상태로 정의하는 것을 권장합니다.
- SSH 키 로그인 성공, 비밀번호 인증 비활성화 완료
- 브라우저 Web VNC로 macOS 데스크탑 진입 후 클릭 동작 한 번 이상 수행
- 로컬
~/.ssh/config에 Host 별칭 작성, 터미널 재시작 후 한 줄 명령으로 접속 가능 - 노드 타임존, macOS 버전, 콘솔 주문 번호 기록 — 이후 티켓 대응에 활용
아래 내용은 「자격 증명 확보 → SSH 우선 → VNC → 지연 최적화 → 마무리」 순서로 진행합니다. 측정 환경은 JexMac 한국(서울) 노드 Mac mini M4(16 GB 통합 메모리, 256 GB NVMe, 1 Gbps 전용 대역폭)이며, 테스트 기간은 2026년 7월입니다. 콘솔에 「배포 완료」가 표시된 시점부터 SSH 키 로그인까지 중앙값 약 8분(키 생성 포함)이 소요되었습니다.
콘솔에서 자격 증명 찾기: 네 필드를 정확히 확인
게스트 결제와 회원 가입 후 주문 모두, 배포가 끝나면 자격 증명 위치는 동일합니다. 콘솔에 로그인한 뒤 해당 인스턴스를 선택하고 「접속 터미널」 섹션을 확인하세요. 배포 전에는 「접속 정보 생성 중」 애니메이션이 표시되고, 상태가 배포 완료로 바뀌면 아래 네 항목이 동시에 나타납니다.
| 콘솔 필드 | 용도 | 일반 형식 |
|---|---|---|
| 공인 IP | SSH 및 서드파티 VNC 대상 주소 | 독립 IPv4, 5개 리전 모두 1 Gbps 전용 대역폭 |
| SSH | 한 번에 복사 가능한 전체 로그인 명령 | ssh admin@<IP> -p <포트> |
| 비밀번호 | 최초 SSH 또는 VNC 인증용(가급적 빨리 키로 교체) | 「표시」 클릭 후 복사, 공개 채널에 스크린샷 금지 |
| 웹 VNC | 상단 또는 바로가기 dock 버튼, 브라우저 원격 데스크탑으로 이동 | 설치 불필요, 콘솔 인증 후 세션 수립 |
흔한 실수: 게스트 주문 접속 링크만 북마크해 두고 계정을 등록하지 않는 경우입니다. 게스트 자격 증명은 현재 브라우저 세션에서만 유효하며, 기기를 바꾸거나 캐시를 지우면 결제 이메일로 다시 찾아야 합니다. 팀 협업 시에는 결제 직후 회원 가입을 완료하고 주문을 계정에 연결해, 자격 증명이 외부 메신저에 흩어지지 않도록 하세요.
첫 접속 직후 할 일: 콘솔 비밀번호를 로컬 비밀번호 관리자에 저장한 뒤, 다음 절의 Ed25519 키 설정과 SSH 비밀번호 인증 비활성화를 진행하세요. VNC 비밀번호와 SSH 초기 비밀번호는 보통 동일합니다. 키를 바꿔도 VNC 비밀번호는 자동으로 변경되지 않으며, 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
로컬 SSH config 별칭 작성
Host jexmac-kr HostName <공인IP> Port <포트> User admin IdentityFile ~/.ssh/jexmac_ed25519 IdentitiesOnly yes이후
ssh jexmac-kr한 줄로 접속할 수 있습니다.
Windows 사용자는 config를 C:\Users\<사용자>\.ssh\config에 두면 됩니다. PowerShell 7과 Windows Terminal 모두 위 문법을 지원합니다. WSL에서 생성한 키와 Windows 호스트가 공유되지 않는 경우, WSL 측에서 별도로 생성하거나 동일 .ssh 디렉터리를 마운트하세요. 「WSL에서 설정했는데 PowerShell에서는 안 된다」는 불일치를 피할 수 있습니다.
SSH 보안 기준선: 비밀번호 끄기, 지문 고정, 출처 제한
키 인증이 통과한 뒤 서버 설정을 변경하세요 — 순서가 바뀌면 밖에서 잠길 수 있으며, 그때는 VNC 데스크탑으로 복구해야 합니다.
-
01
authorized_keys 권한 확인
chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys권한이 너무 넓으면 OpenSSH가 공개키를 무시하고, 여전히 비밀번호 로그인만 가능한 것처럼 보입니다 — 첫 접속 실패의 흔한 원인입니다.
-
02
비밀번호 인증 비활성화(sudo 필요)
/etc/ssh/sshd_config를 편집해 다음을 확인:PasswordAuthentication no PubkeyAuthentication yes PermitRootLogin no저장 후
sudo launchctl kickstart -k system/com.openssh.sshd또는 인스턴스 재시작으로 적용. 변경 전 다른 터미널 창에서 키 로그인이 여전히 되는지 반드시 확인하세요. -
03
known_hosts 지문 고정
ssh-keyscan -p <포트> <IP> >> ~/.ssh/known_hosts최초 연결 시 MITM 경고를 무의식적으로 무시하는 습관을 방지합니다. 팀은 동일 fingerprint를 내부 문서에 공유할 수 있습니다.
비밀번호 인증을 끈 뒤 키로도 로그인되지 않으면 반복 재시작하지 마세요 — 콘솔 「웹 VNC」로 데스크탑에 들어가 터미널에서 /etc/ssh/sshd_config와 ~/.ssh/authorized_keys를 확인합니다. 해결되지 않으면 콘솔에서 인스턴스 재시작을 요청하거나, support@jexmac.com으로 주문 번호와 시도한 단계를 첨부해 티켓을 제출하세요.
브라우저 Web VNC: 클라이언트 없이 첫 연결
Web VNC는 최초 데스크탑 진입, App Store 로그인, 시스템 확장 승인처럼 SSH만으로는 불가능한 작업에 적합합니다. JexMac 콘솔에서 한 번의 클릭으로 열리며, noVNC로 브라우저에 렌더링되므로 RealVNC Viewer 설치가 필요 없습니다.
-
01
콘솔에서 세션 시작
인스턴스 상세 상단 「웹 VNC」 또는 우측 바로가기 dock의 「원격 데스크탑」 클릭. 새 탭에서
vnc.html이 열리고 「macOS 데스크탑에 접속 중」 로딩 화면이 표시됩니다. -
02
첫 화면 대기 및 비밀번호 입력
첫 화면은 보통 12초 이내(서울 노드, KT 가정용 광랜 측정). VNC 인증 프롬프트가 나오면 콘솔 「접속 터미널」 영역의 비밀번호를 입력 — SSH 초기 비밀번호와 동일합니다.
-
03
GUI 검증 한 번 수행
「시스템 설정 → 일반 → 정보」에서 Apple M4 칩, 16 GB 메모리 확인. 터미널에서
hostname실행 시 SSH 측과 동일하면 두 경로가 같은 인스턴스를 가리킵니다. -
04
세션 종료
HUD 왼쪽 상단 「콘솔로 돌아가기」로 탭을 닫으면 됩니다. macOS에서 별도 로그아웃할 필요 없습니다. 장시간 유휴 시 세션이 끊길 수 있으며, 콘솔에서 다시 열면 됩니다.
브라우저 권장: Chrome / Edge / Safari 최신 안정판. Firefox도 사용 가능하나 WebGL 소프트웨어 디코딩 시 프레임률이 다소 낮습니다. 회사 네트워크가 WebSocket을 차단하면 「접속 중」에서 멈춘 것처럼 보입니다 — 휴대폰 핫스팟으로 전환하거나 HTTPS 아웃바운드를 허용해 달라고 네트워크 관리자에게 요청해 확인하세요.
서드파티 VNC 클라이언트: 지연 최적화 요점
Xcode UI를 오래 드래그하거나 Instruments 타임라인을 다룰 때는 브라우저 VNC 프레임률이 부족할 수 있습니다. SSH가 안정된 뒤 RealVNC Viewer나 Jump Desktop 설정을 검토할 가치가 있습니다. 완전한 관리자 권한이 있으므로 macOS 「화면 공유」를 켜거나 RealVNC Server를 직접 설치할 수 있습니다(시스템에 미리 설치되지 않은 경우).
튜닝 파라미터 경험치(서울 노드, 서울 100 Mbps 가정용 광랜):
| 설정 항목 | 권장값 | 설명 |
|---|---|---|
| 화질 / Compression | Medium 또는 Automatic | 터미널만 쓸 때는 Low, UI 개발은 Medium으로 지연과 선명도 균형 |
| 인코딩 | H.264 / Apple 하드웨어 인코딩 우선 | M4 노드에서 HW 인코딩 가능 시 JPEG 대비 지연 30–40% 감소 |
| 전체 화면 / 배율 | 100% 또는 Retina 절반 | 해상도가 너무 높으면 대역만 소모하고 마우스 궤적이 lag |
| 연결 주소 | 콘솔 공인 IP + VNC 포트 | 포트는 인스턴스 실제 개방 값 기준. 방화벽은 기본적으로 콘솔 터널과 SSH만 허용 |
Jump Desktop은 Apple Silicon에서 트랙패드 제스처 매핑이 더 완전하고, RealVNC 크로스플랫폼 클라이언트는 Windows 호스트에서 더 가볍습니다. 둘 다 macOS 그래픽 세션에서 「화면 녹화 / 손쉬운 사용」 권한을 한 번 승인해야 합니다 — 그래서 첫 연결 순서는 항상 SSH 검증 → Web VNC 데스크탑 → 서드파티 설정을 권장합니다.
국제 회선 장애 해결: 리전 선택과 링크 진단
「SSH 타임아웃」「VNC 검은 화면」의 절반은 인스턴스 장애가 아니라 라우팅 문제입니다. JexMac 5개 리전 — 싱가포르, 일본(도쿄), 한국(서울), 홍콩, 미국 동부 — 은 하드웨어와 가격이 동일하며, 차이는 RTT와 피크 시간대 패킷 손실입니다.
대략적인 선택 기준:
- 한국 국내 사용자 · 서울 기반 팀: 한국(서울) 우선, RTT 보통 5–20 ms
- 일본 App Store · 도쿄 사용자 테스트: 일본(도쿄)
- 동남아 · 홍콩 대상 앱: 싱가포르 또는 홍콩
- 북미 API · TestFlight US: 미국 동부, 국제 RTT 150–220 ms는 정상 — 서울과 지연을 직접 비교하지 마세요
링크 진단 명령(로컬에서 실행):
ping -c 20 <공인IP>
mtr -rwzc 50 <공인IP>
ssh -vvv jexmac-kr
ping 손실이 5%를 지속적으로 넘으면 먼저 로컬 네트워크(휴대폰 핫스팟)로 ISP 국제 회선 혼잡을 배제하세요. mtr에서 특정 백본 홉부터 손실이 시작되면 인접 리전으로 바꾸는 것이 재시작 티켓보다 효과적인 경우가 많습니다. ssh -vvv가 Connecting에서 멈추면 포트 또는 로컬 방화벽 문제일 가능성이 큽니다 — 콘솔 SSH 포트와 명령이 일치하는지 확인하세요.
| 현상 | 가능한 원인 | 처리 순서 |
|---|---|---|
SSH Connection timed out |
인스턴스 배포 중, IP 오류, 로컬 네트워크가 443 외 포트 차단 | 콘솔 새로고침으로 배포 확인 → IP/포트 대조 → 네트워크 변경 |
SSH Permission denied (publickey) |
공개키 미등록 또는 authorized_keys 권한 오류 |
VNC로 데스크탑 진입 후 ~/.ssh 확인 → ssh-copy-id 재실행 |
| VNC 검은 화면에 커서만 | 세션 hang, 디스플레이 절전 | 콘솔에서 VNC 닫고 재연결 → 인스턴스 재시작 후 2–3분 대기 |
| VNC는 끊기는데 SSH는 원활 | 대역 부족 또는 브라우저 소프트 디코딩 | 해상도 낮추기 → 서드파티 클라이언트 → 업링크 확인 |
추가 FAQ는 도움말 센터 · 원격 접속을 참고하세요. 여전히 복구되지 않으면 콘솔에서 티켓 제출하고 mtr 스크린샷, 브라우저 버전, 주문 번호를 첨부하세요. 7×24 실제 담당자 지원은 보통 1시간 이내 응답합니다.
첫 1시간 마무리 체크리스트: 타임존, 업데이트, 협업 습관
접속 경로가 안정되면 마지막 10분을 「이후 실수 줄이기」 기준 설정에 쓰세요.
-
01
타임존과 locale 확인
sudo systemsetup -gettimezoneCI 로그와 로컬 개발 머신 타임존이 다르면 「빌드 시간이 9시간 어긋난다」는 착시가 생깁니다. 필요 시
sudo systemsetup -settimezone Asia/Seoul등으로 조정. -
02
메이저 시스템 업데이트 연기
「시스템 설정 → 일반 → 소프트웨어 업데이트」에서 major upgrade를 일시 중지해 Runner 실행 중 재부팅을 방지. 보안 패치는 유지보수 창에 수동 적용.
-
03
명령줄 도구 설치(미리 설치되지 않은 경우)
xcode-select --install팝업은 GUI 확인 필요 — SSH만 있는 환경에서 오류가 나면 Web VNC로 전환해 「설치」를 한 번 클릭하세요.
-
04
팀 공유 규칙
Host 별칭, 리전, 주문 번호를 내부 Wiki에 기록. 키는 멤버마다 별도 발급, 개인키 파일을 저장소에 넣지 마세요. 게스트 주문은 가급적 빨리 회원 계정에 연결.
여기까지 첫 1시간 체크리스트가 닫힙니다. 이후 Xcode 설치, GitHub Actions Runner 등록, OpenClaw 샌드박스 활성화 모두 「SSH 자동화 + VNC 복구」 이중 경로 위에 쌓입니다 — 하나가 빠지면 장애 대응 비용이 배로 늘어납니다.
로컬 Mac 없이: 프로젝트 리듬에 맞춰 원격 환경 임대
많은 독자가 클라우드 Mac을 7×24 가동하려는 것이 아니라, 릴리스 주간에만 안정적인 macOS가 필요하고 평소에는 하드웨어를 관리하고 싶지 않기 때문입니다. Mac mini를 직접 구매하면 조달, 상주, 인증서 갱신 시 현장 작업까지 책임져야 하고, 동료 노트북을 빌리면 Xcode 버전 충돌과 sleep으로 빌드가 끊깁니다.
JexMac은 VPS 가상화가 아닌 Mac mini M4 물리 머신 단독 사용을 제공합니다. 16 GB 통합 메모리, 256 GB NVMe, 1 Gbps 전용 대역폭, 일 $21.5부터·주 $57.9·월 $107.3, 결제 후 1–5분 내 SSH / VNC 자격 증명 배포, 계약 묶임 없음. 5개 리전 중 한국 iOS 팀은 서울, 일본 스토어 테스트는 도쿄, 북미 TestFlight는 미국 동부를 선택하면 됩니다.
원격 데스크탑 SaaS 공유 풀과 비교하면 물리 머신 단독 사용은 CPU·메모리가 이웃 job에 밀리지 않아 Instruments와 xcodebuild 소요 시간이 안정적입니다. 클라우드 VM과 달리 완전한 macOS 관리자 권한, 화면 공유, Keychain, Homebrew 동작이 로컬 Mac과 동일합니다. 단기 스프린트, 장기 CI, OpenClaw 실험 모두 같은 접속 절차를 재사용할 수 있으며, 이 글의 체크리스트를 새 인스턴스마다 SOP로 쓰면 됩니다.
개통 후 체크리스트대로, 첫 1시간에 시작
본문 단계는 JexMac Mac mini M4 단독 노드에서 검증했습니다. 주문 → 콘솔에서 자격 증명 → SSH 키 + Web VNC 이중 경로, 최대 1시간 내 Xcode 설치나 스크립트 실행을 시작할 수 있습니다. 일 단위 임대, 프로젝트 종료 후 해제 가능.