[unix] 새 키를 만들지 않고 SSH 키의 암호를 어떻게 제거합니까?

랩톱에서 새 SSH 키를 만들 때 암호를 설정했습니다. 그러나 지금 알 다시피 , 한 시간에 SSH를 통해 원격 위치에 ( GitSVN ) 커밋하려고 할 때 이것은 매우 고통 스럽 습니다.

내가 생각할 수있는 한 가지 방법은 SSH 키를 삭제하고 새로 만드는 것입니다. 여전히 동일한 키를 유지하면서 암호를 제거하는 방법이 있습니까?



답변

짧은 답변:

$ ssh-keygen -p

그러면 키 파일 위치, 이전 암호 구 및 새 암호 구를 입력하라는 메시지가 표시됩니다 (암호를 남기지 않으려면 비워 둘 수 있음).


프롬프트없이 한 줄로 모든 작업을 수행하려면 다음을 수행하십시오.

$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]

중요 사항 : 명령을 실행할 때 일반적으로 ~/.bash_history제공된 모든 인수 (이 경우 비밀번호 문구)를 포함하여 일반 텍스트로 파일 (또는 유사)에 기록됩니다 . 따라서 특별한 이유가없는 한 첫 번째 옵션을 사용하는 것이 좋습니다.

nor -f keyfile를 지정 -P하지 않고도 계속 사용할 수 -N있으며 키 파일의 기본값은 ~/.ssh/id_rsa로 설정되어 있으므로 많은 경우에는 필요하지 않습니다.

암호문을 한동안 캐시 할 수있는 ssh-agent 사용을 고려할 수 있습니다. 최신 버전의 gpg-agent는 ssh-agent에서 사용하는 프로토콜도 지원합니다.


답변

$ ssh-keygen -p 나를 위해 일했다

자식 배쉬를 열었습니다. 붙여 넣기 :$ ssh-keygen -p

기본 위치를 입력하려면 Enter 키를 누르십시오.

오래된 암호를 입력하십시오

새 비밀번호 입력-공백

새 비밀번호 문구 확인-공백

BOOM git push에 대한 암호 입력의 고통이 사라졌습니다.

감사!


답변

로그인시 ssh-agent를 시작하는 .bash_profile (또는 이와 동등한)에 다음을 추가 할 수 있습니다.

if [ -f ~/.agent.env ] ; then
    . ~/.agent.env > /dev/null
    if ! kill -0 $SSH_AGENT_PID > /dev/null 2>&1; then
        echo "Stale agent file found. Spawning new agent… "
        eval `ssh-agent | tee ~/.agent.env`
        ssh-add
    fi
else
    echo "Starting ssh-agent"
    eval `ssh-agent | tee ~/.agent.env`
    ssh-add
fi

일부 Linux 배포판 (Ubuntu, Debian)에서는 다음을 사용할 수 있습니다.

ssh-copy-id -i ~/.ssh/id_dsa.pub username@host

생성 된 ID를 원격 컴퓨터에 복사하여 원격 키 체인에 추가합니다.

자세한 내용은 여기여기를 참조 하십시오 .


답변

암호를 변경하거나 제거하기 위해 종종 pand f플래그 만 전달하는 것이 가장 간단한 것을 발견 한 다음 시스템에서 암호를 입력하라는 메시지를 표시합니다.

ssh-keygen -p -f <name-of-private-key>

예를 들어 :

ssh-keygen -p -f id_rsa

암호를 제거하려면 빈 암호를 입력하십시오.

비밀번호를 제거하거나 변경하기위한 샘플 실행은 다음과 같습니다.

ssh-keygen -p -f id_rsa
Enter old passphrase:
Key has comment 'bcuser@pl1909'
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved with the new passphrase.

암호가없는 키에 암호를 추가하면 다음과 같이 실행됩니다.

ssh-keygen -p -f id_rsa
Key has comment 'charlie@elf-path'
Enter new passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved with the new passphrase.


답변

Windows에서 PuttyGen을 사용하여 개인 키 파일을로드하고 암호를 제거한 다음 기존 개인 키 파일을 겹쳐 쓸 수 있습니다.


답변

당신은 투명 그것의 사용합니다 키 체인에서 개인 SSH 키에 대한 암호를 저장할 수 있습니다. 로그인하면 루트 사용자가 로그 아웃 할 때 사용할 수 없습니다. 파일을 가진 사람은 누구나 암호를 사용할 수 있으므로 암호를 제거하는 것은 좋지 않습니다.

ssh-keygen -K

이것을 추가하십시오 ~/.ssh/config

UseKeychain yes


답변