VPN-сервер и клиент (возможно) на одной машине

То, что я пытаюсь достичь, это:

  • Подключитесь к VPN как клиент и направьте весь трафик моей внутренней сети через VPN.

  • Запустите VPN-сервер, чтобы внешние пользователи могли подключиться к моей внутренней сети и маршрутизироваться через клиент VPN.

Я пытаюсь добиться этого с помощью роутера с запущенным dd-wrt (netgear D6200) и / или Raspberry Pi.

Может кто-нибудь сказать мне, если это может быть достигнуто, и если, направить меня к тому, что было бы возможным решением?

(Я не ищу учебник, просто направление)

Спасибо!

1 ответ

Да, это возможно с dd-wrt в Netgear. В Raspberry нет необходимости (если только вы не собираетесь запускать на нем удаленный VPN-сервер).

  1. Настройте и запустите VPN-сервер на dd-wrt - и попробуйте подключиться, подключив клиентов. Оба tun / tap должны работать в целом (с запущенным VPN-клиентом). Я тестировал с tun.

  2. Настройте и запустите VPN-клиент на dd-wrt и попробуйте подключиться к своему VPN-серверу. По умолчанию маршрутизатор должен начать направлять весь трафик (для своих клиентов LAN) через сервер VPN. Все идет нормально.

Проблема возникает, когда вы хотите, чтобы клиенты VPN dd-wrt (а не только клиенты LAN) использовали один и тот же маршрут. Если VPN-клиент работает на dd-wrt, собственные VPN-клиенты dd-wrt не смогут подключиться к VPN-серверу, работающему на dd-wrt как таковом. Чтобы заставить его работать, см. Ниже.

  1. Это возможно только через PBR - т.е. вы запускаете VPN-клиент на dd-wrt, но снимаете сам маршрутизатор с этого клиента и маршрутизируете только определенных клиентов через этого VPN-клиента, работающего на dd-wrt.

С помощью некоторых настроек с использованием масок подсети можно включить все ваши IP-адреса LAN и VPN в политику PBR, чтобы все (кроме самого маршрутизатора) маршрутизировалось через удаленный сервер VPN.

Ключ - включить виртуальные IP-адреса VPN-клиентов dd-wrt в PBR. При настройке VPN-сервера на dd-wrt есть поле для указания сети клиентов и сетевой маски. Если вы используете этот сетевой IP-адрес и сетевую маску в политике PBR клиентского процесса, ваши (dd-wrt) VPN-клиенты смогут подключаться к VPN-серверу, работающему на dd-wrt, и, в свою очередь, будут маршрутизироваться через удаленный VPN-сервер, на который dd-wrt подключается как клиент.

Эта тема, вероятно, не принадлежит здесь.

Рассмотреть возможность использования OpenWRT вместо dd-wrt, OpenWRT предоставляет вам удобную систему сборки, которую проще настраивать и собирать. Я не защищаю OpenWRT, Это может быть мерой остановки разрыва.

  1. Вы можете настроить сервер OpenVPN и клиент OpenVPN, используя стандартную документацию, доступную на OpenWRT Wiki, а также на сайте OpenVPN.

  2. Добавить в OpenVPN server.conf следующая директива redirect-gateway def1, Это подтолкнет шлюз по умолчанию к клиентам, подключающимся к серверу OpenVPN. Кроме того, убедитесь, что вы используете уникальный сетевой IP-пул для VPN-клиентов и не конфликтует с удаленным VPN-сервером.

  3. Убедитесь, что вы маскируете VPN-трафик (клиенты локального VPN-сервера), прежде чем перенаправлять его на удаление VPN-сервера. Это может быть сложно, так как этот интерфейс не существует во время загрузки. Это должно быть настроено с помощью up а также down скрипты

  4. Убедитесь, что вы разрешаете пересылку трафика (клиентов локального VPN-сервера) через интерфейс VPN в правилах брандмауэра.

Перед настройкой сервера OpenVPN убедитесь, что

  1. Удаленный VPN-сервер выдвигает шлюз по умолчанию к вашему VPN-клиенту
  2. Вы правильно настроили брандмауэр

  3. Вы можете получить доступ к облаку через удаленный VPN-сервер. Проверка с какого-то сайта, как www.whatismyip.com поможет

Другие вопросы по тегам