Настройка OpenVPN с несколькими подсетями AWS VPC

Настройка OpenVPN с несколькими подсетями AWS VPC

У меня есть сервер OpenVPN, работающий на Ubuntu 12.04 в AWS VPC с 3 подсетями. Я могу подключить своего клиента и могу пинговать сервер (10.8.0.1) без проблем, однако я не могу связаться ни с одной другой машиной в VPC с моего клиента.

Немного справочной информации:

Я могу пропинговать сервер с него самого.

Я могу пинговать сервер с клиента.

Я НЕ МОГУ пропинговать клиента с сервера.

Я могу пинговать машины в VPC с сервера.

Я НЕ МОГУ пинговать машины в VPC (кроме сервера) со своего клиента.

Я включил переадресацию IPV4 на сервере.

Я отключил проверку источника/назначения.

Я настроил таблицы маршрутизации в VPC для маршрутизации трафика 10.8.0.0/16 на мой экземпляр OpenVPN.

Подсети VPC:

10.0.0.0/24
10.0.1.0/24
10.0.2.0/24

Сервер OpenVPN работает на 10.0.2.0/24, и я могу выполнить с него ping на любой сервер в других подсетях, но клиент не может получить доступ ни к чему в подсетях.

Конфигурация сервера:

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

Конфигурация клиента:

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

Маршруты сервера:

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

Клиентские маршруты:

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

решение1

В ответ на комментарии CIGuy выше.

Запустите tcpdump на вашем сервере OpenVPN. Вы сможете увидеть, действительно ли пакеты пересылаются с сервера на другие хосты в удаленной сети.

Что-то вроде:

tcpdump -i any -v host <ip> 

где находится ip, который вы пытаетесь пинговать. Вы также можете записать захват пакетов в файл для последующего анализа в wireshark, добавив

-s0 -w somefile.pcap

Имейте в виду, что некоторые версии tcpdump выполняют chroot-переход, поэтому если somefile.pcap не отображается там, где вы ожидаете, проверьте /var/lib/tcpdump/

Связанный контент