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