본문 바로가기

Dev Stories/데브옵스(DevOps)

GitHub SSH 인증 설정 방법

GitHub와 같은 원격 저장소에 코드를 업로드(push)하거나 내려받기(pull) 위해서는 반드시 사용자 인증이 필요하다. 과거에는 아이디와 비밀번호를 사용했지만, 보안 강화로 인해 현재 GitHub에서는 비밀번호 인증을 더 이상 지원하지 않는다. 따라서 아래 두 가지 방식 중 하나를 사용해야 한다.

  • Personal Access Token (PAT)
  • SSH Key 인증

두 방식 모두 사용 가능하지만 공개키/개인키 방식으로 보안에 더 안전하고 장기 사용에도 편리한 SSH 방식을 더 많이 사용하 SSH 방식을 더 선호한다.

  • 매번 로그인할 필요 없다.
  • 공개키/개인키 방식으로 보안성이 높다.
  • 자동 인증으로 작업 효율이 좋다.
  • 개발 및 협업 환경에 최적화되어 있다.

다음은 SSH 키를 생성하여 GitHub에 등록하고 연결하여 실제 push하는 과정이다.

1. SSH 키 생성

# CLI에서 아래 명령어 실행
ssh-keygen -t ed25519 -C "your_email@example.com"

Enter file in which to save the key: (Enter)
Enter passphrase: (Enter)
Enter same passphrase again: (Enter)\

# 개인 키: ~/.ssh/id_ed25519
# 공개 키: ~/.ssh/id_ed25519.pub

 

2. 공개 키 복사

cat ~/.ssh/id_ed25519.pub

# 예시
ssh-ed25519 AAAAbbbbCCCCddddEEEEffffGGGGhhhhIIIIjjjjKKKK your_email@example.com
 
출력되는 문자열을 전체 복사한다.

 

3. GitHub에 SSH 키 등록

GitHub 사이트 접속 후 다음 순서대로 진행한다.

  1. 우측 상단 프로필 클릭
  2. Settings
  3. 좌측 메뉴 → SSH and GPG keys
  4. New SSH key클릭
  5. 입력
    • Title: 구분 이름
    • Key: 복사한 공개 키 붙여넣기
  6. Add SSH key 클릭

4. 원격 저장소 URL을 SSH 방식으로 변경

 
# 현재 상태 확인
git remote -v

# SSH로 변경
git remote set-url origin git@github.com:username/repository.git

# 변경 확인
git remote -v

origin git@github.com:username/repository.git (fetch)
origin git@github.com:username/repository.git (push)
 
 

5. GitHub에 push 해보기

 
git push origin main

 

 

 

반응형