본문으로 건너뛰기

node.js 호스팅에서 올바른 패스워드를 입력했는데 git push가 안 되나요?

💡 요약 정리

  • 최신 Git 클라이언트와 node.js 호스팅의 OpenSSH 환경이 호환되지 않아 발생하는 증상입니다.
  • Git Bash에서 push 시 SSH 키(id_rsa)를 참조하지 않고 일반 비밀번호 입력창이 나타납니다.
  • 해결: 사용자 .ssh 폴더에 config 파일을 생성해 ‘PubkeyAcceptedKeyTypes +ssh-rsa’를 추가합니다.
  • 이후 다시 push하면 키의 패스프레이즈(passphrase) 입력창이 뜨고 정상 진행됩니다.
  • 키를 만들 때 설정한 패스프레이즈를 정확히 입력하세요.

1. 이런 증상이 나타나요

  • Git Bash에서 push할 때 SSH 키(id_rsa)를 참조하지 않고, 일반 비밀번호 입력창이 뜨는 경우가 있습니다.
일반 비밀번호 입력창이 표시되는 Git Bash 예시 화면
  • 예시: SSH 키 대신 일반 비밀번호를 묻는 입력창

2. 원인

  • 최신 Git 클라이언트와 node.js 호스팅의 OpenSSH 환경이 호환되지 않아 발생하는 문제입니다.

3. 해결 절차

준비사항

  • Git Bash 또는 터미널

  • 공개키/개인키가 생성되어 있어야 합니다(id_rsa, id_rsa.pub).

  • 참고: id_rsa.pub 안내

단계별 설정

① config 파일 생성 및 설정 추가

  • 공개키를 생성했던 사용자 계정의 .ssh 폴더로 이동해 config 파일을 생성합니다.

    • 경로 예시(Windows): C:/Users/ID/.ssh/
    • 편집 도구: vi 또는 메모장(notepad)
  • 아래 설정을 config 파일에 추가합니다.

PubkeyAcceptedKeyTypes +ssh-rsa
.ssh 경로 위치 예시
  • 예시: C:/Users/ID/.ssh/ 폴더
config 파일 생성 및 설정 추가 예시
  • 예시: config 파일을 생성하고 PubkeyAcceptedKeyTypes 설정 추가

② 다시 push하여 passphrase 창 확인

  • 변경 후 다시 git push를 시도하여, SSH 키의 패스프레이즈 입력창이 뜨는지 확인합니다.
SSH 키 패스프레이즈 입력창 예시
  • 예시: id_rsa 키를 참조한 패스프레이즈 입력창

③ 키 생성 시 입력한 패스워드로 push 진행

  • 키 파일을 생성할 때 설정했던 패스프레이즈를 입력해 push를 완료합니다.
정상적으로 push를 진행하는 예시 화면
  • 예시: 패스프레이즈 입력 후 정상 진행