Atingir qualquer servidor em uma rede separada com proxy + ssh

2

Eu tenho o servidor A na rede A. O servidor A é capaz de se conectar a um host bastion na rede B via ssh. Este host bastion é capaz de alcançar qualquer porta em qualquer servidor na rede B.

De qualquer servidor na rede A, eu gostaria de poder fazer algo como curl server-b ou ssh server-c e fazer com que o tráfego seja roteado pelo servidor A, através do bastião, para a rede B e se conectar ao servidor. b e server-c nas portas corretas. Tudo bem se eu tiver que especificar o proxy no comando, por exemplo: PROXY=server-a:8080 curl server-b etc. (ou a porta no servidor-b ou server-c)

Não consigo criar um servidor na rede B. Tudo o que tenho é o acesso por bastiões.

Suponho que há duas partes para isso que precisam ser configuradas no servidor A, um servidor proxy e um túnel ssh.

Para o servidor proxy eu estou supondo que eu poderia usar algo como o squid, e tê-lo proxy para localhost em qualquer porta que eu estou usando para o túnel ssh.

Mas não tenho certeza do que fazer para o túnel ssh

Eu normalmente iniciaria o túnel com algo como:

ssh -L 8080:<X>:<Y> bastion

Mas X e Y são variáveis ... Eu quero ser capaz de alcançar qualquer servidor na rede B. Então, eu preciso de um tipo de túnel ssh "genérico", e não tenho certeza se existe.

O acesso ao bastião também exige 2FAs, por isso não posso criar dinamicamente um novo túnel ssh sempre que quiser estabelecer uma ligação entre um servidor na rede A e um servidor na rede B.

(Sim, tenho aprovação dos chefes para fazer isso, que não é relevante aqui e não deve ser mencionado)

    
por cat pants 07.11.2018 / 04:44

0 respostas