Nenhum prompt de login Telnet quando usado sobre o túnel SSH

1

Eu tenho um dispositivo, vamos chamá-lo d1, rodando um Linux leve. Este dispositivo é NATed pela minha caixa de internet / roteador, portanto, não é acessível a partir da Internet. Esse dispositivo executa um daemon de telnet e tem apenas root como usuário (sem pwd). Seu endereço IP é 192.168.0.126 na rede privada.

Da rede privada (digamos 192.168.0.x), posso fazer:

telnet 192.168.0.126

Onde 192.168.0.126 é o endereço IP na rede privada. Isso funciona corretamente.

No entanto, para permitir a administração, preciso acessar o dispositivo de fora dessa rede privada. Por isso, criei um túnel SSH como este em d1:

ssh -R 4455:localhost:23 ussh@s1

s1 é um servidor em algum lugar da rede privada (mas isso serve apenas para fins de teste, vai acabar em algum lugar da Internet), executando uma distribuição Linux padrão e na qual eu criei um usuário chamado 'ussh'. s1 endereço IP é 192.168.0.48.

Quando eu 'telnet' com o seguinte, digamos de c1, 192.168.0.19:

telnet -l root s1 4455

Eu recebo:

Trying 192.168.0.48...
Connected to 192.168.0.48.
Escape character is '^]'.
Connection closed by foreign host

.

A conexão é fechada depois de aproximadamente 30 segundos e eu não fiz o log. Eu tentei sem o switch -l, sem sucesso algum. Eu tentei 'telnet' com endereços IP em vez de nomes para evitar problemas de DNS reverso (embora eu tenha adicionado ao d1 / etc / hosts uma linha referindo-se a s1 IP / nome, apenas no caso), sem sucesso. Eu tentei em outra porta que 4455, sem sucesso.

Eu juntei logs do Wireshark de s1. Eu posso ver:

s1 envia dados SSH para c1, c1 ACK
s1 executa uma solicitação de DNS AAAA para c1, obtém apenas os servidores de nomes Authoritave.
s1 executa uma solicitação de DNS e obtém o endereço IP de c1
s1 envia um pacote SYN para c1, c1 responde com um RST / ACK
s1 envia um SYN para c1, C1 RST / ACK (?)
Após 0,8 segundo, c1 envia um SYN para s1, s1 SYN / ACK e depois c1 ACK s1 envia conteúdo SSH para d1, d1 envia um ACK de volta para s1
s1 repete pedidos de AAAA e de DNS | Após 5 segundos, s1 repete um SYN para c1, mais uma vez é RST / ACKed por c1. Isso é repetido mais 3 vezes.
Os últimos cinco pacotes: d1 envia o conteúdo SSH para s1, s1 envia ACK e FIN / ACK para c1, c1 responde com FIN / ACK, s1 envia ACK para c1.

A conexão parece estar fechada pelo daemon de telnet após 22 segundos.

AFAIK, não há como decodificar o fluxo SSH, então estou muito preso aqui ...

Alguma idéia?

Obrigado!

    
por SCO 28.12.2010 / 13:20

1 resposta

0

Eu trabalhei nisso!

Na verdade, a interface de loopback não estava ativa em d1, portanto, o túnel não estava operacional. Notei que 'ping localhost' estava falhando, assim como 'telnet localhost'.

Eu criei um arquivo / etc / network / interfaces com a interface 'lo' e fiz um ifup lo.

    
por 29.12.2010 / 16:50