SSH 키를 만들 때 키에 비밀번호를 추가했습니다. 이제 일부 ssh 및 rsync 명령을 실행하는 스크립트를 작성하려고 합니다. 불행하게도 내 rsa 키에 비밀번호가 있기 때문에 매번 비밀번호를 입력하라는 메시지가 표시됩니다. 사용자에게 키 비밀번호를 한 번 묻는 메시지를 표시한 다음 ssh 명령으로 리디렉션하는 방법이 있습니까?
** SSH 사용자 비밀번호가 아닙니다. 이것은 키의 비밀번호입니다**
답변1
SSH 키 에이전트를 사용할 수 있습니다. 에이전트를 시작하는 명령은 다음과 같습니다.
ssh-agent
그런 다음 에이전트에 키를 추가해야 합니다. 기본 키(~/.ssh/id_rsa)를 추가하려면 다음 명령을 사용할 수 있습니다.
ssh-add
키를 추가하려면 비밀번호를 한 번 입력해야 합니다.
자세한 내용은 이 ServerFault 게시물을 확인하시기 바랍니다.
아마도 가장 깨끗한 해결책은 ssh-agent shebang을 스크립트에 추가하는 것입니다. 예를 들면 다음과 같습니다.
#!/usr/bin/ssh-agent bash
ssh-add /path/to/ssh-key
ssh root@remotehost "remote commands"
SSH 에이전트 사용과 관련된 질문도 많이 있으므로 다음과 같은 일반적인 사용 조언이 포함된 기사를 읽어보는 것이 좋습니다.