Baixar arquivos do servidor enquanto estiver logado via ssh

2

Eu tenho logins de root ssh desativados no meu servidor, mas atualmente quero fazer backup de alguns arquivos de propriedade do root na minha caixa local.

Estou tentando descobrir uma maneira de usar o SCP para recuperar arquivos enquanto estiver conectado via SSH sem executar um daemon ssh em minha caixa local - e sem instalar nenhuma ferramenta adicional.

Só querendo saber se isso é possível? Eu não acho que seja ..

O único método em que consigo pensar é executar um script que efetue login por meio de uma conta de usuário e depois su's para root, depois copie - mas estou tentando evitar isso porque não desejo codificar meu pw de raiz para um arquivo de script na minha máquina local.

    
por bMon 20.06.2012 / 00:13

2 respostas

1

Você pode fazer o que quiser com uma combinação de rsync, ssh e sudo.

Se você adicionar um usuário local ao seu computador "privilegiado", poderá permitir que o usuário execute o rsync via sudo. O que permitirá que você remova arquivos apenas legíveis pelo root para o sistema local.

#
# Our backup client needs to rsync in a privileged manner.
#
privileged  ALL  = NOPASSWD: /usr/bin/rsync

Depois de ter isso em vigor, você pode executar algo assim para buscar arquivos:

rsync --rsync-path="sudo rsync" [email protected]:/root /backup_directory
    
por 20.06.2012 / 00:35
0

Ative o login raiz no servidor, mas restrinja-os apenas à senha. Configure um par de chaves na sua caixa local, coloque a chave pública no arquivo authorized_keys do root no servidor e pronto.

Isso é 99,9999% mais seguro do que não permitir logins de raiz, contanto que você proteja o par de chaves contra roubo .

Se você configurar uma frase secreta complexa na chave, precisará estar presente para executar os backups ou usar o ssh-agent ou algo semelhante. Ou você pode simplesmente não colocar uma senha na chave e agora você tem acesso mágico e sem senha ao seu servidor via root. Obviamente, nesse caso, o roubo da chave privada é um problema mais sério, portanto, você precisa entender esses riscos e atenuá-los ou usar uma frase secreta strong.

Eu sei que isso não é exatamente o que você pediu, mas honestamente, os logins raiz protegidos por senha são seguros (com a ressalva de que você deve manter-se atualizado sobre os patches sshd).

Qualquer outra opção que permita que qualquer ID de usuário tenha permissões suficientes no servidor de destino para ser root, sem colocá-las atrás de um login ssh protegido por senha é realmente menos seguro, do que apenas permitir root via senha.

Se a sua estação de trabalho local tiver um endereço IP previsível, você poderá tornar isso ainda mais seguro usando a opção AllowUsers .

por exemplo,

AllowUsers [email protected]

    
por 20.06.2012 / 00:21