Configuração do OpenVPN com várias sub-redes AWS VPC

Configuração do OpenVPN com várias sub-redes AWS VPC

Eu tenho um servidor OpenVPN rodando no Ubuntu 12.04 em um AWS VPC com 3 sub-redes. Consigo conectar meu cliente e executar ping no servidor (10.8.0.1) sem problemas, mas não consigo acessar nenhuma outra máquina na VPC do meu cliente.

Algumas informações básicas:

Posso executar ping no servidor por si mesmo.

Posso executar ping no servidor a partir do cliente.

NÃO POSSO executar ping no cliente do servidor.

Posso executar ping em máquinas na VPC a partir do servidor.

NÃO POSSO executar ping em máquinas na VPC (além do servidor) do meu cliente.

Ativei o encaminhamento IPV4 no servidor.

Desativei a verificação de origem/destino.

Configurei minhas tabelas de rotas no VPC para rotear o tráfego 10.8.0.0/16 para minha instância OpenVPN.

Sub-redes VPC:

10.0.0.0/24
10.0.1.0/24
10.0.2.0/24

O servidor OpenVPN está rodando em 10.0.2.0/24 e sou capaz de executar ping em qualquer servidor nas outras sub-redes, é o cliente que não consegue acessar nada nas sub-redes.

Configuração do servidor:

port 80
proto tcp
dev tun
ca ca.crt
cert server.crt
key server.key  # This file should be kept secret
dh dh1024.pem
server 10.8.0.0 255.255.0.0
ifconfig-pool-persist ipp.txt
push "route 10.0.0.0 255.0.0.0"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
keepalive 10 120
tls-auth ta.key 0 # This file is secret
comp-lzo
max-clients 100
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log         openvpn.log
verb 6
mute 20

Configuração do cliente:

client
dev tun
proto tcp
remote xx.xx.xxx.xxx 80
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert olo-imac.crt
key olo-imac.key
tls-auth ta.key 1
comp-lzo
verb 3

Rotas do servidor:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         10.0.2.1        0.0.0.0         UG    100    0        0 eth0
10.0.2.0        *               255.255.255.0   U     0      0        0 eth0
10.8.0.0        10.8.0.2        255.255.0.0     UG    0      0        0 tun0
10.8.0.2        *               255.255.255.255 UH    0      0        0 tun0

Rotas do cliente:

Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.36.1   192.168.36.120     10
         10.0.0.0        255.0.0.0         10.8.0.5         10.8.0.6     30
         10.8.0.1  255.255.255.255         10.8.0.5         10.8.0.6     30
         10.8.0.4  255.255.255.252         On-link          10.8.0.6    286
         10.8.0.6  255.255.255.255         On-link          10.8.0.6    286
         10.8.0.7  255.255.255.255         On-link          10.8.0.6    286
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
     192.168.36.0    255.255.255.0         On-link    192.168.36.120    266
   192.168.36.120  255.255.255.255         On-link    192.168.36.120    266
   192.168.36.255  255.255.255.255         On-link    192.168.36.120    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link    192.168.36.120    266
        224.0.0.0        240.0.0.0         On-link          10.8.0.6    286
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link    192.168.36.120    266
  255.255.255.255  255.255.255.255         On-link          10.8.0.6    286

Responder1

Em resposta aos comentários do CIGuy acima.

Execute o tcpdump no seu servidor OpenVPN. você poderá ver se os pacotes estão realmente sendo encaminhados do servidor para outros hosts na rede remota.

Algo como:

tcpdump -i any -v host <ip> 

onde está o ip que você está tentando fazer ping. Você também pode gravar a captura de pacotes em um arquivo para análise posterior no wireshark adicionando

-s0 -w somefile.pcap

Tenha em mente que algumas versões do tcpdump farão o chroot sozinho, então se somefile.pcap não mostrar onde você espera que esteja, verifique /var/lib/tcpdump/

informação relacionada