O Cygwin netcat nc não resolve os hosts através de / etc / hosts

1

Estou tentando usar o ssh para fazer login em servidores remotos e tenho uma configuração ProxyCommand em ~ / .ssh / config para usar um proxy (configuração por meio do PuTTY para conexão a uma VPN). O ProxyCommand usa o nc para conectar-se por meio do proxy (conforme descrito na resposta a Como posso usar o SSH com um proxy SOCKS 5? ), mas o nc parece não conseguir resolver o nome do host para um IP através do / etc / hosts antes de enviá-lo para o proxy, e o proxy não sabe como resolver o nome do host.

Por exemplo:

$ cat /etc/hosts
127.0.0.1       localhost
12.34.56.78     hostname1
12.34.56.79     hostname2


$ cat ~/.ssh/config
ProxyCommand /usr/bin/nc -x 127.0.0.1:7777 %h %p

Observe que a porta 7777 está configurada como uma porta dinâmica no PuTTY.

$ cat /etc/resolv.conf
lookup  file bind


$ cat /etc/nsswitch.conf
hosts:  files dns

Se eu usar ssh [email protected], a conexão será bem-sucedida, mas se eu usar ssh user @ hostname1, o hostname1 será passado para o proxy, em vez de ser resolvido para 12.34.56.78 e a conexão falhar. Alguém sabe de alguma configuração que precise ser feita para fazer a resolução do nome do host netcat através do / etc / hosts funcionar no cygwin?

Obrigado

    
por Rusty Lemur 24.10.2012 / 21:52

2 respostas

0

é / etc / hosts corretamente delimitados com qualquer terminação de linha necessária (CR ou CRNL)?

faz nc negligenciar / etc / hosts e olhar para% windir% \ system32 \ drivers \ etc \ hosts por acaso?

    
por 24.10.2012 / 22:49
0

O que acontece é que você está usando a substituição ssh_config% h, mas de acordo com o manual, isso não significa que o valor substituído também será pré-processado de alguma forma.

Mas, como o comando está sendo passado por um shell, você pode usar um subshell para executar um comando que fará uma resolução de nome, algo assim:

ProxyCommand /usr/bin/nc -x 127.0.0.1:7777 $(perl -MSocket -le 'print inet_ntoa inet_aton shift' %h) %p

Comando específico, cortesia de link

    
por 03.05.2015 / 11:05