일상 작업이 Windows(WSL2 포함) 또는 Linux인데 빌드·CI는 싱가포르·일본·한국·홍콩·미동부·미서부의 원격 Mac에서 돌릴 때, 가장 자주 막히는 지점은 Xcode가 아니라 SSH 경로·키·포트 포워딩입니다. 본 글은 직접/점프호스트/제로트러스트 비교표, 복사 가능한 ssh config, 6단계 Runbook, M4 대여 주기 결합을 제시합니다.
Broken pipe가 납니다.~/.ssh가 생기고, IdentitiesOnly 없이 다중 키를 시도해 잠금이 걸립니다.127.0.0.1만 바인딩한 서비스를 로컬에서 열지 못합니다.직접 SSH, ProxyJump 점프호스트, 오버레이 VPN 중 무엇을 쓸지 먼저 결정합니다.
| 방식 | 전제 | 이점 | 리스크 |
|---|---|---|---|
| 직접 | 안정 DNS·허용된 22/tcp | 경로 최단 | 스캔·키 정책 필수 |
| 점프 | 모든 SSH가 게이트웨이 경유 | 공격면 축소 | SPOF·지연 |
| 오버레이 | 공인 22 차단 | 화이트리스트 폭증 완화 | 터널 운영 의존 |
리전별 Host 별칭과 ServerAliveInterval 30, ServerAliveCountMax 6을 기본값으로 두고, 에이전트는 WSL/Windows 중 하나만 표준으로 삼습니다.
클라이언트는 127.0.0.1 바인딩을 우선하고, 공유가 필요하면 방화벽으로 출처를 제한합니다.
팁: 상시 터널과 임시 디버깅 터널 세션을 분리합니다.
사람과 CI의 키를 분리하고, 지문 변경은 변경 관리 절차에 포함합니다.
한쪽만 타임아웃이면 DNS·MTU를 먼저 확인합니다.
SSH 중심·경량 시뮬레이터면 M4로 충분한 경우가 많고, 피크는 일/주 단기로 올립니다.
Host mac-sg mac-jp mac-kr mac-hk mac-use mac-usw User youruser ServerAliveInterval 30 ServerAliveCountMax 6 IdentitiesOnly yes IdentityFile ~/.ssh/id_ed25519_maccome
가정용 회선·개인 노트북 역터널은 수면·CGNAT로 불안정합니다. 여섯 리전에서 재현성이 필요하면 MACCOME 전용 Apple Silicon과 탄력 임대가 더 안정적인 기본값입니다.
새 TCP·SSH 핸드셰이크는 RTT를 누적합니다. Windows/Linux 클라이언트에서 여섯 리전 별칭에 ControlMaster auto와 적절한 ControlPersist를 켜 후속 ssh·scp·rsync가 마스터 연결을 재사용하게 하세요. 소켓 경로는 리전별로 문서화해 공유 점프호스트에서 충돌을 막습니다.
다중화는 점프호스트 거버넌스를 대체하지 못합니다. 마스터가 조용히 죽으면 자식 세션이 함께 실패하므로 마지막 성공 빌드 타임스탬프 같은 가벼운 지표를 두세요.
git fetch와 대화형 원격 작업을 같은 경로에 실으면 헤드오브라인 블로킹이 잦습니다. 대용량 가져오기용 Host를 분리하고 러너 키·대역 정책을 나눕니다.
git lfs pull합니다.known_hosts 번들 업데이트나 UpdateHostKeys를 운영 절차로 두고 검증 끄기를 상시화하지 마세요. 티켓에 구/신 지문과 롤백을 포함합니다.
NAT·이중 에이전트·자체 터널에 분기당 수 인일을 쓴다면 독점 클라우드 Mac으로 변수를 줄이는 편이 총비용에 유리합니다.
FAQ
WSL2와 Windows 중 어디를 표준으로 할까요?
하나만 선택해 ~/.ssh를 통일합니다. 가격은 대여 가격 페이지를 참고하세요.
ping은 되는데 SSH가 멈춥니다.
nc -vz로 TCP를 확인하고 ssh -vvv로 구간을 나눕니다. GUI가 필요하면 SSH 대 VNC 가이드를 읽습니다.
known_hosts가 너무 복잡합니다.
지문 변경을 공급자 이벤트로 취급하고 점프호스트에서 집중 검증합니다.