Назад | Перейти на главную страницу

OpenVPN не маршрутизируется по маршруту по умолчанию

Я установил сервер OpenVPN для подсети 10.8.0.0/24 с ограниченным доступом к внутренней сети. Кроме того, я хочу вручную настроить 10.8.1.0/24 со статическими IP-адресами для выбранных клиентов, чтобы предоставить им дополнительные разрешения (например, доступ по SSH).

Контроль доступа осуществляется через iptables и работает должным образом.

Теперь я отправляю маршрут на внешний IP-адрес (в этом примере 10.10.10.10) с веб-сервером, работающим на портах 80 и 443.

При подключении к VPN без специальной конфигурации клиента и, таким образом, получения IP-адреса 10.8.0.0/24 у меня нет проблем с доступом к веб-серверу 10.10.10.10. Я могу видеть пакеты, поступающие на tun0 и покидающие сервер на p4p1 (внешний интерфейс). При подключении к VPN с конкретной конфигурацией клиента и, таким образом, получением IP-адреса 10.8.1.0/24 я могу проверить связь со всеми внутренними серверами, но пакеты, предназначенные для 10.10.10.10, не будут ретранслироваться ни на один физический интерфейс на сервере VPN ( проверил в дампах TCP).

Относительно этого отрывок из конфигурации сервера OpenVPN:

server 10.8.0.0 255.255.255.0
push "route 10.10.10.10 255.255.255.255"
client-config-dir /etc/openvpn/ccd
route 10.8.1.0 255.255.255.0
client-to-client
comp-lzo
persist-key
persist-tun

конфигурация клиента / etc / openvpn / ccd / some-client:

ifconfig-push 10.8.1.133 10.8.1.134

Поскольку трафик работает через любой конкретный маршрут, указанный во внутреннем интерфейсе (p1p1), я предполагаю, что OpenVPN неправильно перенаправляет трафик по маршруту по умолчанию, идущему на интерфейс p4p1, но я не знаю, почему он это делает и как это может быть фиксированный.

Какие-либо предложения?

Как сказал Диамант, веб-серверу также необходим обратный путь к 10.8.1.0/24 через VPN-сервер. В качестве альтернативы VPN-сервер необходимо настроить для выполнения NAT для запросов к веб-серверу.

Кроме того, я не уверен в этом, но вам может потребоваться добавить push "route 10.8.0.0 255.255.0.0" в конфигурацию вашего сервера.

EDIT: меня беспокоит сетевая маска в конфигурации сервера. Вместо предложенного выше предложения попробуйте удалить server 10.8.0.0 255.255.255.0 строку в конфигурации сервера и добавив вместо этого:

mode server
tls-server
ifconfig 10.8.0.1 255.255.254.0    # different netmask to support 10.8.1.0/24 range
ifconfig-pool 10.8.0.0 10.8.0.253
route-gateway 10.8.0.1
push "route-gateway 10.8.0.1"

EDIT2: добавлены недостающие строки конфигурации