튜토리얼

비밀번호 없는 SSH(키 기반 로그인) 설정 방법

비밀번호 없는 SSH는 비밀번호 대신 키로 로그인하는 것 ── 더 편리하고 더 안전합니다. 세 단계:키를 생성하고, 공개 키를 서버에 복사하고, 선택적으로 비밀번호 로그인을 비활성화합니다.

CC Chen Chen· 창업자·2026년 6월 24일·6분 분량

비밀번호 없는 SSH를 세 단계로 설정하기

"비밀번호 없는" SSH는 보안이 없다는 뜻이 아닙니다 ── 매번 비밀번호를 입력하는 대신 로 로그인한다는 뜻입니다. 더 편리하고 더 안전하기도 합니다. 세 단계:키 쌍 생성, 공개 키를 서버에 복사, 그리고 (선택적으로) 비밀번호 로그인 끄기로 키만 작동하게 만듭니다. 아래는 전체 과정입니다.

1단계 — 키 쌍 생성하기

사용하는 컴퓨터에서 Ed25519 키를 만듭니다(현대적이고, 빠르며, 안전합니다 ── Ed25519 vs RSA 참조):

ssh-keygen -t ed25519 -C "[email protected]"

Enter를 눌러 기본 위치를 받아들입니다. 패스프레이즈를 묻는데 ── 이것은 디스크의 개인 키를 암호화합니다. 진정한 원스텝 로그인을 위해 비워둘 수도 있지만, 패스프레이즈와 ssh-agent를 함께 쓰면 보안과 편의를 모두 얻습니다. 이렇게 하면 두 개의 파일이 생성됩니다:id_ed25519(개인 키 ── 절대 공유하지 마세요)와 id_ed25519.pub(공개 키 ── 서버에 둡니다).

2단계 — 공개 키를 서버에 복사하기

공개 키 부분은 서버의 ~/.ssh/authorized_keys에 있어야 합니다. 쉬운 방법은:

ssh-copy-id user@host

이 마지막 한 번 비밀번호를 묻고 키를 설치합니다. (ssh-copy-id가 없거나 Windows를 쓰시나요? 키 복사 전체 가이드를 참조하세요.) 이제 다시 연결하세요 ── ssh user@host로 비밀번호 없이 로그인되어야 합니다. 여전히 묻는다면 SSH가 여전히 비밀번호를 요구함을 참조하세요.

3단계 — 비밀번호 로그인 끄기(선택, 권장)

키 로그인이 작동하면, 비밀번호를 완전히 비활성화해서 무차별 대입 시도를 무의미하게 만들 수 있습니다. 서버의 /etc/ssh/sshd_config에서:

PasswordAuthentication no
PubkeyAuthentication yes

그런 다음 sudo systemctl restart ssh를 실행합니다. 중요:연결을 끊기 전에 별도의 세션에서 키 로그인이 작동하는지 확인하세요 ── 그렇지 않으면 실수 하나로 자신을 잠가버릴 수 있습니다. 이것을 root 로그인 비활성화fail2ban과 결합하면 탄탄한 기준선이 됩니다.

왜 키가 비밀번호를 이기는가

키는 256비트 비밀이며 절대 서버로 전달되지 않습니다 ── 전달되는 것은 서명뿐입니다 ── 따라서 통신 경로상에서 피싱되거나 무차별 대입될 것이 아무것도 없습니다. 비밀번호는 추측될 수 있고, 봇은 매일 수백만 개의 비밀번호로 22번 포트를 두드립니다. 키 전용 인증에서는 그런 시도가 성공할 수 없습니다. 절충점에 대한 자세한 내용:SSH 키 vs 비밀번호.

휴대폰에서 비밀번호 없는 SSH

같은 모델이 모바일에서도 작동하며, 좋은 클라이언트는 그것을 하나의 흐름으로 만듭니다:TermAI는 기기 Keychain 안에서 Ed25519 키를 생성하고, 원탭 서버에 배포로 공개 키를 authorized_keys에 설치합니다 ── 터미널 없이 1단계와 2단계를 처리합니다. 그 후에는 키로 연결하므로, 터치 키보드에서 비밀번호를 입력할 필요가 없습니다.

휴대폰이 키로 서버에 로그인, 비밀번호 없음
모바일에서의 비밀번호 없는 로그인:앱이 키를 생성하고 배포한 다음 그것으로 연결합니다 ── 유리 위에서 비밀번호를 입력할 필요 없음.

자주 묻는 질문

비밀번호 없는 SSH는 어떻게 설정하나요?
ssh-keygen -t ed25519로 키를 생성하고, ssh-copy-id user@host로 공개 키를 서버에 복사한 다음 다시 연결하세요 ── 키로 로그인되며 비밀번호가 필요 없습니다. 선택적으로 sshd_config에서 비밀번호 인증을 비활성화하세요.

비밀번호 없는 SSH는 안전한가요?
비밀번호보다 안전합니다 ── 키는 네트워크를 건너지 않으므로 피싱되거나 무차별 대입될 수 없습니다. 비밀번호 인증을 완전히 비활성화하면 무차별 대입 시도가 불가능해집니다.

키에 패스프레이즈를 넣어야 하나요?
이상적으로는 네 ── 그것은 디스크의 개인 키를 암호화합니다. ssh-agent를 사용하면 세션마다 한 번만 입력하고도 원스텝 로그인을 유지할 수 있습니다.

비밀번호를 비활성화하면 잠겨버리나요?
키 로그인이 먼저 작동하지 않았을 때만 그렇습니다. 비밀번호 인증을 비활성화하기 전에 항상 별도의 세션에서 키로 로그인할 수 있는지 확인하세요.

핵심 요약

  • 세 단계:키 생성 → 공개 키를 서버에 복사 →(선택) 비밀번호 인증 비활성화
  • 생성:ssh-keygen -t ed25519
  • 설치:ssh-copy-id user@host
  • 강화:sshd_config에 PasswordAuthentication no(키 로그인 작동 확인 후)
  • 모바일:원탭 생성+배포(TermAI), 그 후 키 로그인
Try TermAI

Free on iOS and Android. 5 AI requests/day on the free tier, plus unlimited SSH/SFTP and built-in Tailscale.

CC
Chen Chen — Founder of TermAI

Writes about mobile DevOps, terminal UX, and the surprising depth of "boring" infrastructure.

Was this useful? ← Back to blog