Você já teve que se conectar a um servidor SSH atrás de algum tipo de firewall? Às vezes, os clientes protegem suas redes com VPNs ou permitem que apenas determinados endereços IP se conectem a seus servidores. Felizmente, o SSH torna a conexão a esses sistemas simples, permitindo-nos “proxy” por meio de qualquer comando, até mesmo outra conexão SSH!
Veja o seguinte exemplo:
Normalmente, se você quiser se conectar a um dos servidores da Web nesse diagrama, primeiro digite ssh user@secure
, digite sua senha e, em seguida, digite ssh user@web1
. Este atraso de 2 a 5 segundos não é tão ruim quando você só precisa se conectar de vez em quando, mas tentando rsync
alguns arquivos entre seu laptop e a web1, ou implantar seu aplicativo usando scp
.
Ao configurar o SSH para usar um comando proxy, podemos fazer a conexão com o web1 de uma só vez. Na linha de comando, seria algo assim ssh -o ProxyCommand="ssh user@secure nc %h %p 2>/dev/null" user@web1
.
Ou, em seu ~/.ssh/config
arquivo, você pode adicionar um alias para seu servidor da web:
Host web1
Hostname web1
ProxyCommand ssh user@secure nc %h %p 2>/dev/null
A carne dessa configuração é a ProxyCommand
diretiva. Ele usa o netcat para se conectar ao web1, essencialmente criando um túnel para se conectar ao servidor web1. Agora, sempre que você executá- ssh web1
lo, será como se você tivesse uma conexão direta com o servidor.
Observação: se você não tiver as chaves SSH configuradas, será solicitada a senha duas vezes: uma para estabelecer a conexão proxy e outra para o login real no web1.
Venho usando esse truque há algum tempo para contornar firewalls e regras de rede. Espero que você também possa adicioná-lo ao seu saco de truques!
<a href=” http://thenounproject.com/noun/laptop/#icon-No114 “target=” blank”> </a> Laptop de O Projeto Substantivo
<a href =” http://thenounproject.com/ substantivo / internet / # icon-No3067 “target =” blank “> Internet </a> projetado por <a href=” http://thenounproject.com/fernando.yellow” target=” blank”> Fernando Vasconcelos </ a > a partir do Projeto Substantivo
<a href=” http://thenounproject.com/noun/servers/#icon-No3149 “target=” blank”> Servidores </a> desenhado por <a href =” http: // thenounproject .com / danielcampos15 “target =” _ blank “> Daniel Campos </ a> do Projeto Noun