EGit 및 GitHub의 '인증 실패'오류


98

Eclipse Helios에 EGit 플러그인을 설치했고 GitHub 계정과 함께 사용하려고하는데 구성하려고하면 "Auth Failed"오류가 발생합니다.

나는 그것을 인터넷 검색을하고 싶지만 운이 ... 내 암호에 문제가있는 것 같다하지만 AFAIK EGit은 바로 이곳 (보고있다 /home/user/.ssh/id_rsa) 나는에 의해 연결에 아무 문제도 없어 sshgit 콘솔 클라이언트에 .

일부 블로그는 이것이 URI와 Egit의 파서에 문제라고 말하지만 여전히 해결책을 찾지 못했습니다.


답변:


140

내 대답은 구식 일 수 있지만 누군가에게 유용 할 수 있기를 바랍니다.

  1. Eclipse에서 창> 환경 설정> 일반> 네트워크 연결> SSH2로 이동하십시오 (또는 환경 설정 창 필터 상자에 "SSH2"를 입력하십시오).

  2. 에서 "키 관리" 탭을 눌러 "RSA 키 ... 생성" 버튼을 클릭합니다. 선택적으로 댓글 (일반적으로 이메일 주소)과 암호를 키에 추가 할 수 있습니다. 암호는 GitHub에서 인증하는 동안 사용됩니다.

  3. 생성 된 공개 키 ( "RSA 키 생성 ..."버튼 바로 아래 상자에 있음)를 복사하여 GitHub 계정에 추가합니다.
  4. 누르면 "저장 개인 키는 ..." 버튼을 파일에 개인 RSA 키를 저장합니다. 기본적으로 키는 SSH2 홈 디렉토리에 저장됩니다 ( "일반"탭 참조).

그게 다야! 이제 코드를 GitHub 저장소로 푸시 할 수 있습니다.


1
내 개인 키에 표준 이름 (id_rsa)이 없어서 인식되지 않았습니다. 나는 당신이 가리키는 환경 설정 창에서 수동으로 추가했으며 제대로 작동했습니다.
muriloq

18
설명대로 SSH 키를 설정 한 후 인증 상자에서 사용자 이름 / 암호를 변경해서는 안된다는 것을 알았습니다 (GitHub 자격 증명을 넣었습니다). 이 상자의 기본값은 username : git이고 암호는 비어 있습니다.
harschware

1
이것은 BitBucket git 저장소로 나를 위해 일했지만 Eclipse를 다시 시작해야했습니다.
artlung

8
사용자 이름을 git 및 암호로 비워두면 마침내 저에게 효과적이었습니다.
Mike R

4
생성 된 RSA 키를 github 계정에 추가하는 프로세스입니다. 1) github 계정에 로그인 2) 설정으로 이동 3) 왼쪽에서 SSH 키를 찾아 클릭합니다. 4) 그런 다음 SSH 키 추가를 클릭합니다 (이제 SSH 키 붙여 넣기). 이는 당신이 생성)
라지브

27

나는 똑같은 문제가 있었지만 Eclipse 버그 보고서에서 치료법을 찾았습니다!

GIT_SSH라는 환경 변수는 ssh 실행 파일 [1]에 대한 경로로 설정되어야합니다.

예를 들어 Ubuntu Linux (10.10 64 비트)의 경우 :

> export GIT_SSH=/usr/bin/ssh
> eclipse

그 후 GitHub 저장소로 푸시하면 정상적으로 작동합니다. Eclipse Galileo와 Indigo로 이것을 테스트했습니다.

문제는 정말 짜증나고 해결책은 좋지 않습니다. 지금은 적어도 우분투 사용자를 위해 솔루션을 영구적으로 만들려면 env 변수를 영구적으로 만들어야합니다. ~ / .profile 또는 ~ / .bashrc [2]에 export 명령을 추가하여 수행 할 수 있습니다. 예를 들면 :

> cd ~
> echo "export GIT_SSH=/usr/bin/ssh" >> .profile

그런 다음 Eclipse를 다시 시작하여 적용하십시오.

출처 :


나는 일주일 내내이 문제를 겪었습니다-GitHub 또는 Asssembla에 연결하는 osx에서 Eclipse. 당신의 수정은 나를 위해 작동합니다. 감사.
ianmayo

Windows에서는 openssh가 작동하지 않았습니다. 나는 plink를 사용해야했다. 내 대답을 참조하십시오.
Piotr Dobrogost

