본문으로 건너뛰기

맥 미니 SSH 원격 접속 설정 가이드

· 약 4분
Braun Park
Curious Developer

현재 집에서는 맥 미니를, 그리고 개발용 노트북을 하나 가지고 개발을 하고 있었습니다. 처음에는 괜찮았는데, 어느새 노트북이 너무 무겁더라구요. 노트북만 2kg에, 중고 노트북을 샀더니 배터리도 오래 가지 않아 충전기도 챙겼더니 무게가 엄청 났습니다. 그러다가 고민하다 보니 요즘은 Claude Code로 코딩을 하는 경우가 많아서 굳이 무거운 노트북을 들고 다닐 필요가 있나? 라는 생각이 들었습니다. 그래서 생각해보니 원격으로 하면 되겠다는 생각이 들어 찾아보게 되었습니다.

현재 핸드폰을 갤럭시Z폴드7을 쓰고 있어서 핸드폰으로도 어느정도 간단한 작업은 할 수 있지 않을까? 하는 생각에 이번에 작업한 내용을 공유합니다. 맥 미니를 집에 두고 외부에서 SSH로 접속하는 방법! 포트포워딩 작업도 필요하지만 굳이 없이 할 수 있는 방법이 있더라구요.

Tailscale VPN을 활용하면 무료로 안전하게 원격 접속 환경을 구축할 수 있습니다.

이 가이드의 핵심:

  • Tailscale VPN으로 안전한 연결 (포트포워딩 불필요)
  • SSH 키 인증으로 비밀번호 없이 접속
  • 안드로이드 기기에서도 편리하게 접근
  • 집 안팎 어디서든 동일한 방식으로 연결

실제로 설정하고 사용하면서 정리한 내용을 단계별로 공유합니다.

🎯 개요

맥 미니와 안드로이드 기기(갤럭시 폰/탭)를 Tailscale VPN을 통해 안전하게 SSH 연결하는 방법을 알아봅시다.


1. Tailscale 설정 (VPN)

Tailscale이란?

  • 무료 Mesh VPN (개인 사용자 최대 100대 기기)
  • P2P 직접 연결 방식으로 속도 저하 거의 없음
  • 포트포워딩 불필요, 외부에서도 안전한 접속

설치 방법

맥 미니:

brew install tailscale
sudo tailscale up

안드로이드:

  • Play Store에서 "Tailscale" 앱 설치
  • 같은 계정으로 로그인

IP 확인

# 맥 미니에서
tailscale ip -4
# 출력 예: 100.64.x.x

2. 맥 미니 SSH 설정

SSH 활성화

  1. 시스템 설정일반공유
  2. 원격 로그인 켜기
  3. 접속 허용할 사용자 설정

터미널 확인

# SSH 서비스 상태 확인
sudo systemsetup -getremotelogin
# 출력: Remote Login: On

# SSH가 실행 중인지 확인
sudo lsof -iTCP -sTCP:LISTEN -n -P | grep sshd

3. SSH 키 인증 설정 (보안 강화)

안드로이드에서 SSH 키 생성

Termux 설치:

  • Play Store 또는 F-Droid에서 "Termux" 설치

SSH 키 생성:

# Termux에서
pkg update
pkg install openssh

# ED25519 키 생성 (추천)
ssh-keygen -t ed25519 -C "android-device"

# 또는 RSA 키 생성
ssh-keygen -t rsa -b 4096 -C "android-device"

공개키를 맥 미니로 복사

방법 1 - 자동 복사:

# Termux에서
ssh-copy-id 사용자명@맥미니_Tailscale_IP
# 예: ssh-copy-id braun@100.64.1.5

방법 2 - 수동 복사:

# Termux에서 공개키 확인
cat ~/.ssh/id_ed25519.pub

# 출력된 내용 복사 후, 맥 미니에서:
mkdir -p ~/.ssh
echo "복사한_공개키_내용" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

4. SSH 접속 간편화 (Config 파일)

Termux에서 config 파일 생성

mkdir -p ~/.ssh
nano ~/.ssh/config

내용 입력

Host macmini
HostName 100.64.x.x
User 사용자명
Port 22
IdentityFile ~/.ssh/id_ed25519

권한 설정

chmod 600 ~/.ssh/config

간단하게 접속

ssh macmini

5. 문제 해결

Connection Refused 에러

# 맥 미니에서 SSH 재시작
sudo launchctl kickstart -k system/com.openssh.sshd

# 또는 원격 로그인 껐다 켜기
sudo systemsetup -setremotelogin off
sudo systemsetup -setremotelogin on

특수문자 깨짐 문제 (zsh)

# 맥 미니 ~/.zshrc에 추가
echo 'export LANG=en_US.UTF-8' >> ~/.zshrc
echo 'export LC_ALL=en_US.UTF-8' >> ~/.zshrc
source ~/.zshrc

zsh 프롬프트 심플하게

# ~/.zshrc에 추가
echo 'PROMPT="%n@%m %1~ %# "' >> ~/.zshrc
source ~/.zshrc

6. 보안 팁

Tailscale 사용 시 장점

  • ✅ 22번 포트 사용해도 안전 (VPN 없으면 접근 불가)
  • ✅ 포트포워딩 불필요
  • ✅ 공인 IP 노출 안 됨
  • ✅ 방화벽 설정 간단

추가 보안 (선택사항)

비밀번호 인증 비활성화:

# 맥 미니에서
sudo nano /etc/ssh/sshd_config

# 다음 설정 추가/수정
PasswordAuthentication no
ChallengeResponseAuthentication no

# SSH 재시작
sudo launchctl kickstart -k system/com.openssh.sshd

7. 외부 접속 시나리오

집 안에서

  • Tailscale IP로 접속
  • 로컬 네트워크 속도 (빠름)

집 밖에서

  • 동일한 Tailscale IP 사용
  • P2P 직접 연결로 빠른 속도
  • 인터넷 속도에만 제한됨

맥 미니 절전 모드

# Wake on LAN 활성화
sudo pmset -a womp 1
sudo pmset -a powernap 1

# 설정 확인
pmset -g

상태별 접속 가능 여부:

  • ✅ 잠금 화면: 접속 가능
  • ✅ 디스플레이 꺼짐: 접속 가능
  • ⚠️ 절전 모드: Wake on LAN 설정 시 가능
  • ❌ 완전 종료: 접속 불가

8. 활용 예시

Claude Code로 원격 개발

# Termux에서
ssh macmini
cd ~/project
code . # Claude Code 실행

웹 개발 테스트

# 맥 미니에서 개발 서버 실행
npm run dev

# 안드로이드 브라우저에서 접속
http://100.64.x.x:3000

📝 요약

  1. Tailscale 설치 및 연결 (맥 미니 + 안드로이드)
  2. 맥 미니 SSH 활성화 (시스템 설정 → 원격 로그인)
  3. SSH 키 생성 및 복사 (비밀번호 없이 접속)
  4. SSH config 설정 (간편 접속)
  5. 접속 테스트 (ssh macmini)

완료! 이제 어디서든 안전하게 맥 미니에 접속 가능합니다! 🚀