짧은 답변
비밀번호 대신 키로 로그인하려면, 당신의 공개 키가 서버의 ~/.ssh/authorized_keys 파일에 들어 있어야 합니다. 그곳에 넣는 가장 쉬운 방법은 ssh-copy-id입니다:
ssh-copy-id user@host 비밀번호를 한 번 물어보고, 공개 키를 추가하며, 그 후로는 키로 로그인합니다. 이 가이드는 ssh-copy-id, 그것을 쓸 수 없을 때(Windows, 제한된 셸)의 수동 방법, 그리고 휴대폰에서의 원탭 방법을 다룹니다.
방법 1 — ssh-copy-id (Linux/macOS)
# copies your default public key (~/.ssh/id_ed25519.pub)
ssh-copy-id user@host
# or a specific key:
ssh-copy-id -i ~/.ssh/mykey.pub user@host 이번 한 번만 비밀번호로 로그인하고, 필요하면 올바른 권한으로 ~/.ssh를 생성하며, 키를 authorized_keys에 추가합니다. 아직 키가 없으신가요? 먼저 ssh-keygen -t ed25519로 생성하세요(Ed25519 vs RSA 참조).
방법 2 — 수동 (Windows, 또는 ssh-copy-id가 없을 때)
Windows에는 ssh-copy-id가 기본 포함되지 않습니다. 직접 추가하세요 — .pub 파일의 내용을 서버의 authorized_keys에 붙여 넣습니다:
# from any machine, one line:
cat ~/.ssh/id_ed25519.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys" Windows PowerShell에서는:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh user@host "cat >> .ssh/authorized_keys" chmod가 중요합니다:권한이 너무 열려 있으면 SSH는 authorized_keys를 무시합니다. 복사 후에도 키가 작동하지 않으면 Permission denied (publickey)를 확인하세요.
방법 3 — 휴대폰에서 원탭
휴대폰에는 ssh-copy-id 명령이 없고, 파일을 SSH로 손쉽게 파이프할 방법도 없습니다. 좋은 모바일 클라이언트가 대신 해줍니다:TermAI는 기기 Keychain에 Ed25519 키를 생성하고, 서버에 배포 동작을 제공합니다. 이것은 이미 작동하는 로그인을 통해 공개 키 절반을 authorized_keys에 기록합니다 — ssh-copy-id가 하는 것과 같은 일을 원탭으로. 그 후에는 키로 접속하며 비밀번호가 필요 없습니다.
제대로 됐는지 확인하기
다시 접속해 보세요 — 비밀번호를 묻지 않아야 합니다. 여전히 묻는다면 키가 받아들여지지 않은 것입니다:6가지 흔한 원인(권한, 잘못된 사용자, sshd 설정…)에 대해 SSH가 여전히 비밀번호를 묻는 경우를 참조하세요.
FAQ
SSH 키를 서버에 어떻게 복사하나요?ssh-copy-id user@host를 실행하세요(Linux/macOS). Windows나 제한된 환경에서는 .pub 파일을 서버의 ~/.ssh/authorized_keys에 수동으로 추가하세요. 휴대폰에서는 원탭으로 키를 배포하는 TermAI 같은 클라이언트를 사용하세요.
ssh-copy-id는 실제로 무엇을 하나요?
비밀번호로 한 번 로그인하고, 당신의 공개 키를 ~/.ssh/authorized_keys에 추가하며 올바른 권한을 설정합니다. 당신의 개인 키는 절대 당신의 기기를 떠나지 않습니다.
authorized_keys는 어디에 있나요?
로그인하는 사용자의 홈 디렉터리 안:서버의 ~/.ssh/authorized_keys입니다. 모드 600이어야 하며, 700인 .ssh 디렉터리 안에 있어야 합니다.
ssh-copy-id를 찾을 수 없어요 — 무엇을 쓰나요?
Windows와 일부 최소 구성 시스템에는 없습니다. 키를 수동으로 파이프하세요:cat key.pub | ssh user@host "cat >> ~/.ssh/authorized_keys".
핵심 요약
- 목표:당신의 공개 키를 서버의
~/.ssh/authorized_keys에 - 가장 쉬움:
ssh-copy-id user@host(Linux/macOS) - 수동 / Windows:
.pub파일을authorized_keys에 파이프한 뒤 chmod 600/700 - 모바일:원탭 배포(TermAI) — ssh-copy-id와 같은 결과
- 복사되는 것은 공개 키뿐;개인 키는 기기에 남습니다
Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.