SSH 암호를 확인 / 확인 / 테스트 / 확인하려면 어떻게합니까?


297

SSH 키의 암호를 잊어 버린 것 같지만 그 직감이 있습니다. 내가 맞는지 어떻게 확인합니까?


5
passphrase암호 는 없습니다.)
Timo

답변:


123

SSH 키 비밀번호를 SSH 에이전트에로드하여 SSH 키 비밀번호 문구를 확인할 수 있습니다. 와 OpenSSH의 이은을 통해 이루어집니다 ssh-add.

완료되면를 실행하여 터미널에서 SSH 암호를 언로드하십시오 ssh-add -d.


13
확인이 끝나면ssh-add -d
Kache

1
ssh-add에는 시스템에 대한 관리자 권한이 필요합니다. "인증 에이전트에 대한 연결을 열 수 없습니다."라는 오류가 발생합니다.
IgorGanapolsky

@IgorGanapolsky : 아니요, 실행중인 인증 에이전트가 필요합니다. 시작 스크립트 나 옵션을 수정하여 시작 스크립트 나 옵션을 불러 오십시오.
Ignacio Vazquez-Abrams

20
Rob의 답변 이 정답입니다.
mgarciaisaia

경우 는 SELinux를 사용하여 할 일이, 당신은 또한 홈 디렉토리 및 스푸핑 파일의 내용을 확인 할 수 있습니다! 이 간단한 수정 사항을 사용할 수있을만큼 운이 좋았습니다. # restorecon -R -v /home/user이것이 문제인지 확인하려면 (앞의 명령으로 문제가 발생하지는 않지만) $ ls -lZR <home_dir>컨텍스트를 검사하는 데 사용할 수 있습니다 . user_home_t홈 디렉토리와 디렉토리 및 파일 ssh_home_t에 표시되지 않으면이 를 사용 하여 수정하십시오. .sshauthorized_keysrestorecon
fbicknel

523

ssh-keygen -y

ssh-keygen -y 암호 구를 묻는 메시지가 표시됩니다 (있는 경우).

올바른 암호     를 입력하면 관련 공개 키가 표시됩니다. 잘못된 암호
    를 입력하면 이 표시됩니다 .     키에 암호 가 없으면 암호를 입력 하라는 메시지 가 표시 되지 않으며 관련 공개 키가 즉시 표시됩니다.load failed

예를 들어

비밀번호 문구가 있거나없는 새 공개 / 개인 키 쌍을 작성하십시오.

$ ssh-keygen -f /tmp/my_key
...

이제 키 페어에 액세스 할 수 있는지 확인하십시오.

$ ssh-keygen -y -f /tmp/my_key


다음은 출력을 보여주는 확장 된 예입니다.

비밀번호 문구가 있거나없는 새 공개 / 개인 키 쌍을 작성하십시오.

$ ssh-keygen -f /tmp/my_key
Generating public/private rsa key pair.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /tmp/my_key.
Your public key has been saved in /tmp/my_key.pub.
The key fingerprint is:
de:24:1b:64:06:43:ca:76:ba:81:e5:f2:59:3b:81:fe rob@Robs-MacBook-Pro.local
The key's randomart image is:
+--[ RSA 2048]----+
|     .+          |
|   . . o         |
|    = . +        |
|   = + +         |
|  o = o S .      |
|   + = + *       |
|    = o o .      |
|     . .         |
|      E          |
+-----------------+

올바른 암호를 입력하여 키 페어에 액세스하십시오. 공개 키가 표시되고 종료 상태 ( $?)는 0성공을 나타냅니다.

$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBJhVYDYxXOvcQw0iJTPY64anbwSyzI58hht6xCGJ2gzGUJDIsr1NDQsclka6s0J9TNhUEBBzKvh9nTAYibXwwhIqBwJ6UwWIfA3HY13WS161CUpuKv2A/PrfK0wLFBDBlwP6WjwJNfi4NwxA21GUS/Vcm/SuMwaFid9bM2Ap4wZIahx2fxyJhmHugGUFF9qYI4yRJchaVj7TxEmquCXgVf4RVWnOSs9/MTH8YvH+wHP4WmUzsDI+uaF1SpCyQ1DpazzPWAQPgZv9R8ihOrItLXC1W6TPJkt1CLr/YFpz6vapdola8cRw6g/jTYms00Yxf2hn0/o8ORpQ9qBpcAjJN
$ echo $?
0

