É possível "automaticamente" configurar o ssh para usar um gateway para conectar-se a uma máquina remota com base no endereço IP do cliente ou algo assim?
Suponha que eu esteja no meu laptop
, que eu posso conectar (através de uma conexão com fio) na rede da universidade e ter acesso direto ao cluster.uni.edu
, mas se eu estou em casa, eu tenho que passar pelo %código%. Então, para se conectar ao cluster de casa, posso ter meu gateway.uni.edu
assim:
Host cluster
Host cluster.uni.edu
ProxyCommand ssh -W %h:%p gateway.uni.edu
Por isso, posso apenas ~/.ssh/config
e acessá-lo de forma transparente através do gateway. A desvantagem é que, se eu estiver conectado à rede da universidade, não preciso passar pelo gateway, então, para evitar isso, precisaria fazer algo como ssh cluster
.
É possível configurar isso para que o ssh não pule embora o gateway não seja necessário? O critério seria algo como: Se eth0 estiver conectado e o IP for xxx.yyy.zzz.www, conecte-se diretamente, caso contrário use o gateway .
Eu acho que isso pode ser pedir muito do arquivo de configuração e das opções padrão do ssh, mas eu realmente gostaria de evitar os scripts do wrapper. (Nota: usei o LocalFowrard para fazer esse tipo de coisa antes de aprender sobre ssh cluster.uni.edu
porque não gostei da idéia de usar ssh -W
as netcat
)
Obrigado!
Tags ssh openssh gateway ssh-tunnel