Tunneling SSH através de um firewall para um cluster

1

Eu trabalho em uma universidade, mas geralmente trabalho remotamente. Existe um computador cluster na universidade com o qual eu preciso interagir, mas está atrás de um firewall. Vamos chamar o firewall F e o cluster C.

No passado, em situações semelhantes, eu apenas ssh para F e, em seguida, ssh de F para C. Isso funciona bem, e posso me conectar fazendo isso. O problema é que, ao contrário de outros firewalls que eu já trabalhei no passado, o F não tem nada instalado além de ssh . Eu preciso ser capaz de obter arquivos de e para C, e não posso fazê-lo através de F sem scp .

Minha universidade oferece um sslvpn para essa situação, mas por motivos que eu e a equipe técnica não conseguimos descobrir porque não consigo ssh em computadores locais quando no sslvpn. Por exemplo, embora de uma rede externa eu possa ssh em F e depois em C, eu não posso ssh em F OR C (ou qualquer outro computador na rede) quando conectado ao sslvpn. A conexão apenas expira.

Eu pensei que ssh tunneling poderia ser a solução - encapsulamento meu tráfego através de F para C (como eu o entendo). Então eu posso scp para C ou de C e os pacotes serão apenas tunelados através de F. No entanto, estou tendo problemas para configurar isso, e nenhum guia que eu encontrei on-line foi útil. Eu quero ser capaz de ter um shell interativo em C que é tunelado através de F.

Eu tentei:

~  ᐅ ssh -f -R 3000:me@firewall_here:5222 me@cluster_here -N
~  ᐅ ssh -f -L 3000:me@firewall_here:5222 me@cluster_here -N

Eu também tentei seguir este guia: link e este guia:

Com um desses comandos, a conexão expira ao tentar se conectar ao m3 @ cluster_here como se eu estivesse no sslvpn. Eu não tenho ideia de como corrigir isso. Qualquer ajuda apreciada - e pode executar qualquer comando para informações mais úteis.

    
por The Wind-Up Bird 02.12.2014 / 12:44

2 respostas

1

Não é exatamente a resposta que você pediu, mas você deve poder transferir arquivos por meio de uma conexão SSH:

enviando

ssh user1@firewall "ssh user2@cluster \"cat > remote_file\" "  < local_file

buscando

ssh user1@firewall "ssh user2@cluster \"cat remote_file\" "  > local_file

EDITAR:

Existem também ferramentas de transferência de arquivos baseadas em terminal, como "zmodem"

    
por 02.12.2014 / 14:42
0

Leia sobre o SSH reverso. Talvez isso ajude você. Eu usá-lo para se conectar a armazenamentos remotos por trás do NAT.

    
por 02.12.2014 / 13:57