Github 사용 권한 거부: SSH add 에이전트에 ID가 없습니다.
GitHub에 접속하는 것은 이번이 처음이고 콘솔을 사용한 경험이 없습니다.나는 Bash를 사용하는 맥북에 있습니다.GitHub에 액세스하려고 하면 다음과 같은 메시지가 나타납니다.
git clone git@github.com:dhulihan/league-of-legends-data-scraper.git
Cloning into 'league-of-legends-data-scraper'...
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
나는 Github 페이지에서 허가가 거부되는 것에 대한 지침을 따르려고 노력했습니다.
를 할 때ssh -vT git@github.com
다음을 확인할 수 있습니다.
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to github.com [192.30.252.129] port 22.
debug1: Connection established.
debug1: identity file /Users/XXXX/.ssh/id_rsa type -1
debug1: identity file /Users/XXXX/.ssh/id_rsa-cert type -1
debug1: identity file /Users/XXXX/.ssh/id_dsa type -1
debug1: identity file /Users/XXXX/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version libssh-0.6.0
debug1: no match: libssh-0.6.0
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-sha1 none
debug1: kex: client->server aes128-ctr hmac-sha1 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Server host key: RSA 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48
debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /Users/XXXX/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /Users/XXXX/.ssh/id_rsa
debug1: Trying private key: /Users/XXXX/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey).
다음 분.eval "$(ssh-agent -s)"
2314를 반환하지만 " pid 2314"는 반환되지 않습니다.ssh-add -l
"에이전트에 ID가 없습니다."를 반환합니다.
그리고 그것이 제가 갇혀있는 곳입니다.
이 답변의 전체 세부 정보입니다.
요약하자면, 언제ssh-add -l
"가 없습니다합니다. 즉, "에이전트에게 ID가 없습니다."에서 입니다. 이는 에서 사용되는 키를 의미합니다.ssh
( 됨)~/.ssh/id_rsa
,~/.ssh/id_dsa
, 가)락누등알되었거나, 수없니다습.ssh-agent
인증 에이전트이거나 해당 권한이 잘못 설정된 경우(예: 전역 쓰기 가능).
키를 하지 않은 에는 키를 합니다.ssh-keygen -t rsa
,그리고나서ssh-add
추가합니다.
하지만 이를 알 수 ssh-agent
폴더에 로), (으)를 사용합니다.ssh-add /path/to/my-non-standard-ssh-folder/id_rsa
추가합니다.
문제가 있는 경우 이 답변을 참조하십시오.ssh-add
또는ssh-agent
.
사용해 보십시오.
ssh-add ~/.ssh/id_rsa
나를 위해 일했습니다.
macOS 시에라 & 하이 시에라 & 카탈리나에 대한 2019년 답변:
PS: 대부분의 다른 답변은 새 ssh 키를 생성하도록 할 것입니다... 하지만 그럴 필요는 없습니다:)
https://openradar.appspot.com/27348363, macOS/OS X에서 자세히 설명한 바와 같이 요세미티는 명령에 의해 추가된 SSH 키를 기억하는 데 사용되었습니다.ssh-add -K <key>
작동하기 위해 제가 수행해야 했던 4가지 단계는 다음과 같습니다.
1: ssh-add ~/.ssh/PATH_TO_YOUR_SSH_PRIVATE_KEY (e.g. ~/.ssh/id_rsa)
2: 다음을 추가합니다.~/.ssh/config
Host *
AddKeysToAgent yes
UseKeychain yes
IdentityFile PATH_TO_YOUR_SSH_PRIVATE_KEY (e.g. ~/.ssh/id_rsa)
3: osxkeychain 도우미를 사용하는 모든 gitconfig 항목을 제거해야 합니다.
https://github.com/gregory/dotfiles/commit/e38000527fb1a82b577f2dcf685aeefd3b78a609#diff-6cb0f77b38346e0fed47293bdc6430c6L48
4: 터미널을 다시 시작하여 터미널을 적용합니다.
저는 같은 문제에 잠시 갇혀 있다가 결국 해결했습니다.
내 문제:푸시를 실행할 수 없습니다.리모컨을 확인하고 볼 수 있습니다(사용).git remote -v
했을 때), 하만지내실을했때행가때▁),을하▁when.git push origin master
반됨환:Permission denied (publickey). fatal: Could not read from remote repository.
등등.
해결 방법:
- 다음을 사용하여 키를 생성했습니다.
ssh-keygen -t rsa
키 파일의 이름을 입력하는 것은 유용하지 않습니다(요청 시). - 그런 다음 키를 추가할 수 있습니다.
ssh-add /Users/federico/.ssh/id_rsa
으로 성적으돌아를 반환했습니다.Identity added: /Users/myname/.ssh/id_rsa (/Users/myname/.ssh/id_rsa)
- 나는 이 도움말 페이지를 사용하여 SSH 키를 github에 추가했습니다.
- denied key' 페이지의 모든 해 본 Github의 'Permission denied public key'만 할 수 .
ssh-add -l
명령이 작동했습니다. / 유용해 보였습니다(이전 단계를 실행한 후). 성공적으로 키를 반환했습니다.마지막 단계는 GitHub 페이지에서 공개 키를 확인하는 위치를 보여줍니다.이 명령은 모든 키를 확인하는 데 도움이 됩니다.ls -al ~/.ssh
.
그 후 푸시 명령이 작동했습니다!
이것이 도움이 되길 바랍니다! 모두에게 행운이 있기를 바랍니다.
다음 명령을 실행합니다.
ssh-keygen -t rsa
ssh-add /Users/*yourUserNameHere*/.ssh/id_rsa**
pbcopy < ~/.ssh/id_rsa.pub**
Github 계정으로 이동합니다. https://github.com/settings/profile
클릭: SSH 및 GPG 키
새 SSH 키를 붙여넣습니다.
SSH 키 추가
알았어!
tl;dr
ssh-add # no parameter
# Identity added: /home/<user>/.ssh/id_rsa (user@host)
추가 판독치
ssh - user - 폴더에 필요한 두 개의 파일:
ls ~/.ssh
id_rsa id_rsa.pub
명령어를 합니다.ssh-keygen
이제 ssh-agent를 시작합니다.
eval `ssh-agent -s`
확인
ssh-add -l
# voila:
2048 SHA256:<key one> user@host (RSA)
보너스
신문을 .SHA256
위에터깃와함께허브부서▁with▁the▁above▁from께함▁g와브허.SHA256
사용자 설정에서 -> SSH 키를 누릅니다.키가 같은 경우 키를 사용하여 Github에서 푸시/풀할 수 있어야 합니다.
당신은 디렉토리에 .
mac 을 사용합니다.
cd ~/.ssh
은 ssh .
여기에서 모든 프로젝트와 관련된 모든 SSH 키/파일을 찾을 수 있습니다.이제 다음 명령을 입력하여 사용 가능한 ssh 키가 있는지 여부를 표시합니다.
ls
은 사용 한 모든 ssh를 입니다. 제 에는 두 의 ssh와 SSH, 이제 두 는 개 에 였 습 니 경 우 다 니 것 를 사 입 것 은 용 가 줄 보 모 능 여 한 든 니 다 ▁this 이 ▁two ▁were습 , 였 개
이제 SSH를 추가하려면 에이전트를 시작해야 합니다. 명령을 따릅니다.
eval "$(ssh-agent -s)"
이제 마지막이지만 다음 명령에 따라 이 에이전트 유형에 SSH를 추가합니다.
ssh-add ~/.ssh/your-ssh
교체하다
를 두 번째 의 목록에서 . 파일 이름은 SSH 파일 이름입니다.
ls command
이로 인해 모든 새 터미널에서 에이전트 ID가 다를 수 있습니다.에이전트의 개인 키를 추가해야 합니다.
$ ssh-add <path to your private key>
이것은 저에게 효과가 있었습니다.
chmod 700 .ssh chmod 600 .ssh/id_rsa chmod 644 .ssh/id_rsa.pub
그런 다음 다음을 입력합니다.ssh-add ~/.ssh/id_rsa
위 답변의 요지와 함께 Mac Big Sur의 경우 다음 단계가 저에게 도움이 됩니다.
$ ssh-keygen -q -t rsa -N 'password' -f ~/.ssh/id_rsa
$ ssh-add ~/.ssh/id_rsa
그리고 다음 지침에 따라 git hub에 ssh 공개 키를 추가했습니다.
모든 것이 잘 진행되면 다음과 같은 결과를 얻을 수 있을 것입니다.
$ ssh -T git@github.com
Hi user_name! You've successfully authenticated,...
한 가지 추가적인 요소는 일반적으로 .ssh 폴더가 Mac OS X /Users/의 루트 폴더에 생성된다는 것입니다.다른 폴더에서 ssh -vT git@github.com 을 사용하려고 하면 올바른 키를 추가했더라도 오류가 표시됩니다.
성공적으로 인증하려면 현재 폴더에서 키를 다시 추가(ssh-add 'id_rsa에 대한 올바른 경로')해야 합니다(키를 Git에 이미 업로드했다고 가정).
백업에서 하드 드라이브를 복원한 후 이 문제가 발생했습니다.
내 문제:(git remote -v를 사용하여) 내 리모컨을 확인하고 볼 수 있었지만 git push origin 마스터를 실행했을 때 권한 거부(공개 키)가 반환되었습니다.치명적: 원격 리포지토리에서 읽을 수 없습니다.
는 이미 와 SSH 키를 있었고 Terminal)을 했습니다.ssh-add /path/to/my-ssh-folder/id_rsa
제되었지만, 않고 한 오류가 ID 추가에 성공했지만 여전히 푸시가 되지 않고 동일한 오류가 발생했습니다.새 키를 생성하는 것은 AWS의 다른 매우 안전한 권한과 연결되어 있기 때문에 저에게는 좋지 않은 생각이었습니다.
키와 제 Github 프로필 사이의 연결이 끊어진 것으로 밝혀졌습니다.
해결책 : 프로파일 > 설정 > SSH 및 GPG 키에서 키를 Github에 다시 추가하면 문제가 해결되었습니다.
또한: 제 계정에는 2단계 인증이 설정되어 있었습니다.이 경우 터미널에서 자격 증명을 요청할 경우 Github 암호가 아닌 사용자 이름을 사용합니다.2단계 인증을 위해서는 인증 코드를 사용해야 합니다(나의 경우, 이것은 내 전화기에서 Authy에 의해 생성되었으며, pw를 위해 터미널에 복사해야 했습니다).
Linux 또는 Windows를 사용하는 경우 키를 입력할 터미널 또는 cmdin 디렉토리를 엽니다.개인 키-공개 키 쌍 만들기
$ ssh-keygen -t ed25519 -C "your_email@example.com"
Ed25519 알고리즘을 지원하지 않는 레거시 시스템을 사용하는 경우 다음을 사용합니다.
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
공용/개인 알고리즘 키 쌍을 생성하는 중입니다.키를 저장할 파일을 입력합니다(/c/Users/YOU/.ssh/id_ALGORITH). [개인 공용 키 파일로 사용할 이름을 입력합니다.]
암호 입력(암호 구문 없음의 경우 비어 있음):[암호 구문을 입력하거나 암호 구문 없이 입력]
동일한 암호를 다시 입력합니다. [암호를 입력하거나 암호 없이 입력]
이제 Linux에서
$ sudo cp <filename without .pub ending> ~/.ssh
에서는 이 filename .만 하면 .C:\Users\your_username\.ssh
그리고 나서.
$ ssh-add ~/.ssh/<filename without .pub ending>
지금은 효과가 있을지도 몰라요!
오랫동안 고심한 끝에 마침내 Windows에서 이 문제를 해결할 수 있었습니다. 저에게 사용자 환경 변수 GIT_SSH는 다음을 가리키도록 설정되었습니다.
"C:\프로그램 파일(x86)\"WinScp\PuTTY\plink.exe"
WinScp와 함께 설치되었습니다.git-scm "C:"와 함께 제공되는 기본 ssh.exe를 사용하도록 포인팅을 변경했습니다.\Program Files\Git\usr\bin\ssh.exe"
비트 버킷에 대한 단계:
새 키를 생성하지 않으려면 SKIP ssh-keygen
ssh-keygen -t rsa
공개 키를 클립보드에 복사합니다.
clip < ~/.ssh/id_rsa.pub
비트 버킷에 로그인: 프로필 보기로 이동 -> 설정 -> SSH 키(보안 탭에서) 키 추가를 클릭하고, 상자에 키를 붙여넣고, 설명 제목을 추가합니다.
Git Bash로 돌아가기:
ssh-add -l
다음과 같은 메시지가 표시됩니다.
2048 SHA256:5zabdekjjjaalajafjLIa3Gl/k832A /c/Users/username/.ssh/id_rsa (RSA)
이제:git pull
효과가 있어야 합니다.
이것은 저에게도 효과가 있었습니다: chmod 700.ssh chmod 600.ssh/id_rsachmod 644.ssh/id_rsa.pub
그런 다음 ssh-add ~/.ssh/id_rsa를 입력합니다.
때때로 확인하는 것이 유용할 수 있습니다.~/.ssh/config
이렇게 보여야 합니다.
Host github.com
IdentityFile ~/.ssh/id_rsa
id_rsa
다른 키를 연결한 경우 다를 수 있습니다.
언급URL : https://stackoverflow.com/questions/26505980/github-permission-denied-ssh-add-agent-has-no-identities
'source' 카테고리의 다른 글
String은 어떻게 작동합니까?스위프트의 인덱스 작업 (0) | 2023.05.09 |
---|---|
메이븐 프로젝트 업데이트 오류 해결 방법지원되지 않는 IClasspathEntrykind=4? (0) | 2023.05.09 |
WPF 검증에서 ValidateOnNotifyDataErrors 및 ValidateOnDataErrors와 NotifyOnValidationErrors의 차이점은 무엇입니까? (0) | 2023.05.09 |
개체를 삭제하고 null로 설정해야 합니까? (0) | 2023.05.09 |
왜 그럴까요?NET은 은행원 반올림을 기본값으로 사용합니까? (0) | 2023.05.09 |