Usando algo como scp, mas quando eu já estou logado [duplicado]

0

Eu quero copiar um arquivo via ssh quando eu tiver logado. O que scp faz é que copia os arquivos por login, senha, caminho. O que eu quero é poder fazer a mesma coisa quando estou "dentro", idealmente sem fornecer o login e senha:

$ ssh [email protected]
root's password:

Welcome to .....
Last login: ....
root@folder1:~# // How do I download (or upload) the files when I'm here?
    
por アレックス 09.12.2014 / 05:11

2 respostas

1

Como apontado em esta resposta do Ask Ask , você pode usar zssh em vez de ssh . Ao usar zssh , você poderá alternar para o modo de transferência de arquivos usando Ctrl + @ . Isso deve permitir a transferência de arquivos entre as extremidades local e remota de sua conexão ativa.

Outro truque apontado nessa resposta é enviar ssh para o segundo plano enquanto você chama scp . Isso pode exigir uma nova autenticação, mas se você configurar a autenticação de senha, isso não será um problema. Para enviar ssh para o fundo, pressione Ctrl + Z . Você deve poder chamar scp e recuperar ssh quando terminar, usando fg .

Editar : como apontado por muru, a fim de lidar com Ctrl + Z localmente, e não remotamente, você terá que use Digite , ~ , Ctrl + Z . Veja as sequências de escape SSH .

Basicamente, scp e ssh simplesmente não funcionam da mesma maneira. Você precisará de um truque para fazer o trabalho do outro. Alguns desses truques são dados na questão que eu relacionei anteriormente.

    
por 09.12.2014 / 09:27
0

Se você configurar um arquivo de controle, poderá reutilizar a autenticação de conexão existente. De man ssh_config :

 ControlMaster
         Enables the sharing of multiple sessions over a single network
         connection.  When set to “yes”, ssh(1) will listen for
         connections on a control socket specified using the ControlPath
         argument.  Additional sessions can connect to this socket using
         the same ControlPath with ControlMaster set to “no” (the
         default). ...
         Two additional options allow for opportunistic multiplexing: try
         to use a master connection but fall back to creating a new one if
         one does not already exist.  These options are: “auto” and
         “autoask”.  The latter requires confirmation like the “ask”
         option.

Portanto, se você se conectar usando as opções -o ControlMaster=auto -o ControlPath=/tmp/ssh-%h-%r , a primeira conexão poderá ser reutilizada por scp . Isso pode ser definido no seu ~/.ssh/config :

Host some-host
  ControlMaster auto
  ControlPath=/tmp/ssh-%h-%r
    
por 09.12.2014 / 09:40