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)를 참조하지 않고, 일반 비밀번호 입력창이 뜨는 경우가 있습니다.
- 예시: 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
- 예시: C:/Users/ID/.ssh/ 폴더
- 예시: config 파일을 생성하고 PubkeyAcceptedKeyTypes 설정 추가
② 다시 push하여 passphrase 창 확인
- 변경 후 다시 git push를 시도하여, SSH 키의 패스프레이즈 입력창이 뜨는지 확인합니다.
- 예시: id_rsa 키를 참조한 패스프레이즈 입력창
③ 키 생성 시 입력한 패스워드로 push 진행
- 키 파일을 생성할 때 설정했던 패스프레이즈를 입력해 push를 완료합니다.
- 예시: 패스프레이즈 입력 후 정상 진행