HPC – Universidade de São Paulo Superintendência da Tecnologia da Informação Computação de Alto Desempenho
FacebookTwitterGoogle PlusYoutube

FAQ

Túnel SSH com MobaXterm (Windows)

Transferência de arquivos entre lince2, aguia4, aguia3 e seu micro com linux

O exemplo a seguir é para a lince2. Substitua “lince2” por “aguia4” ou “aguia3” conforme o caso.
No linux, para copiar arquivos da lince2  para seu micro você precisa ter, em seu linux local, um arquivo que está na shark para depois executar o comando para transferir arquivos.  Este arquivo é sua senha e vai ser usado no comando scp. No item 1) você transfere este arquivo para seu micro, no item 2) você abre o túnel e no item 3) você efetua a cópia.

1) Copie para seu diretório local o arquivo /home/seu_numero_USP/.ssh/id_ed25519  que está na shark (ele é sua chave privada e deve ser protegida de forma que outros usuários não tenham acesso) com os seguintes comandos que você executa no seu linux local:

cd diretório_local_do_seu_linux

scp seu_numero_USP@shark.hpc.usp.br:/home/seu_numero_USP/.ssh/id_ed25519 .

o ponto “.” no final do comando indica que o arquivo será copiado para seu diretório corrente no seu linux. Proteja este arquivo com o seguinte comando:

chmod 700 ./id_ed25519

2) Em um terminal no seu linux abra o túnel digitando sua senha única:

      ssh -X -2 -L 8020:lince2:22 seu_numero_USP@shark.hpc.usp.br

3) Deixe este terminal aberto e, em outro terminal no seu linux, execute o comando:

    scp -r -P 8020 -i ./id_ed25519  seu_numero_USP@localhost:/scratch/seu_numero_USP/diretorio_fonte .

O “-i ./id_ed25519” é a sua “senha” para fazer a conexão com a lince2, e o ponto “.” no final  do comando indica que os arquivos da lince2 serão copiados para seu diretório corrente em seu linux local. A palavra “localhost” deixe assim mesmo.

Tudo isso só vai funcionar se a sua versão do ssh ser acima de 7. Para saber a versão do seu ssh, execute o comando “ssh -V”.

Outra idéia é você, a partir da lince2, executar o comando scp enviando os arquivos da lince2 para seu micro local, sem utilizar o túnel pela shark. A partir da lince2, execute comandos como:

cd /scratch/seu_numero_USP/arquivos_origem
scp -r *  ip.do.seu.micro:/seu-diretorio

Caso queira enviar arquivos do seu micro para a lince2, inverta a ordem dos parâmetros no comando scp, pois a sintaxe do comando scp é “scp origem destino”.

  • Acesso SSH/SFTP usando bastion host:

    Bastaria adicionar o conteúdo abaixo no final do /etc/ssh/ssh_config no seu linux, substituindo os negritos quando pertinente. A chave pública deve estar no seu ~/.ssh.authorized_keys das máquinas de destino.

Host shark.hpc.usp.br
User SEU_USERNAME
IdentityFile ~/.ssh/id_ed25519
ControlMaster auto
ControlPath ~/.ssh/cm_socket-%r@%h:%p
Host lince.hpc.usp.br
User SEU_USERNAME
IdentityFile ~/.ssh/id_ed25519
ProxyCommand ssh SEU_USERNAME@shark.hpc.usp.br -W %h:%p
ServerAliveInterval 240

Host lince2.hpc.usp.br
User SEU_USERNAME
IdentityFile ~/.ssh/id_ed25519
ProxyCommand ssh SEU_USERNAME@shark.hpc.usp.br -W %h:%p
ServerAliveInterval 240

Host aguia3.hpc.usp.br
User SEU_USERNAME
IdentityFile ~/.ssh/id_ed25519
ProxyCommand ssh SEU_USERNAME@shark.hpc.usp.br -W %h:%p
ServerAliveInterval 240

Binding/Pinning cpus to processHost aguia4.hpc.usp.br
User SEU_USERNAME
IdentityFile ~/.ssh/id_ed25519
ProxyCommand ssh SEU_USERNAME@shark.hpc.usp.br -W %h:%p
ServerAliveInterval 240