SSH 비밀번호로 보호된 개인 키가 계속 표시됩니다.

SSH 비밀번호로 보호된 개인 키가 계속 표시됩니다.

실제로 비밀번호를 입력하지 않고는 비밀번호로 보호된 개인 키 파일의 내용을 보는 것이 불가능하다고 생각합니다.

하지만 놀랍게도 내 개인 키 파일이 비밀번호로 잘 보호되어 있음에도 불구하고 여전히 그 내용을 볼 수 있습니다. 속도:

$ ssh-keygen -t ed25519 -o -a 100

그런 다음 비밀번호를 입력합니다. 기다릴게. 프로세스가 완료된 후 cat다음과 같이 수행합니다.

$ cat id_ed25519

놀랍게도 내 개인 키가 명확하게 보입니다.

비밀번호로 잘 보호되어 있는지 알고 싶습니다. 그래서 저는 다음을 수행했습니다.

$ ssh-keygen -p -f ./id_ed25519

사실 "이전" 비밀번호를 입력해야 했습니다. 그렇지 않으면 인식하지 못합니다!

내가 뭐 놓친 거 없니? 내 이해가 맞다면 내 개인 키 파일이 암호화되어 있으면 텍스트 편집기에서 그 내용을 볼 수 없어야겠죠? 나는 완전히 혼란스러워요.

시스템: MacOS Le Capitan, 홈브류

답변1

암호화 키(비밀번호로 보호됨)와 비암호화 키에는 차이가 있습니다. 모든 키는 여전히 일반 텍스트 파일입니다. 아래에서는 비밀번호 없이 키를 생성한 다음 비밀번호를 추가하여 이를 보호했습니다. 디스크에 있는 파일의 내용이 어떻게 다른지 확인할 수 있습니다.

$ ssh-keygen -f ./id_example
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in ./id_example.
Your public key has been saved in ./id_example.pub.
The key fingerprint is:
SHA256:q1soNjAdOS7sEu/268wb/F0ULMB7a2tmr/n+089Ksu0 user@host
The key's randomart image is:
+---[RSA 2048]----+
|     ..          |
|     ... .       |
|    +  .. o      |
| . o o. .. .     |
|. = o  .S..      |
| + =   .oo       |
|. o * ..o.. ...  |
| o.+ = +=o  .=.. |
| ..oBo+=+=+.ooEoo|
+----[SHA256]-----+
$ cat id_example
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEArxyeUk2lJ+pkW2bHXJNFUfWz1z3glvOsHSUxUQjx8leKIKRu
[hash truncated fro brevity]
hGWfADUrb5nV5Do/mcjBHQDCjrfCpzPHkNrTaZLs4JDxdhX4G0s=
-----END RSA PRIVATE KEY-----
$ ssh-keygen -p -f ./id_example
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved with the new passphrase.
$ cat id_example
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-128-CBC,764EDE56E9A89905CD447F1DEF5ED1AB

uVjfs7qu4a7RMvycvpvtJA0UUG5UtkZ+eY6ppmxL7oA/54qM/7S5bvgOT1hM0wL+
[hash truncated for brevity]
FHCAmqC29+FPHxqG19tII7ndYYU6YDpCQHjUN0TaAI7ikwSmjTiNBfXEZodaHblr
-----END RSA PRIVATE KEY-----

실제로열쇠동일하지만 핵심 대리인은 다음을 수행할 수 없습니다.사용비밀번호로 잠금을 해제할 때까지 키를 누른 후. 어쨌든, 나는 파일을 소유하고 있으며 그 파일은 디스크에 존재해야 합니다.할 수 있는표시(예: 사용 cat).

또한 수정된 키를 표시하면 암호화되었음을 명확하게 표시하는 것을 볼 수 있습니다.

답변2

개인 키 파일의 내용은 언제든지 "볼 수" 있지만 암호화되어 있으므로 왜곡된 것처럼 보일 것입니다. 꼭 확인하셔야 할 것은(즉, 귀하의 사용자 ID)가 이를 볼 수 있습니다. 이렇게 하려면 다음이 필요합니다.

chmod go-rwx ./id_ed25519

또한 개인 키를 자체 디렉토리에 저장하여 해당 디렉토리도 chmod할 수 있도록 할 수 있습니다.

관련 정보