Aproveite o acesso sudo para rsync mais simples?

2

Eu tenho acesso SSH a um servidor como um usuário não privilegiado. Eu tenho acesso sudo no servidor que me permite su to root .

Eu preciso puxar alguns arquivos do servidor. Os arquivos só podem ser lidos por root .

Uma maneira de fazer isso (sem soluções de UI irritantes, apenas linha de comando, por favor) é logar remotamente, usar sudo para copiar o arquivo para o diretório home do meu usuário não privilegiado, dar a cópia do arquivo acesso de leitura para minha conta sem privilégios, saia do shell remoto e use rsync para extrair a cópia do arquivo pela rede.

Isso é muito chato. Existe uma maneira mais simples de aproveitar sudo de acesso para puxar esses arquivos pela rede?

(Eu estou autorizado a puxar os arquivos, mas pela política da empresa eu não posso logar como root diretamente na rede, pois impede a prestação de contas - não há registro de quem logou dessa maneira. Então eu não posso adicionar minha chave SSH para o arquivo authorized_keys .)

    
por Wildcard 20.08.2016 / 00:35

1 resposta

2

Se você pode sudo no controle remoto sem precisar de uma senha, você pode simplesmente adicionar a um rsync comum a opção --rsync-path= comando remoto , por exemplo

rsync -av --rsync-path='sudo rsync' me@remote:/root/ ~/rootcopy/
    
por 20.08.2016 / 09:53

Tags