Uso de tunnel SSH

Algumas vezes é necessário acessar uma máquina do cluster de fora da FT. Essas máquinas são protegidas por firewall, a máquina lascado no caso do cluster.

O SSH (Secure Shell) é uma ferramenta poderosa para conexões seguras em redes, permitindo não apenas a comunicação segura entre dois sistemas, mas também a criação de túneis. Os túneis podem encaminhar o tráfego de rede de forma segura entre máquinas diferentes (hosts).

Através da opção -L, podemos indicar o servidor ssh de entrada, o servidor de destino e a porta de destino. Assim, para acessar a máquina xcat02 do cluster a partir de seu computador pessoal localizado na sua casa, você deve usar o seguinte comando:

$ ssh -L 5555:143.106.243.188:22 seu_usuario@lascado.ft.unicamp.br

onde 5555 é a porta do seu computador que será conectada a porta 22 da máquina xcat02 via um túnel que passa pela máquina lascado. O IP da xcat02 (143.106.243.188) é indicado entre essas portas no comando acima.

Ao executar o comando acima, será criada uma conexão com a máquina lascado. Mantendo-se essa conexão ativa, abra outro terminal e digite o seguinte comando para verificar a conexão estabelecida:

Linux

$ ss -tna | grep "5555"

onde usamos o ss que é um comando que investiga sockets e conexões na máquina. As opções usadas aqui são: a (mostra todos os sockets), n (não tenta resolver nome de serviço) e t (para conexões tcp)

Deve aparecer uma conexão em modo listening (escuta) da porta, mostrando que o túnel está ativo e aguardando conexão.

MacOS

$ netstat -p tcp -van | grep 5555

Para acessar diretamente a máquina xcat02 diretamente do seu computador, você pode usar o comando:

$ ssh -p 5555 seu_usuario@127.0.0.1

Podemos também copiar diretamente do seu computador para o cluster, passando diretamente pela máquina de entrada lascado.ft.unicamp.br. Para isso, usamos o scp, informando também a porta local usada no túnel ssh.

O exemplo a seguir mostra como copiar o arquivo hello.c do seu computador localizado em /home/seu_usuario para o diretório /home/seu_usuario/WORK na máquina xcat02.

$ scp -o port=5555 127.0.0.1:/home/seu_usuario/hello.c /home/seu_usuario/WORK