키를 안전하게 보관하고 싶지만 git
여러 명령을 빠르게 연속해서 실행하고 싶기 때문에 호출할 때마다 비밀번호를 입력하고 싶지 않습니다. 나는 이것을 조사한 결과 ssh-agent/keychain/etc가 내 취향에 비해 편의성과 보안 측면에서 너무 뛰어나다는 것을 발견했습니다. 이와 같은 것이 xyz git pull
완벽할 것입니다. xyz는 내 키가 해독되었는지 확인하고, 그렇지 않은 경우 나에게 비밀번호를 묻습니다. 그런 다음 N분 동안 xyz를 호출하지 않으면 해독된 값을 잊어버립니다. sudo와 같습니다. 이것이 존재합니까/어떤 영리한 방법으로 달성할 수 있습니까?
답변1
이것이 바로 ssh-agent
이루어진 일입니다.
여기서 xyz는 내 키가 해독되었는지 확인하고 그렇지 않은 경우 내 비밀번호를 묻습니다.
.xyz
ssh-agent
세션 시작 부분에서 시작하세요(예: ) ~/.bashrc
.
[ -z "$SSH_AUTH_SOCK" ] && eval $(ssh-agent -t 5m)
ssh
키를 처음 사용할 때 키를 추가하도록 설정을 통해 클라이언트를 구성하세요 .
AddKeysToAgent yes
당신의 ~/.ssh/config
.
그런 다음 N분 동안 xyz를 호출하지 않으면 해독된 값을 잊어버립니다.
이것이 -t
스위치 ssh-agent
의 목적입니다. 추가된 키에 대한 기본 시간 초과를 설정합니다(위 예에서는 5분).