잘못된 암호를 입력하여 키 페어에 액세스하십시오. "로드 실패"오류 메시지가 표시되고 (OS에 따라 메시지가 다를 수 있음) 종료 상태 ( $?)가 1오류를 나타냅니다.

$ ssh-keygen -y -f /tmp/my_key
Enter passphrase:
load failed
$ echo $?
1

암호가없는 키 페어에 액세스를 시도하십시오. 암호 문구에 대한 프롬프트가없고 공개 키가 표시되며 종료 상태 ( $?)는 0성공을 나타냅니다.

$ ssh-keygen -y -f /tmp/my_key_with_no_passphrase
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLinxx9T4HE6Brw2CvFacvFrYcOSoQUmwL4Cld4enpg8vEiN8DB2ygrhFtKVo0qMAiGWyqz9gXweXhdmAIsVXqhOJIQvD8FqddA/SMgqM++2M7GxgH68N+0V+ih7EUqf8Hb2PIeubhkQJQGzB3FjYkvRLZqE/oC1Q5nL4B1L1zDQYPSnQKneaRNG/NGIaoVwsy6gcCZeqKHywsXBOHLF4F5nf/JKqfS6ojStvzajf0eyQcUMDVhdxTN/hIfEN/HdYbOxHtwDoerv+9f6h2OUxZny1vRNivZxTa+9Qzcet4tkZWibgLmqRyFeTcWh+nOJn7K3puFB2kKoJ10q31Tq19
$ echo $?
0

2
비밀번호가 없으면 연결된 공개 키만 인쇄합니다.
Kyrremann

1
감사합니다 @Kyrremann! 나는 그것을 반영하기 위해 대답을 업데이트했습니다.
Rob Bednark,

ssh-keygen -y키 파일을 요청하고 예상대로 클릭 리턴시 기본값을 제공합니다.
Timo

ssh-keygen -yssh 키의 암호를 확인하는 데 사용 했습니다. 우분투가 엄청나게 느려진 것을 제외하고는 잘 작동했습니다. CPU 사용량이 100 % 인 동안 대부분의 프로그램은 1 분 이상에 시작될 수 있습니다. 랩톱을 다시 시작한 후 데스크톱을 보는 데 몇 분이 걸리기 때문에 거의 로그인 할 수 없었습니다. 마지막으로 Ask Ubuntu 에서이 문제를 발견 했습니다 . gnome-keyring-daemon문제를 해결하기 위해 시작해야했습니다 .
Adam Fónagy

2

@RobBednark의 솔루션을 특정 Windows + PuTTY 시나리오로 확장하면 다음과 같이 할 수 있습니다.

  1. PuTTYgen으로 SSH 키 페어를 생성하고 (Windows에서 SSH 키를 수동으로 생성 한 후) PPK 파일로 저장하십시오.

  2. Windows 탐색기의 상황에 맞는 메뉴에서 PuTTYgen으로 편집을 선택하십시오. 암호를 묻는 메시지가 나타납니다.

틀린 암호를 입력하면 다시 묻습니다.

입력하려면 PPK 파일이 들어있는 폴더에서 다음 명령을 사용하십시오 puttygen private-key.ppk -y.


0

"ssh-keygen -p"를 사용하십시오. "-f"를 추가 할 수 있습니다

이전 비밀번호를 입력하라는 메시지가 표시됩니다. 암호가 정확하면 새 암호를 입력하라는 메시지가 표시됩니다. 이전 암호가 틀리면 "키 <...>을 (를)로드하지 못했습니다"가 표시됩니다.


-1

암호 문구가 SSH 키의 잠금을 해제하는 것이며에는 ssh-agent없지만 sshd (SSH 데몬)가 시스템에 설치되어있는 경우 다음을 수행하십시오.

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;
ssh localhost -i ~/.ssh/id_rsa

~/.ssh/id_rsa.pub공개 키는 어디에 ~/.ssh/id_rsa있으며 개인 키입니다.


1
이 작업은
암호

localid를 ssh하기 위해 개인 id_rsa의 잠금을 해제하는 것은 나를 위해
Alexx Roche

나는 오류 얻을 : "SSH를 : 호스트 로컬 호스트 포트 22에 연결 : 잘못된 파일 번호를"
IgorGanapolsky
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.