Isso provavelmente ocorreu devido ao diretório .ssh ou ao diretório inicial do usuário não ter as permissões corretas. Recriar os usuários provavelmente consertaram isso.
Quando eu faço login no servidor com uma chave
ssh -i /home/me/.ssh/id_rsa server
tudo fica sem falha. A chave está autorizada no servidor. No entanto, se eu tentar fazer o mesmo a partir de um script de shell, recebo uma solicitação de senha. O mesmo acontece quando tento scp usando o arquivo de chaves:
scp -i /home/me/.ssh/id_rsa file server:
Eu também criei o ~ / .ssh / config para o host:
Host server
hostname server
IdentityFile /home/me/.ssh/id_rsa
Quando tento SSH apenas com ssh server
, também recebo uma solicitação de senha. O keyfile, ssh config e authorized_keys do servidor têm privilégios definidos para 600.
O que posso fazer para resolver isso?
EDITAR
O mesmo acontece com o sshfs.
sshfs -o IdentityFile=/home/me/.ssh/id_rsa server:/directory mountpoint
do cli funciona bem. Quando está em um script de shell, recebo uma solicitação de senha.
Isso provavelmente ocorreu devido ao diretório .ssh ou ao diretório inicial do usuário não ter as permissões corretas. Recriar os usuários provavelmente consertaram isso.
Tags ssh bash scripting shell-scripting