T도구모음

SSH 키 생성기

브라우저에서 안전하게 SSH 키 쌍을 생성합니다. 서버 전송 없이 100% 로컬에서 처리됩니다.

이 키는 브라우저에서 생성되며 서버로 전송되지 않습니다. 페이지를 떠나면 키는 삭제됩니다.

SSH 키 생성기 -- 브라우저에서 안전하게 키 쌍 만들기

SSH(Secure Shell) 키는 비밀번호 없이 서버에 안전하게 접속하기 위한 공개키/개인키 암호화 인증 방식입니다. 이 도구는 Web Crypto API를 사용하여 RSA 2048/4096비트 키 쌍을 100% 브라우저 로컬에서 생성합니다. 키는 서버로 전송되지 않으며, 페이지를 떠나면 메모리에서 자동 삭제됩니다.

RSA 4096 vs. Ed25519 -- 알고리즘 비교

항목RSA 4096Ed25519
키 길이4096비트 (512바이트)256비트 (32바이트)
보안 강도약 140비트 보안약 128비트 보안
생성 속도느림 (수 초)빠름 (밀리초)
서명/검증 속도보통매우 빠름
호환성거의 모든 시스템OpenSSH 6.5+
권장 용도레거시 호환 필요 시신규 배포(권장)

2026년 현재 NIST와 OpenSSH 프로젝트 모두 Ed25519를 기본 권장합니다. 그러나 이 도구는 Web Crypto API 제약으로 RSA만 지원하며, Ed25519가 필요한 경우 터미널에서 ssh-keygen -t ed25519를 사용하세요.

SSH 키 인증 흐름

SSH 키 인증은 다음 과정으로 이루어집니다.

  1. 클라이언트가 공개키를 서버의 ~/.ssh/authorized_keys에 등록
  2. 접속 시 서버가 랜덤 챌린지(challenge)를 클라이언트에 전송
  3. 클라이언트가 개인키로 챌린지에 서명하여 응답
  4. 서버가 공개키로 서명을 검증하여 인증 완료

핵심 파일과 권한 설정

파일위치권한(chmod)설명
개인키~/.ssh/id_rsa600절대 외부 공유 금지
공개키~/.ssh/id_rsa.pub644서버에 등록할 키
인증 키 목록~/.ssh/authorized_keys600허용된 공개키 목록
알려진 호스트~/.ssh/known_hosts644신뢰된 서버 지문
SSH 디렉토리~/.ssh/700디렉토리 자체 보호

ssh-agent -- 패스프레이즈 관리

개인키에 패스프레이즈를 설정하면 키 파일이 유출되어도 추가 보안 계층이 작동합니다. ssh-agent를 실행한 뒤 ssh-add ~/.ssh/id_rsa로 키를 등록하면, 세션 동안 패스프레이즈를 다시 입력하지 않아도 됩니다. macOS는 키체인(Keychain)과 통합되어 재부팅 후에도 자동으로 키가 로드됩니다.

보안 권장사항

  • 패스프레이즈 필수: 개인키에 반드시 강력한 패스프레이즈를 설정하세요.
  • 키 분리: GitHub용, 서버 배포용, 개인용 등 용도별로 별도 키 쌍을 사용하세요.
  • 비밀번호 인증 비활성화: SSH 키 등록 후 /etc/ssh/sshd_config에서 PasswordAuthentication no를 설정하세요.
  • 주기적 키 로테이션: 12~24개월마다 키를 교체하는 것이 모범 사례입니다.
  • 포트 변경: 기본 포트(22)를 다른 번호로 변경하면 자동 스캔 공격을 줄일 수 있습니다.

실전 활용 시나리오

  • GitHub/GitLab: 저장소 클론 및 푸시를 위한 Deploy Key 등록
  • CI/CD 파이프라인: GitHub Actions, Jenkins에서 서버 배포 자동화
  • 원격 서버 관리: AWS EC2, GCP Compute Engine 접속
  • Git 서명: SSH 키로 커밋 서명(Git 2.34+)

관련 도구

키 파일 권한 설정은 chmod 계산기를, 서버 자동화 스케줄링은 Cron 표현식 생성기를, 토큰 기반 인증은 JWT 디코더를 활용하세요.

참고 자료

  • OpenSSH -- 공식 문서 (openssh.com)
  • NIST SP 800-57 -- "Recommendation for Key Management"
  • GitHub Docs -- "Connecting to GitHub with SSH"
  • OWASP -- SSH Hardening Cheat Sheet

자주 묻는 질문

관련 도구