Postado originalmente por
Avenger
Tem coisas.. [TUMMMM] que só IM resolve prá você. (dá prá se ter um retorno imediato do progresso e assim fica mais dinamica uma resolução de problema do que no forum). Ruy Netto opressor
Agora, metendo o bedelho no tópico:
Um dos truques para a automatização do backup que você quer seria usar chaves pública e privada do SSH e rodar os clientes ssh com a opção 'batchmode'. Essa opção desabilita a pergunta de senha e de pegar a chave (acho que você pode escolher por padrão ou negar) do servidor remoto caso ela mude. A chave publica e privada então te poupam da pergunta de senha (desde claro, que você tenha feito sua chave sem senha), e basta uma conexao manual no servidor remoto para que ele 'memorize' a chave (assumindo que tal servidor é dotado de ip fixo).
Com os clientes ssh e scp funcionando pela chave publica/privada, você vai poder executar os comandos lá com toda a segurança como se estivesse já dentro da máquina. Daí o melhor seria fazer um ssh no servidor remoto para compactar os dados do backup e então copiar. Se não me engano, o scp já fica por padrão para compactar os dados ao enviar -- dessa forma se você transfere um arquivo de 20Mb não compactado, talvez um arquivo que vá para 9Mb compactado, você vai fazer uma transferência bem mais rápida do que o normal, 'aparentemente' até acima do link que você disponha nos pontos. Isso não significa que, ao chegar no outro lado da cópia, o arquivo vai estar compactado, não. Só durante a transferência é que o pacote enviado é compactado pelo remoto e então descompactado pelo local (destino). As opções de compactação do scp são junto da 'batchmode', e se chamam 'compression' e 'compressionlevel'.
Bem, o objetivo do post foi só te dar uma solução prá te nortear no que você pode fazer para automatizar seu backup de forma segura. Como fazer as chaves, como transferir pelo scp ou ativar essas opções seria outro lado da história, e você acha tudo em 'man ssh', sshd ou fazendo perguntas específicas no forum sobre onde ficou com dificuldade.
Outra alternativa seria usar o rsync (e rodar servidor rsync em cada uma das maquinas que se queira fazer o backup). Não sei porém, sobre a capacidade de criptografação dos dados transmitidos e nem da compactação durante transferencia dos dados pelo rsync.
Espero ter ajudado um pouco.