피드로 돌아가기
Why SSH Key Management Is Broken and How Certificates Fix It
Dev.toDev.to
Security

authorized_keys 지옥 탈출, SSH Certificate로 구현하는 무상태 인증 체계

Why SSH Key Management Is Broken and How Certificates Fix It

Alan West2026년 4월 4일7intermediate

Context

개별 서버마다 public key를 등록하는 authorized_keys 방식의 운영 한계. 사용자 증가에 따른 N*M 설정 복잡도 증가 및 퇴사자 계정 회수 누락 위험. 호스트 핑거프린트 수동 확인 과정의 보안 취약성.

Technical Solution

  • 사용자 및 호스트 인증을 위한 전용 Certificate Authority(CA) 키 쌍 구축
  • CA가 사용자·호스트의 public key에 서명하여 유효기간과 권한이 포함된 인증서 발행
  • 서버의 sshd_config에 TrustedUserCAKeys 설정을 추가하여 개별 키 등록 없이 CA 신뢰 기반 인증 구조 설계
  • 클라이언트의 known_hosts에 @cert-authority 설정을 추가하여 호스트 핑거프린트 수동 확인 단계 제거
  • 인증서 유효기간을 8~24시간으로 짧게 설정하여 키 유출 시 피해 범위를 최소화하는 단기 인증 전략 도입
  • step-ca 또는 HashiCorp Vault와 같은 도구를 활용한 인증서 서명 워크플로우 자동화

Key Takeaway

신뢰의 중심을 개별 엔드포인트에서 중앙 집중형 CA로 이동시켜 인증 관리의 복잡도를 O(N*M)에서 O(1)로 최적화하는 설계 원칙.


관리 서버가 소수를 넘어가는 시점에 SSH Certificate 도입을 검토하고, 특히 사용자 인증서는 24시간 미만의 짧은 수명을 유지할 것

원문 읽기