SSH-agent에 키 추가

SSH-agent에 키 추가

셸을 시작할 때마다 SSH 에이전트에 추가하고 싶은 세 개의 SSH 키 쌍이 있습니다. 다시 시작한 후에는 항상 수동으로 다시 추가해야 합니다 ssh-add <path_to_private_key>.

어떻게 해야 하나요?

답변1

때에 따라 다르지.

SSH를 통해 로그인하는 경우 옵션을 통해 SSH 프록시 전달을 사용할 수 있습니다 -A( ssh또는 에서 옵션을 설정할 수 있습니다 ~/.ssh/config). 이렇게 하면 SSH 키를 서버에서 로컬로 실행 중인 ssh-agent.

X 세션을 통해 로그인한 경우 ssh-agent배포판에 단일 중앙 런타임이 설정되어 있어야 합니다. 그렇지 않은 경우 귀하의 것 ~/.xsession(또는 X 세션을 시작하는 데 사용하는 모든 것)에 다음과 같은 내용이 포함되어 있는지 확인하십시오 .

ssh-agent awesome

(당신이 나와 같고 훌륭한 창 관리자와 같다고 가정).

다른 모든 방법이 실패하면 ~/.bash_profile.맨 위파일 중):

if [ -z "$SSH_AGENT_PID" ]
then
    exec ssh-agent bash
fi
ssh-add ...

이미 실행 중인 에이전트가 있는지 확인하고, 그렇지 않은 경우 에이전트를 다시 시작한 다음 셸을 시작합니다. 이렇게 하면 키가 추가됩니다.

(run 명령을 전달하지 않고 실행할 수 있는 또 다른 옵션이 있습니다 eval ssh-agent. 이렇게 하지 마세요. 덜 안전합니다.)

답변2

에이전트를 시작한 후 SSH_AUTH_SOCK설정과 명령을 SSH_AGENT_PID파일에 저장합니다. 그런 다음 에이전트를 다시 시작하는 대신 다음 명령을 실행하십시오. 이렇게 하면 모든 쉘에 대한 공유 프록시가 남습니다. .profile이 기능을 또는 파일 에 구축하면 .bash_profile이 작업이 더 쉬워집니다.

X-Windows 환경에서 작업하는 경우 X-Windows 초기화 중에만 에이전트를 시작하면 됩니다. 그러면 쉘이 기존 프록시 설정을 상속해야 합니다.

이 솔루션을 사용하여 상대적으로 짧은 시간 제한이 있는 키를 추가했습니다. 이 옵션을 사용하면 ssh-agent를 시작할 때 -t기본값을 설정할 수 있습니다.

관련 정보