그리고 릴리스 된 수정 사항에 가까워지고 있습니다. 버그 보고서가 끝날 때 누군가가 최신 jsch jar 파일을 수동으로 다운로드하고 수동으로 설치하여 작동하도록하는 방법을 보여주었습니다. 이 env var 솔루션으로 가서 jsch jar 파일이 실제로 Eclipse 릴리스에 들어갈 때까지 기다릴 것입니다.
crowmagnumb

내 문제를 해결했습니다. 감사.
Pedram

OMG. 이와 같은 문제로 인해 Android가 처음에 Eclipse를 사용하는 이유가 궁금합니다. 팁을 주셔서 대단히 감사합니다. 그건 내 문제를 해결하고, EGit / 이클립스는 "인증 실패"와 완전히 인정했다
Calyth

16

http프로토콜 로 선택 하고 GitHub 사용자 이름과 암호를 제공 하여 문제를 해결했습니다 .


예! 내가 읽은 다른 모든 것과는 반대로 작동했습니다. (Eclipse Indigo)
Owen B

HTTP 또는 HTTPS는 SSH보다 훨씬 간단합니다
Junchen 리우

예,하지만 ssh를 사용해야하는 경우가 있습니다. 리포지토리로 작업하는 동안 BitBucket에서 2 단계 인증이 필요합니다. 2 단계 인증이 필요한 경우에만 ssh를 통해 작업 할 수 있습니다.
Akshay Mahajan

10

이 문제에 대한 해결책을 찾기 위해 몇 시간을 보낸 후 마침내 Eclipse Forum 에 언급 된 변경 사항을 적용하여 금메달을 땄습니다 .

단계 :

전제 조건 : mysysgit은 기본 구성으로 설치됩니다.

1. C : /Users/Username/.ssh/config 파일을 만들고 ( "Username"을 Windows 7 사용자 이름으로 바꿉니다. (예 : C : /Users/John/.ssh/config)) 다음을 입력합니다.

Host github.com
HostName github.com
User git
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

2. Eclipse에서 원격 저장소를 설정해보십시오.

건배. 완벽하게 작동합니다.


8

msysgit을 설치해야합니다. 설치 후 Git Bash를 열고 다음 명령을 입력해야합니다.

$ git config --global user.name "Gennadiy Zlobin" (your name)
$ git config --global user.email gennad.zlobin@gmail.com (your email)
$ ssh-keygen -C "gennad.zlobin@gmail.com" -t rsa (your email)

이제 생성 된 키가 C:\Users\username\.ssh(Windows 7)에 있습니다.
다음으로
Eclipse 에서 Github의 프로젝트에 공개 키의 내용을로드하고 SSH 홈 으로 Window->Preferences->General->Network->SSH2설정합니다.~/.ssh

그 이동에 후 Key Management tab키를 기존로드 - 여기에서 개인 키를 설정합니다 ~/.ssh.

그 후 프로젝트를 Github에 푸시 할 수 있습니다 (하지만 git + ssh가 아닌 ssh 프로토콜을 설정했습니다).


감사합니다. 실제로 저는 Arch Linux에서 실행하고 있습니다
tehsis

5

ssh에 키를 추가하여 동일한 문제를 해결했습니다.

ssh-add ~/.ssh/id_rsa 

그런 다음 암호를 입력하고 다시 시작해야합니다.


4

SSH를 사용하는 * nix 사용자의 경우 :

로컬 컴퓨터의 계정 사용자 이름이 서버의 계정 사용자 이름과 다르지 않은지 확인하십시오. 분명히 eGit은 이것을 처리 할 수없는 것 같습니다. 예를 들어 로컬 컴퓨터의 사용자 이름이 'john'이고 서버에서 사용중인 계정의 이름이 'git'인 경우 egit은 연결에 실패합니다. 내가 찾은 유일한 해결 방법은 로컬 컴퓨터와 서버 모두에서 동일한 사용자 이름을 가지고 있는지 확인하는 것입니다.


1
이것이 여전히 사실입니까? 나는 오늘 저녁에 내 머리를 벽에 두드렸다. 내 개인 키는 Eclipse / eGit에서 절대 요청하지 않는 암호로 보호됩니다. 내가 원격으로 밀어하려고하면, Eclipse는 그냥 "스푸핑의 id_rsa_gsg_keypair를 위해 org.eclipse.jgit.transport.CredentialItem $ StringType 암호 구"오류를 결선
Vilsepi


2

