Empurrar / puxar arquivos entre máquinas Unix com chave privada no Windows

1

Estou operando em três sistemas:

  • Uma máquina Unix remota (vamos chamá-la Unix1), que armazena alguns arquivos
  • Uma máquina local do Windows (vamos chamá-la de win1), que armazena a chave privada no Unix1
  • Uma máquina Unix remota (vamos chamá-la Unix2) que armazena um processo.

O processo no Unix2 não pode ser instalado no Unix1. Idealmente, estou tentando fazer o seguinte:

  • Do Unix2, conecte-se ao Unix1 (usando a chave privada no win1)
  • Puxar alguns arquivos do Unix1 para o Unix2
  • Execute um processo no Unix2
  • Envie os arquivos de saída do Unix2 para o Unix1 (usando a chave privada no win1)

Qual sintaxe eu precisaria seguir aqui? A localização da chave privada é o que está criando alguns problemas para mim.

    
por Marco 04.02.2016 / 14:43

1 resposta

1

trazer chave do windows para unix

da chave privada no windows, gerar chave pública, copie ambos para o unix2.

se estiver usando putty, use puttygen e, em seguida, conversão, export openssh key

chave privada se parece com: (RSA é o tipo de chave)

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCUAEAzrtuUOEMAN1vaX1GFBLoBiDba/AiIdfFkTFJeZtaKtiuIpS7
(...)
----END RSA PRIVATE KEY-----

chave pública parece

ssh-rsa AAAAB3....abc user@hosts

autoriza o usuário2 no unix1

assumindo user1 / user2 no unix1 / unix2, do unix2

acrescente o conteúdo da chave pública a authorized_keys (em ~user1/.ssh no unix1)

coloque a chave privada em id_rsa em ~user2/.ssh no unix2.

copiar arquivo

 scp /some/file1.txt /some/file2.cmd user1@unix1:/distant/place

processo de execução

 ssh -l user1 unix1 /distant/place/file2.cmd

trazer de volta o resultado

 scp user1@unix1:/distant/place/result.txt /some
    
por 04.02.2016 / 15:11

Tags