개인 키 비밀번호(id_rsa)를 잊어버리려면 일반적으로 다음을 실행합니다.
ssh-add -D # to forget all loaded identities
ssh-add -d # to forget primary identity ($HOME/.ssh/id_rsa)
이제 macOS Sierra v10.12.1을 사용하면 다음 오류가 발생합니다.
$ ssh-add -D
All identities removed.
$ ssh-add -d
Could not remove identity "/Users/user/.ssh/id_rsa": agent refused operation
Could not remove identity "/Users/user/.ssh/id_dsa": agent refused operation
나는 운없이 구글을 검색했다!
답변1
시에라와 나도 같은 문제를 안고 있다. 삭제 id_rsa
한 다음 $HOME/.ssh/
다시 시작해 보세요(저도 id_rsa.pub
삭제했습니다. 따라서 두 개의 키가사적인그리고사람들). 그것은 내 문제를 해결했습니다.
답변2
내 경우에는 약간 다른 문제가 발생했습니다. ssh-add -D
프록시를 호출하면 성공하고 응답하는 것처럼 보이지만 All identities removed.
실제로 프록시 키를 나열할 때 ssh-add -l
원치 않는 키가 계속 나열되며 물론 프록시를 사용하여 원격 호스트에 인증하려고 하면 핀을 사용하라는 메시지가 표시됩니다. 원하지 않는 키에 암호를 설정하도록 구성한 프로그램입니다. 짜증 나는.
문제의 원인은 내 gpg-agent 데몬이 다음 경로 아래의 파일에 키를 캐시했기 때문입니다 ~/.gnupg/sshcontrol
.
$ cat ~/.gnupg/sshcontrol
# List of allowed ssh keys. Only keys present in this file are used
# in the SSH protocol. The ssh-add tool may add new entries to this
# file to enable them; you may also add them manually. Comment
# lines, like this one, as well as empty lines are ignored. Lines do
# have a certain length limit but this is not serious limitation as
# the format of the entries is fixed and checked by gpg-agent. A
# non-comment line starts with optional white spaces, followed by the
# keygrip of the key given as 40 hex digits, optionally followed by a
# caching TTL in seconds, and another optional field for arbitrary
# flags. Prepend the keygrip with an '!' mark to disable it.
# RSA key added on: 2021-06-03 16:23:25
# Fingerprints: MD5:c1:[elided]:24
# SHA256:+Mj[elided]E4
21[elided]C9 0
# Ed25519 key added on: 2021-06-03 22:11:36
# Fingerprints: MD5:[elided]:24:da
# SHA256:EL[elided]Zs
E0[elided]47 0
이 키를 제거하면 ~/.gnupg/sshcontrol
더 이상 사용하지 않는 키에 대한 비밀번호를 묻는 에이전트 없이 gpg-agent를 사용하여 원격 호스트에 인증할 수 있게 되었습니다.
답변3
참조된 ID가 추가된 ID와 다를 때 이 오류가 발생했습니다. 이 -d
옵션은 특정 키를 삭제합니다. 키가 로드된 적이 없으면 삭제가 거부됩니다. 로드된 키를 확인 ssh-add -l
하고 조표를 확인할 수 있습니다.ssh-keygen -lf <path-to-private-key>
답변4
Ubuntu 18.04에 여전히 이 버그가 있음을 발견했습니다.
큰 노력 없이 ssh-agent에서 원치 않는 키를 제거하는 간단한 방법은 다음과 같습니다.
삭제하려는 키를 찾으세요
ssh-add -l 2048 SHA256:qzJYF7AJAJsLsJn7ZFPcJ+w78ZJVoPZI9TzXCq2cf5 .ssh/bad-key.pem (RSA)
~/.ssh 디렉터리로 이동하여 "disabled"라는 이름의 하위 디렉터리를 만듭니다.
cd ~/.ssh mkdir disabled
비활성화할 키를 이 디렉터리로 이동합니다.
mv bad-key.pem disabled/
그게 다야. 이 키는 더 이상 ssh-agent에서 사용할 수 없지만 필요한 경우 계속 보유하고 다시 추가할 수 있습니다.