Manual de utilização do ambiente de processamento paralelo do LAD

O presente documento tem como objetivo orientar e instruir os usuários do Laboratório de Alto Desempenho da PUCRS, do PUCRS Ideia, sobre a utilização do laboratório.
Em caso de dúvidas, pode entrar em contato via e-mail: contato.lad@pucrs.br ou suporte.lad@pucrs.br.

2.3. OpenSSH Proxyjump

O ProxyJump da OpenSSH é uma configuração que facilita e automatiza a conexão a servidores remotos através de um servidor intermediário. Em vez de se conectar manualmente a cada servidor, o ProxyJump permite que o OpenSSH gerencie as conexões.

O comando possui o seguinte formato:

user@localhost:~$ ssh -J <user@jump-server> <user@remote-server>


Exemplo:

user@localhost:~$ ssh -J examples.pucrs@sparta.pucrs.br examples.lad@pantanal.lad.pucrs.br


Configurando no Linux / Windows 11

No arquivo de configurações do SSH, acessado em ./etc/ssh/ssh_config ou em ~/.ssh/config no Linux, podemos incluir os hosts. No Windows 11, as configurações se encontram no diretório C:\Users\User\.ssh\config.

Se o arquivo “config” não existir, você pode criá-lo:

Host sparta
User <usuário_pucrs>
Hostname sparta.pucrs.br

Host cluster
User <usuário_lad>
Hostname <cluster>.lad.pucrs.br
ProxyJump sparta


Exemplo:

Host sparta
User examples.pucrs
Hostname sparta.pucrs.br

Host pantanal
User examples.lad
Hostname pantanal.lad.pucrs.br
ProxyJump sparta


Nesse caso, para o acesso remoto:

user@localhost:~$ ssh pantanal


Configuração de troca de chaves SSH

A configuração de troca de chave SSH permite que você faça login em servidores remotos sem precisar digitar uma senha a cada vez, usando um par de chaves SSH.


Passo 1: Gerar o Par de Chaves SSH

No terminal do seu computador, digite o comando abaixo para gerar uma nova chave SSH:

ssh-keygen


Quando solicitado a definir um nome para o arquivo da chave, pressione Enter para aceitar o padrão local (no Linux: ~/.ssh/id_rsa, no Windows: C:\Users\<seu_usuario>\.ssh).

O comando pode perguntar se você deseja adicionar uma passphrase (senha) para as chaves. Não é necessário colocar (apenas aperte Enter). Caso decida colocar, você precisará digitar essa senha para utilizar a chave.

Para visualizar sua chave pública, digite o comando:

cat .ssh/id_rsa.pub


Copie o conteúdo da chave pública (tudo da linha que começa com ssh-rsa até o final).


Passo 2: Faça a conexão com a Sparta e cadastre a chave pública

Com a configuração de Proxyjump feita, acesse a sparta:

ssh sparta


Esse comando está relacionado com a Configuração de Proxyjump feita anteriormente.

No primeiro acesso pedirá a sua senha.

Após o login, edite o arquivo authorized_keys:

nano ~/.ssh/authorized_keys


Cole a chave pública copiada dentro desse arquivo (em uma nova linha) e salve. Pressione Ctrl + O para salvar. Em seguida presssione Enter para confirmar o nome do arquivo. Para sair, pressione Ctrl + X. Caso o arquivo não exista, ele será criado.

Agora você já pode desconectar da Sparta e seguir com o passo a passo.


Passo 3: Copiar a Chave Pública também para o Servidor do LAD

Com a configuração de Proxyjump feita, acesse a pantanal (ou outro headnode configurado)

ssh pantanal


Esse comando está relacionado com a Configuração de Proxyjump feita anteriormente.

Note que a senha da sparta já não é mais solicitada, apenas a senha do LAD.

No servidor remoto, edite o arquivo authorized_keys:

nano ~/.ssh/authorized_keys


Cole a chave pública copiada dentro desse arquivo (em uma nova linha) e salve. Pressione Ctrl + O para salvar. Em seguida presssione Enter para confirmar o nome do arquivo. Para sair, pressione Ctrl + X. Caso o arquivo não exista, ele será criado.


Passo 4: Testar a Conexão

Você pode testar a conexão com o servidor para verificar se a autenticação sem senha está funcionando:

ssh pantanal


Se a chave privada correspondente à chave pública foi configurada corretamente, a conexão deve ser feita sem pedir as senhas.

Configurando no Windows PuTTY

Para configurar o OpenSSH no Windows PuTTY:

Na seção Session

  • Host Name: <cluster>.lad.pucrs.br

putty-host

Na seção Connection > Data

  • Auto-login username: <usuário_lad>

putty-data

Na seção Connection > Proxy

  • Proxy type: “SSH to proxy and use port forward”
  • Proxy hostname: jump-server sparta.pucrs.br
  • Port: 22
  • Username: <usuário_pucrs>

putty-proxy

Na seção Session

  • Saved Sessions: “name”

putty-save-config

Por fim, entre no Windows PuTTY clicando em “Open”.