내 네 번째 : 내 SSH 키가 Cygwin의 C : \ cygwin \ home \ <user> .ssh에 설정되었으므로 SSH를 기본 (Win7) C : \ Users \ <user> \ ssh 대신이 폴더로 가리 켰습니다. , 다음 지침에 따라 : http://wiki.eclipse.org/EGit/User_Guide/Remote#Eclipse_SSH_Configuration

ssh 프로토콜을 사용했으며 잘 작동합니다. 그래도 git 프로토콜을 사용하려고하면 "사용자가 git 프로토콜에서 지원되지 않음"이 표시됩니다.


2

나처럼 이미 ssh-keys를 설정했지만 여전히 오류가 발생하는 경우 :

푸시 리모컨을 설정 했는지 확인하십시오 . Cannot get remote repository refs -problems ( "... Passphrase for ..."및 "Auth fail"in the "Push ..."dialog)를 모두 받았을 때 저에게 효과적이었습니다.

이미 다음과 같은 경우

  1. Github로 SSH 키 설정 (창> 기본 설정> 일반> 네트워크 연결> SSH2)

  2. 로컬 저장소 설정 ( 이 가이드 를 따라 할 수 있음)

  3. Github 저장소 생성 ( 동일 가이드 )

... 방법은 다음과 같습니다.

  • Git 저장소보기로 이동하십시오 (창>보기 표시> 기타> Git 저장소).
  • 저장소를 확장하고 Remotes- > "Create Remote"를 마우스 오른쪽 버튼으로 클릭하십시오.
  • "Remote Name": origin, "Configure push": 선택-> "OK"클릭
  • 클릭 "변경 ..." 버튼을
  • 당신의 자식 URI 붙여 넣기 및 프로토콜 선택 SSH를 -> "마침"을 클릭합니다
  • 이제 "저장 및 푸시"를 클릭하면 이제 암호 프롬프트가 표시됩니다.-> 여기에 공개 키 암호를 입력합니다 (공개 키에 대한 암호를 설정했거나 설정해야 함)-> "확인"을 클릭합니다.
  • 이제 "Pushed to YourRepository -origin" 이라는 확인 창이 표시됩니다 .- > "OK"를 클릭합니다.
  • 업스트림으로 푸시 하지만 이번에 는 "구성된 원격 저장소" 를 대상 Git 저장소로 사용합니다.
  • 가서 잘 얻은 커피 한 잔을 가져 오세요!

1

야간 빌드로 플러그인을 업데이트했습니다. http://www.eclipse.org/egit/download/

업데이트로 나를 위해 일했습니다. (Eclipse Helios, Mac OS X)


. 그것은 여전히 나를 위해 작동하지 않습니다 :( 내가이 게시 이후 두 번 업그레이드 된 될 수있다 GNU / 리눅스에서 버그
tehsis

1

git + ssh 대신 ssh 프로토콜을 사용하려고 했습니까? 공식 문서에서 git + ssh를 사용하도록 지시하더라도 동일한 문제가 발생하여 해결되었습니다.


1

Windows에서 GIT_SSHmsys git과 함께 제공되는 openssh 설정 이 작동하지 않았습니다 (Eclipse가 커밋 중에 중단됨). TortoisePlink로 설정하면 문제가 해결되었습니다 (원래 plink도 작동 할 것 같습니다). 추가 된 보너스는 이제 Eclipse가 pageant에 저장된 키를 사용한다는 것입니다.


1

https 를 프로토콜로 선택한 다음 github 사용자 이름과 비밀번호를 추가 하여 문제를 해결했습니다.


1

저장소가있는 GIT보기에서 다음과 같은 구조를 볼 수 있습니다.

  • 가지
  • 태그
  • 참조
  • 리모컨
  • 기타...

원격을 클릭하고 저장소의 URL을 마우스 오른쪽 버튼으로 클릭 한 다음 '인증 정보 변경'을 선택합니다.



0

구성 문제로 보이는 것과 동일한 문제가 발생했습니다. github mac osx 앱은 github_rsa라는 SSH 개인 키를 만들었습니다.

Eclipse에서 Window > Preferences > Network Connections > SSH2

일반 탭에서 SSH2 홈을 볼 수 있습니다. /Users/<you username>/.ssh 아마도 id_dsa, id_rsa가 개인 키로 정의 된 것을 볼 수있을 것입니다.

'개인 키 추가'를 클릭하고 위치한 github_rsa를 선택하십시오. /Users/<you username>/.ssh


0

PEM 파일이있는 경우 : Eclipse에서 Window> Preferences> Network Connections> SSH2 로 이동 한 다음 PEM 파일 경로를 "Private keys"에 추가하면 문제가 해결됩니다.


0

나도 Google 코드를 수정하고 동일한 오류가 발생하면 공개하고 싶었습니다. 시작 비디오로 했지만 저장 및 게시시 오류가 발생했습니다. 나는 이것에 관한 몇 가지 질문을 보았다. 일반적으로 권한에 문제가 없으며 일부는 Linux 사용자이기 때문에 일부는 Windows 사용자이며 가장 운이 좋은 사용자입니다.

모바일 개발 용 Mac이 있으며이 문제를 자주 해결합니다. 이 문제의 원인은 "플랫폼 독립적"솔루션으로, Mac에서는 충분히 신경 쓰지 않고 인증서, .pem 파일 등이 저장된 키 체인에 액세스 할 수 없습니다.

내가 원했던 것은 환경 설정이나 명령 줄을 만들지 않고 일반 사용자처럼 단순한 GUI 기반 클릭 만하는 것입니다.

절반은 Eclipse Git 플러그인으로, 두 번째는 Mac Github 로 푸시 (push to Github)

좋고 쉬운 :)

