블로그 목록으로
개발자 가이드
5분

SSH 키와 인증서를 안전하게 팀과 공유하는 법

SSH 키, SSL 인증서, 배포 키를 팀원에게 안전하게 전달하는 방법. 위험한 공유 방식과 비밀 메모를 활용한 안전한 대안을 비교합니다.

LOCK.PUB
2026-02-23

SSH 키와 인증서를 안전하게 팀과 공유하는 법

"SSH 키 슬랙으로 보내줘." 개발팀에서 흔히 듣는 말입니다. 서버 접속이 급하고, 새로운 팀원이 환경 설정을 해야 하고, 배포가 코앞인데 키가 없으면 당장 일이 멈춥니다.

하지만 이 한마디가 심각한 보안 사고의 시작이 될 수 있습니다.

SSH 키 공유가 특별히 위험한 이유

SSH 키는 일반적인 비밀번호와 다릅니다. 서버에 대한 완전한 접근 권한을 부여합니다.

비밀번호 vs SSH 키 비밀번호 SSH 키
권한 범위 특정 계정 서버 전체
유출 시 영향 해당 계정 서버 내 모든 데이터
변경 용이성 즉시 변경 가능 키 재생성 + 모든 서버 업데이트 필요
이중 인증 가능 키 자체가 인증

SSH 키가 유출되면 서버의 모든 데이터, 코드, 데이터베이스에 접근할 수 있습니다. 이것은 비밀번호 하나가 유출되는 것과는 차원이 다른 문제입니다.

팀에서 SSH 키를 공유해야 하는 상황

현실적으로 공유가 필요한 경우는 분명히 있습니다.

  • 공용 서버 접속: 팀원 모두가 접근해야 하는 스테이징/프로덕션 서버
  • 배포 키: CI/CD 파이프라인에서 사용하는 배포용 키
  • SSL 인증서: 웹 서버의 인증서 갱신 시 담당자 변경
  • API 시크릿: 서드파티 서비스 연동에 필요한 인증 정보
  • 데이터베이스 접속 정보: 긴급 장애 대응 시

위험한 공유 방법들

1. 슬랙/디스코드 DM

메신저 채팅 기록은 서버에 영구 저장됩니다. 검색 기능으로 누구나 "ssh" 또는 "key"를 검색하면 과거에 공유한 키를 찾을 수 있습니다. 퇴사한 직원의 계정에도 기록이 남아 있습니다.

2. 이메일

이메일 서버에 영구 보관되고, 전달 한 번이면 통제 불가능합니다. 메일 서버 침해 시 모든 키가 한번에 유출됩니다.

3. 공유 Google Drive/Notion

접근 권한을 세밀하게 관리하기 어렵고, 파일이 동기화되면 로컬 기기에도 복사본이 남습니다. 팀원이 떠날 때 모든 복사본을 회수하는 것은 사실상 불가능합니다.

4. Git 저장소에 커밋

가장 위험한 방법입니다. Git 히스토리에 영구적으로 남으며, 파일을 삭제해도 히스토리에서 복구할 수 있습니다. 공개 저장소라면 전 세계에 노출됩니다.

안전한 공유 방법

방법 1: LOCK.PUB 비밀 메모 (일회성 전달에 최적)

키를 한 번 전달해야 할 때 가장 실용적인 방법입니다.

1. LOCK.PUB에서 비밀 메모 생성
2. SSH 키 또는 인증서 내용을 붙여넣기
3. 강력한 비밀번호 설정
4. 만료 기간을 최소한으로 설정 (1-4시간)
5. 링크를 슬랙으로, 비밀번호를 전화로 전달
6. 수신자가 키를 로컬에 저장한 후 링크 만료

장점:

  • 서버에 평문으로 키가 저장되지 않음
  • 만료 후 접근 불가
  • 채팅 기록에 키 원문이 남지 않음

방법 2: 시크릿 매니저 (팀 규모가 클 때)

HashiCorp Vault, AWS Secrets Manager, Google Secret Manager 등 전문 도구를 사용합니다.

  • 접근 제어와 감사 로그 제공
  • 자동 키 순환 가능
  • 비용과 설정 복잡성이 단점

방법 3: SSH 인증서 기관 (장기적 해결책)

공유 키 대신 SSH 인증서 기관(CA)을 운영하여 각 사용자에게 개별 인증서를 발급합니다.

  • 키 공유 자체가 불필요해짐
  • 사용자별 접근 권한 관리 가능
  • 초기 설정 비용이 높음

방법 4: 개인별 키 발급 (가장 권장)

가능하다면 공유 키 대신 개인별 키를 발급하는 것이 가장 안전합니다.

원칙: 공유 키 < 개인별 키
공유 키가 유출되면 → 팀 전체가 영향
개인 키가 유출되면 → 해당 사용자만 영향

반드시 공유해야 할 때의 체크리스트

개인별 키가 불가능하고 반드시 공유해야 한다면, 다음을 지키세요.

전달 전

  • 키의 권한 범위를 최소한으로 설정했는가?
  • 읽기 전용 키로 충분하지 않은가?
  • IP 제한을 걸 수 있는가?

전달 시

  • 키와 비밀번호를 다른 채널로 전달하는가?
  • 만료 기간을 가능한 짧게 설정했는가?
  • 수신자가 확인한 후 원본을 삭제할 수 있는가?

전달 후

  • 수신자가 키를 안전하게 저장했는지 확인
  • 공유 링크/메모가 만료되었는지 확인
  • 키 사용 로그를 모니터링

키 순환 일정

SSH 키를 정기적으로 교체하면, 유출된 키의 유효 기간을 제한할 수 있습니다.

키 유형 권장 순환 주기
프로덕션 서버 키 90일
배포 키 90일
SSL 인증서 갱신 시마다
API 시크릿 90일
개발/스테이징 키 180일

DevOps 팀을 위한 보안 체크리스트

  • 모든 서버에 개인별 SSH 키를 사용하는가?
  • 공유 키가 존재한다면 IP 제한이 설정되어 있는가?
  • 퇴사자의 키는 즉시 비활성화되는가?
  • 키 순환 일정이 수립되어 있는가?
  • SSH 키가 Git 저장소에 커밋된 적이 없는가?
  • 채팅 기록에 키가 평문으로 남아 있지 않은가?
  • 비밀 정보 전달 시 만료가 설정된 채널을 사용하는가?

정리

SSH 키와 인증서는 서버 보안의 핵심입니다. 슬랙 DM이나 이메일로 보내는 것은 집 열쇠를 게시판에 붙여놓는 것과 같습니다. 가능하면 개인별 키를 발급하고, 반드시 공유해야 할 때는 만료 설정이 있는 비밀 메모를 활용하세요.

지금 바로 비밀 메모를 만들어 SSH 키를 안전하게 전달하세요.

비밀 메모 만들기

관련 키워드

SSH 키 공유
SSH 키 보안
SSL 인증서 공유
배포 키 관리
비밀 메모 개발자
DevOps 보안

지금 바로 비밀링크를 만들어보세요

무료로 안전하게 정보를 공유할 수 있습니다. 회원가입도 필요 없습니다.

무료로 시작하기
SSH 키와 인증서를 안전하게 팀과 공유하는 법 | LOCK.PUB Blog