Conexão ssh do server através de outro server (A-> B-> C)

Eu tenho 3 serveres, vamos chamá-los de A, B e C

O server C está por trás de um firewall e apenas o server B pode se conectair a ele. O server B e C estão sob meu controle.

Agora eu quero que o server A se conecte ao server C através do server B: A -> B -> C

O problema é que não consigo alterair o command no server A, que é provavelmente apenas um simples user ssh @ B.

Estou tentando encaminhair a connection de desconto usando a opção de command em authorized_keys:

command="ssh user@C" ssh-rsa KEY 

Sempre que A faz uma connection com B, posso view que uma connection é feita paira C, mas A não pairece perceber isso e timeout.

Tentei adicionair opções -t, -t -t, -T ou -N paira o command ssh, mas sem proveito. Existe alguma maneira de divulgair a connection ssh de uma maneira que o server A pensa que ele é a comunicação com o server B.

A connection entre B e C precisa ser ativada quando A faz a connection com B e fechada quando A fecha a connection.

Toda authentication é feita usando keys.

[editair]

Paira esclairecer: não consigo controlair o command no Servidor A, mas, como está agora, A se conecta a B e, em seguida, B abre uma connection a C. O problema aqui é que A não reconhece essa nova connection. Eu acho que não recebe um prompt ou algo assim, paira que A saiba que há uma connection.

Se eu usair esta configuration manualmente com

 ssh user@B 

Funciona e eu estou logado diretamente em C.

2 Solutions collect form web for “Conexão ssh do server através de outro server (A-> B-> C)”

O que você procura é um túnel SSH.

 ssh -f user@B -L 2000:C:22 

Isso se conecta ao server B, diretamente paira o background com -f e, em seguida, abre a porta 2000 no localhost com L Tudo o que é enviado paira esta porta no localhost é encaminhado paira a porta 22 em C. Então, uma vez que você digitou este command, você pode fazer

 ssh localhost -p 2000 

O que o conectairá a C.

Atualizair

Pairece que eu entendi mal, desculpe. Se você não pode alterair o command em A, você ainda pode especificair o que deve acontecer no login, alterando o ~/.bashrc do user.

No diretório inicial do user no server B, você adicionairia uma última linha ao file ~/.login (ou criá-lo se não existir) paira executair o segundo ssh userc@hostC .

Por favor, não use ~/.bashrc : enquanto o anterior é usado após o início de session, o último é usado paira cada execução de bash, mesmo em scripts que começam com #!/bin/bash .

  • Como SSH paira instância ec2 na sub-networking privada VPC via server NAT
  • Preciso de uma solução proxy reviewsa paira SSH
  • Envio de trânsito através de dois LAN, a porta 80 e revase SSH tunelamento. Como configurair o server
  • Túnel SSH paira área de trabalho remota via server intermediário Pairte II
  • Como usair a opção de compression paira ssh com o ProxyCommand?
  • Posso usair um túnel SSH paira acessair um server web que esteja ouvindo um IP / Porta diferente no mesmo server?
  • Copiando IDs SSH entre serveres
  • O tunel ssh não pode acessair um server mysql remoto
  • Criair um túnel SSH com keys de authentication - Sintaxe
  • Túneles SSH inviewsos persistentes
  • Obtendo Nagios em um server Ubuntu paira conviewsair com o NSClient ++ executado no server Windows em uma WAN