1

Поэтому у меня есть сервер с публичным IP-адресом 101.102.103.104 (например). На этом сервере запущен сервер openvpn, а также куча других вещей, которые прослушивают общедоступные порты сетевого устройства ip.

Я хочу подключиться к 101.102.103.104 и направить весь будущий трафик на этот IP через VPN.

Так, например, если я curl 101.102.103.104:8080, он идет через соединение VPN.

Я попытался добавить push route к моему server.conf следующим образом:

push "route 101.102.103.104 255.255.255.255"

и я даже попытался добавить маршрут исключения:

push "route 101.102.103.104 255.255.255.255 net_gateway"

но я, похоже, не работал. работает sudo route -n все еще показывает маршрут, идущий через мой домашний маршрутизатор:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 wlan0
10.8.0.1        10.8.0.5        255.255.255.255 UGH   0      0        0 tun0
10.8.0.5        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
101.102.103.104  192.168.1.1     255.255.255.255 UGH   0      0        0 wlan0
192.168.1.0     0.0.0.0         255.255.255.0   U     9      0        0 wlan0

Есть мысли о том, как мне это сделать? Я полагал, что проблема, вероятно, заключалась в том, что я пытаюсь перенаправить трафик на сам сервер vpn, через сервер vpn, и, таким образом, образую некий бесконечный цикл, но это только предположение.

1 ответ1

0

Таблица маршрутизации, которую вы отображаете, явно не маршрутизирует весь трафик через VPN, как показано в самой первой строке. В своей нынешней конфигурации все, что он делает, это позволяет клиенту иметь доступ к локальной сети.

Команда для маршрутизации всего клиентского трафика через OpenVPN, включая весь трафик третьим сторонам (т. Е. Не LAN VPN-сервера)

  push "redirect-gateway def1"

который должен быть добавлен в файл конфигурации сервера (вам нужно будет перезапустить программу OpenVPN, чтобы изменения вступили в силу).

Кроме того, поскольку вы настроили маршрутизируемый OpenVPN, а не мостовой, вам необходимо активировать NATting на сервере:

  iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Это предполагает, что интерфейс сервера OpenVPN в Интернете (т. Е. Интерфейс с IP-адресом 101.102.103.104) называется eth0. Пожалуйста, отрегулируйте соответственно.

Чтобы проверить вашу конфигурацию, после того, как соединение с сервером OpenVPN установлено, введите следующую команду:

 wget 216.146.39.70:80 -O - -o /dev/null

Это выведет ваш очевидный IP-адрес. Если выходные данные содержат 101.102.103.104, все готово.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .