1

Я пытаюсь использовать свой маршрутизатор openwrt для подключения к моей домашней сети, и я могу подключиться к серверу vpn, но мне нужно переадресовать или подключить vpn, чтобы все, что поступает через маршрутизатор через проводной коммутатор или wifi, затем маршрутизировалось через VPN. Проще говоря, клиенты ---> маршрутизатор (клиент vpn) ---> сервер vpn.

Неважно, смогу ли я получить доступ к ресурсам в моей домашней сети, поскольку он туннелируется через мою домашнюю сеть, поэтому я, похоже, использую свой домашний IP-адрес. Я также не уверен, использовать ли tap или tun. Любая помощь будет оценена.

Кстати, я использую всю командную строку, потому что у меня есть флэш-маршрутизатор 4 Мб, поэтому мне пришлось создать собственный образ без графического интерфейса, чтобы я мог вместить openvpn.

У меня есть некоторые настройки брандмауэра, чтобы попытаться направить трафик, но я думаю, что мне нужен, вероятно, мост, так как я сейчас использую tap. У меня также есть redirect-gateway-def1 в моем файле конфигурации openvpn. Я думаю, что я спрашиваю, как создать мост для моих целей. мой текущий файл etc/config/firewall содержит эти строки, которые относятся к vpn.

config zone
option name 'VPN_client1'
option masq '1'
option input 'ACCEPT'
option forward 'REJECT'
option output 'ACCEPT'
list network 'VPN_client1'

config forwarding
option dest 'lan'
option src 'VPN_client1'

config forwarding
option dest 'VPN_client1'
option src 'lan'

С компьютера, подключенного к маршрутизатору, он может пропинговать маршрутизатор и все. Кстати, этот вопрос был сброшен с сервера, поэтому я разместил его здесь.

Кстати мой сервер openvpn работает на ddwrt на моем домашнем маршрутизаторе с использованием Tun.

1 ответ1

1

Итак, насколько я понимаю, у вас уже есть запущенный и работающий сервер OpenVPN.

Что касается tun и tap: и сервер, и клиенты должны использовать одинаковую конфигурацию. Если вам не нужен Ethernet Bridging, используйте tun , потому что он вносит меньше накладных расходов.

Сначала мы обновим конфигурацию вашей сети, чтобы включить интерфейс VPN:

config interface 'vpn'
        option ifname 'tun0'
        option proto 'none'

Это необходимо для интеграции VPN-подключения в сетевую систему OpenWrt. Конечно, если вы используете tap , вам придется изменить интерфейс на tap0 .

Затем, при необходимости, удалите следующие строки из /etc/config/firewall:

config forwarding
        option src              lan
        option dest             wan

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

В том же файле добавьте новую зону и настройте переадресацию:

config zone
        option name             vpn
        list   network          'vpn'
        option input            REJECT
        option output           ACCEPT
        option forward          REJECT
        option masq             1

config forwarding
        option src              lan
        option dest             vpn

Использование MASQUERADE и tun упрощает эту настройку, поскольку VPN-серверу не нужно знать о клиентах маршрутизаторов, и нам также не требуется мостовое соединение, что снижает накладные расходы. Раздел forwarding позволяет маршрутизировать трафик локальной сети через ваше VPN-соединение.

Далее ваша конфигурация VPN. Есть некоторые вещи, которые нужно иметь в виду.

Поскольку мы явно указали интерфейс, который, как мы ожидаем, будет использовать VPN-соединение, мы должны сделать то же самое в вашей конфигурации VPN:

dev tun0

Кажется, у вас это уже есть, но для других, опять же, нам нужно перенаправить трафик через VPN-соединение. OpenVPN уже предлагает отличный вариант для этого:

redirect-gateway def1

Эта опция также обеспечивает доступ к вашему VPN-серверу.

Если ваша конфигурация OpenVPN содержит следующую строку, удалите ее:

persist-tun

После внесения этих изменений перезагрузите маршрутизатор. Помните: если вы удалили раздел forwarding , вы не сможете получить доступ к Интернету.

Теперь запустите OpenVPN:

/etc/init.d/openvpn start

Если сейчас все работает нормально, вы можете постоянно включать OpenVPN:

/etc/init.d/openvpn enable

Имейте в виду, что: OpenVPN зависит от правильности даты и времени, чтобы проверить, действительны ли сертификаты. Ваш маршрутизатор, вероятно, не имеет часов реального времени, то есть каждый раз он запускается с 1 января 1970 года. Затем зависит от NTP-серверов в Интернете, чтобы получить текущую дату и время. Это означает, что OpenVPN не будет подключаться до тех пор, пока это не будет завершено, поскольку ваши сертификаты недействительны 1 января 1970 года.

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