Por que meu servidor ssh IPv6 do Ubuntu não funciona?

3

Não estou conseguindo configurar meu servidor Ubuntu (16.04 LTS) com o OpenSSH via IPv6. O servidor está rodando dentro de uma Máquina VirtualBox, que tem sua interface de rede definida como "bridge de rede" (se essa for a tradução correta do alemão).

Eu posso usar o IPv4 na minha rede doméstica, ou seja, o seguinte funciona sem problemas:

ssh [email protected]

No entanto, meu ISP (Vodafone / Kabel Deutschland) aparentemente está migrando seus clientes para o IPv6 e desativou o IPv4 com todos os seus recursos, incluindo o encaminhamento de porta, na unidade de roteador / modem que eles enviaram (versão de firmware de gateway de voz sem fio CH7466CE 4.50 18.16).

Por isso, tentei usar o ssh usando o IPv6 - mas sem dados! Qualquer tentativa de se conectar à caixa de fora da minha própria rede da seguinte forma:

ssh -6 [email protected]

resulta na seguinte mensagem de erro:

ssh: connect to host xxxx.dynv6.net port 22: No route to host

Isso é apesar de eu conseguir fazer o ping na caixa:

--- xxxx.dynv6.net ping6 statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/std-dev = 0.506/0.620/0.684/0.081 ms

Agora, pelo que entendi, esse é provavelmente um erro de roteamento / rede, pois o endereço IPv6 é um caminho direto para a caixa, portanto, ultrapassando totalmente o roteador. Estou certo até agora?

Com minhas habilidades (potencialmente sub-) médias, tentei resolver isso abrindo a porta 22 em ip6tables - mas novamente: sem dados!

Veja mais algumas informações caso isso ajude:

$ sudo lsof -i |grep ssh
sshd     2385     root    3u  IPv6  19777      0t0  TCP *:ssh (LISTEN)
sshd     2385     root    4u  IPv4  19785      0t0  TCP *:ssh (LISTEN)
sshd     2796     root    3u  IPv4  20851      0t0  TCP 192.168.0.14:ssh->192.168.0.8:62519 (ESTABLISHED)
sshd     2874    user1    3u  IPv4  20851      0t0  TCP 192.168.0.14:ssh->192.168.0.8:62519 (ESTABLISHED)

$ sudo netstat -l --numeric-ports | grep 22
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
unix  2      [ ACC ]     STREAM     LISTENING     20622    private/verify

$ sudo ip6tables -L -v -n
Chain INPUT (policy ACCEPT 116 packets, 39020 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp      enp0s3 *       ::/0                 ::/0                 tcp dpt:22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp      enp0s3 *       ::/0                 ::/0                 tcp dpt:22

Chain OUTPUT (policy ACCEPT 108 packets, 37676 bytes)
 pkts bytes target     prot opt in     out     source               destination        

Espero que esta informação seja decente o suficiente para começar. Eu passei uma boa parte de hoje tentando contornar esta questão, mas claramente não vou chegar lá sozinha. Espero que vocês possam ajudar!

Deixe-me saber se há alguma outra / mais informação que você precise.

JW

    
por JoW 26.07.2016 / 10:50

1 resposta

1

Problema (tipo de) resolvido!

Graças a @grawity eu investiguei a saída do traceroute6 e descobri que o IPv6 que eu usei não funcionou.

Ao usar

ip a show enp0s3

Eu recebo dois endereços IPv6 e pelo que eu li nas internets o primeiro é um derivado do endereço mac do meu sistema, o segundo é mais anônimo. De alguma forma, o último parece não funcionar no meu caso. Ora, eu não sei e, como não precisarei compartilhá-lo na Web, não me importo muito com isso.

Por enquanto, minha configuração DynDns IPv6 SSH funciona bem. Obrigado @grawity!

    
por 26.07.2016 / 14:42