SSH 에이전트가 사용 중인 키를 어떻게 참조하는지 잘 모르겠습니다.
다음 주석이 포함된 4개의 SSH 키가 있습니다.
$ tail -n +1 *.pub
==> github_id_ed25519.pub <==
ssh-ed25519 ... mygithubusername@myhost
==> id_ecdsa.pub <==
ecdsa-sha2-nistp521 ... me@myhost
==> id_ed25519.pub <==
ssh-ed25519 ... me@myhost
==> id_rsa.pub <==
ssh-rsa ... me@myhost
SSH 에이전트에 다음 키를 추가했습니다(확인 -c
옵션 사용).
$ ssh-add -c github_id_ed25519 id_ecdsa id_ed25519 id_rsa
Enter passphrase for github_id_ed25519 (will confirm each use):
Identity added: github_id_ed25519 (mygithubusername)
The user must confirm each use of the key
Identity added: id_ecdsa (id_ecdsa)
The user must confirm each use of the key
Identity added: id_ed25519 (me@myhost)
The user must confirm each use of the key
Identity added: id_rsa (id_rsa)
The user must confirm each use of the key
추가된 모든 키를 나열했습니다.
$ ssh-add -l
256 SHA256:... mygithubusername (ED25519)
521 SHA256:... id_ecdsa (ECDSA)
256 SHA256:... me@myhost (ED25519)
4096 SHA256:... id_rsa (RSA)
SSH 에이전트는 키를 참조하는 데 사용되는 이름을 어디서 얻나요?
다음을 사용하는 것 같습니다:
- 키 파일의 전체 설명(키 하나에 대해)
- 키 파일의 주석 일부(키용)
- 키 파일의 파일 이름(두 키 모두)
이것을 이해하기 어렵습니다. 키의 파일 이름을 사용하는 것이 가장 간단하지만 지금은 엉망입니다. 현재 SSH를 사용하여 로그인하고 확인 대화 상자를 받을 때마다 실제로 어떤 키를 사용하려고 하는지 파악하기가 어렵습니다.
답변1
ssh-add
개인 키 파일의 설명을 읽어보세요. 실패하면 추가 프롬프트에 대한 설명으로 파일 이름을 사용합니다.
~에서SSH-add.c:파일 추가() :
if (comment == NULL || *comment == '\0')
comment = xstrdup(filename);
파일 이름을 주석으로 사용하는 ID에는 수동으로 편집하더라도 키와 함께 원래 저장된 주석이 없는 것으로 의심됩니다.사람들키 파일은 나중에 생성됩니다. 매뉴얼 ssh-keygen
페이지에는 주석을 변경하거나 추가할 수 없다는 내용이 나와 있습니다.사적인더 이상 사용되지 않는 키 형식의 키 파일:
-c Requests changing the comment in the private and public key files. This
operation is only supported for RSA1 keys.