Bash 스크립트를 통해 SSH-Agent에 키가 추가된 경우 '권한 거부됨(공개 키)'

Bash 스크립트를 통해 SSH-Agent에 키가 추가된 경우 '권한 거부됨(공개 키)'

내 모바일 장치와 Raspberry Pi(동시에 각각 AArch 및 ARM CPU)에서는 ssh-agent기본적으로 로드되지 않습니다.

먼저 다음을 시작해야 합니다 ssh-agent.

eval `ssh-agent -s`

그런 다음 에이전트에 키를 추가합니다.

ssh-add /home/jimjamz/.ssh/myKey

비밀번호를 입력하라는 메시지가 표시되고 이를 입력합니다. 그러면 키가 에이전트에 추가됩니다.

Enter passphrase for /home/jimjamz/.ssh/myKey: 
Identity added: /home/jimjamz/.ssh/myKey (/home/jimjamz/.ssh/myKey)

그러면 키를 다시 지정하지 않고도 원격 서버에 연결할 수 있습니다.

편의를 위해 에이전트를 시작하고 키를 추가하는 스크립트에 위의 내용을 추가하고 싶습니다.

#!/bin/bash
eval `ssh-agent -s`
ssh-add /home/jimjamz/.ssh/myKey

스크립트를 실행하면 에이전트 프로세스가 시작된 것을 볼 수 있으며 개인 키의 비밀번호를 입력하라는 메시지가 표시됩니다. 이것을 정확하게 입력하면 에이전트에 키가 추가됩니다.

그러나 원격 서버로 SSH를 시도하면 다음이 표시됩니다.

Permission denied (publickey).

ssh-add문제는 내 bash 스크립트 내에서 호출하는 것 같습니다 . ssh-add스크립트 외부에서 수동으로 호출한 다음 원격 서버에 SSH를 시도하면 연결할 수 있습니다.

ssh-addBash 스크립트 내에서 호출된 경우 키가 이미 추가되었음을 인식하지 못하는 이유는 무엇입니까 ?

다른 컴퓨터 중 하나(ssh-agent가 기본적으로 이미 로드되어 있는 컴퓨터)에서 bash 스크립트를 실행하면 스크립트 내에 추가된 키를 사용하여 원격 서버에 SSH로 연결할 수 있습니다. ssh-agent가 기본적으로 자동으로 실행되지 않는 장치에서는 작동하지 않는 것 같습니다.

관련 정보