내가 그것을 배우기 시작한다면 그 기본 appp로 모든 것을 할 수 있습니다. 그저 그로부터 푸시 기능이 필요합니다.

Mac 사용자에게 한 번 도움이되기를 바랍니다.


0

github에서 2 단계 인증을 설정하면 Eclipse가 Github에 연결할 수 없다는 사실을 발견했습니다. github의 2 단계 인증을 사용하려면 SMS에서 번호를 입력해야하기 때문입니다. 이 정보가 없습니다).

이것이 귀하의 시나리오라면 github에서 2 단계 인증을 비활성화하고 도움이되는지 확인해보십시오.


0

기존 ssh 키의 경우 Eclipse Juno 3.8의 버그라고 생각합니다.

제가 한:

1) 다음으로 이동하여 기존 키를로드합니다. 창> 환경 설정> "검색 ssh"> 키 관리 탭> 기존 키로드> 이미 가지고있는 개인 키 선택

2) 개인 키 저장 버튼을 클릭하여 해당 키를 저장합니다 . 이름을 id_dsa_github로 지정 하겠습니다.

3) 이제 밀고 당기기가 작동하는지 확인하십시오. 그것은해야한다.

4) 이제 일반 탭에서 개인 키 id_dsa_github를 제거하고 개인 키 추가 버튼을 클릭하여 이전 개인 키를 추가하십시오.

이제 갈 수 있습니다. EGit에서 등록 하기 위해 모든 작업을 수행하는 데 적어도 한 번은 걸리는 것 같습니다.


0

같은 문제가 발생합니다.

내 자격 증명 및 인증과 관련이 있다고 생각했습니다.

그런 다음 마침내 내가 구성한 URI가 HTTP 변형이 아니라는 것을 깨달았습니다.

HTTP 구성을 사용하여 Git의 SSH URI에 푸시하려고했습니다.

에서 URL 확인

Git Perspective> Remotes> Origin> Configure Fetch> Change> prtocal이 HTTPS이고 URL이 https 버전인지 확인합니다 .


0

콘솔을 사용하여 저장소를 밀거나 당길 수는 있지만 Eclipse에서는 사용할 수 없습니다. 제 경우에는 eclipse가 SSH 개인 키를 읽을 수없는 것 같습니다.

-----BEGIN OPENSSH PRIVATE KEY-----

그리고 내 동료의 키가 다음으로 시작되는 것을 발견했습니다.

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED

나는 현재 eclipse가이 새로운 종류의 키 (OPENSSH PRIVATE KEY)를 취할 수 없다고 생각합니다.

나는 그것을 해결했다 : 명령을 사용하여 ssh 키를 다시 생성하십시오.

ssh-keygen -m PEM -t rsa -b 2048

이것은 이전 방법을 사용하여 키를 생성하므로 헤더로 시작합니다.

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED

다음에 대한 자세한 정보를 참조하십시오.

https://github.com/duplicati/duplicati/issues/3360

그런 다음 환경 설정-> 네트워크 연결-> SSH2를 사용하여 eclilpse에서 키를 다시로드 할 수 있습니다. "개인 키 추가"를 클릭합니다 (이미 개인 키 목록에 이름이 표시되어 있어도 개인 키를 선택합니다. 재 장전)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.