Como rsync para um servidor usando chaves ssh

1

Eu estou rodando em um Mac, e eu quero configurar um crontab para rsync do meu VPS semanalmente para pegar alguns arquivos de backup. Eu estou usando chaves ssh (sem senhas permitidas no VPS), e normalmente eu posso ssh sem nenhum prompt (minha chave privada tem uma frase secreta, mas é armazenada no keychain do Mac). No entanto, quando o cron executa um script, ele falha e envia um email dizendo que o ssh falhou:

Permission denied (publickey).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: unexplained error (code 255) at /SourceCache/rsync/rsync-42/rsync/io.c(452) [receiver=2.6.9]

O script que está sendo executado:

#!/bin/sh
rsync -Cavz -e "ssh -i /Users/bob/.ssh/id_rsa" bob@myvps:/backups/ ~/Documents/Backups

O que estou fazendo de errado?

    
por CaptSaltyJack 17.04.2013 / 11:11

1 resposta

0

Eu não acho que o cron tenha acesso à sua frase secreta e é por isso que você não pode entrar no seu servidor remoto. A melhor maneira de conseguir isso é configurar uma nova chave sem frase secreta.

O uso de uma chave sem uma frase secreta é menos seguro, mas você pode limitar seu uso. Veja a seção AUTHORIZED_KEYS FILE FORMAT no manual do sshd .

    
por 17.04.2013 / 11:37