As rotas para tun0 estão incorretas: as máscaras de rede são 255.255.255.255
(não há ip correspondente a essa rota).
Você provavelmente precisará de 255.255.255.0
oder 255.255.0.0
dependendo de como você configurou sua VPN.
Estou executando o CentOS 6. Ele está conectado ao OpenVPN com as seguintes rotas:
Destination Gateway Genmask Flags Metric Ref Use Iface
100.207.0.0 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
101.19.0.0 0.0.0.0 255.255.255.255 UH 0 0 0 tun0
10.97.156.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 10.97.156.1 0.0.0.0 UG 0 0 0 eth0
Quando conectado, meu ifconfig mostra o endereço correto para tun0:
inet addr:101.19.23.64
Depois de configurar a VPN, reinicio o sshd.
Quando tento ssh neste sistema a partir de um host na VPN, a tentativa de conexão atinge o tempo limite.
Se eu usar tcpdump -i tun0
, obtenho:
09:25:30.592685 IP 100.207.1.200.26605 > 101.19.23.64.ssh: Flags [S], seq 2108197737, win 8192, options [mss 1366,nop,nop,sackOK], length 0
No entanto, nenhuma resposta volta pelo túnel. A resposta não está sendo enviada através da eth0 - eu prendi a eth0 e não tive um pacote tentando voltar para 100.207.1.200.
Eu sei que o sshd está escutando em todas as interfaces porque netstat -l
mostra:
tcp 0 0 *:ssh : LISTEN
Eu até me certifiquei de que meus iptables permitissem conexões de entrada na porta VPN e na porta SSH, embora isso não devesse ser um problema, porque as conexões deveriam estar se conectando na sessão VPN atual.
Alguma ideia? Estou perplexo, porque, até onde sei, tudo está configurado corretamente.
Tags openvpn centos ip-routing