Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    OpenVPN Client -> External VPN Service provider

    Scheduled Pinned Locked Moved Russian
    35 Posts 3 Posters 5.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      dvv06
      last edited by

      т.е получается, что
      1. те компьютеры которые ходят через прокси и шлюзом указан мултиван - всеравно ходят в тунель впн
      2. те компьютеры которые не ходят через прокси и указан мултиван - ходят мимо тунеля
      3. правило стоящее выше всех и указывающее определенным ip ходить через впн тунель - не нужно т.к п.1
      –
      если это не моя ошибка, то это ведь баг pfsense...

      1 Reply Last reply Reply Quote 0
      • P
        pigbrother
        last edited by

        Сквид, насколько я знаю,  умеет работать только с default gateway. По крайней мере - в новых версиях pfSense.
        Как и можно ли это победить - вам, возможно, подскажут.
        Я сквид не использую и ничего сказать не могу.
        Без сквида направление любого IP из LAN через любой шлюз работает.

        1 Reply Last reply Reply Quote 0
        • D
          dvv06
          last edited by

          Если  кто-то также столкнулся с проблемой заворачивания всего интернет канала в тунель впн на клиенте (т.е сервером впн присылается команда "redirect-gateway def1"). нашел статью с 2 вариантами обхода.
          https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway

          1 Reply Last reply Reply Quote 0
          • P
            pigbrother
            last edited by

            Пусть меня поправят, но именно redirect-gateway def1 в вашем случае обеспечивает "наличие интернета" на OPVN-интерфейсе.
            Вопрос теперь у меня - обойдя заворачивания всего интернет канала через запрет redirect-gateway def1 вы не потерли собственно доступ в интернет через туннель?

            1 Reply Last reply Reply Quote 0
            • D
              dvv06
              last edited by

              так в этом и смысл, если я в правилах фаервола пишу явно шлюзом впн-шлюз, тогда я могу выпустить определенные ip через этот тунель, а остальные через тунель по умолчанию (т.е мультиван). Если же принудительно присылают, как клиенту впн, команду redirect gateway def1, то затирается маршрут по умолчанию со шлюзом мультиван.

              pigbrother:
              "Пусть меня поправят, но именно redirect-gateway def1 в вашем случае обеспечивает "наличие интернета" на OPVN-интерфейсе.
              Вопрос теперь у меня - обойдя заворачивания всего интернет канала через запрет redirect-gateway def1 вы не потерли собственно доступ в интернет через туннель? "

              • Будет. Я настраивал впн-сервер на pfsense и подключаюсь клиентом, так вот в настройках сервера есть галочка - "Redirect Gateway" Force all client generated traffic through the tunnel.
                как раз и отвечающая за подмену шлюза по умолчанию на клиенте .
                Я ее не ставлю и клиенты впн ходят по своему интернету домашнему, а если нужнасетка впн-сервера то спокойно видят клиенты за ним.

              Если кому нужны бесплатные впн-сервера, есть ресурс
              http://www.vpngate.net/en/
              там и uptime их написан и скорость, и др.инфа

              1 Reply Last reply Reply Quote 0
              • werterW
                werter
                last edited by

                Доброе.
                Немного добавлю.

                а если нужнасетка впн-сервера то спокойно видят клиенты за ним.

                Если нужна впн-сетка клиентам и вы "рулите" впн-сервером :
                1. Можно пУшить маршрут клиентам на впн-сервере - push "route …" (или в веб-фейсе как сейчас реализовано указать Local networks)
                2. В особых случаях, можно не пУшить сервером, а руками в конфиге каждого клиента добавить route до нужной клиенту сети за впн-сервером.

                1 Reply Last reply Reply Quote 0
                • D
                  dvv06
                  last edited by

                  @werter:

                  Доброе.
                  Немного добавлю.

                  а если нужнасетка впн-сервера то спокойно видят клиенты за ним.

                  Если нужна впн-сетка клиентам и вы "рулите" впн-сервером :
                  1. Можно пУшить маршрут клиентам на впн-сервере - push "route …" (или в веб-фейсе как сейчас реализовано указать Local networks)
                  2. В особых случаях, можно не пУшить сервером, а руками в конфиге каждого клиента добавить route до нужной клиенту сети за впн-сервером.

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

                  1 Reply Last reply Reply Quote 0
                  • P
                    pigbrother
                    last edited by

                    Будет. Я настраивал впн-сервер на pfsense и подключаюсь клиентом, так вот в настройках сервера есть галочка - "Redirect Gateway" Force all client generated traffic through the tunnel.
                    Именно. Redirect Gateway" Force all client generated traffic through the tunnel" как раз и передает клиентам вашего сервера директиву redirect-gateway def1, и они начинают ходить в инет через ваш pfSense.

                    Ваш же случай - pfSense выступает клиентом и redirect-gateway добавляет этому клиенту (этому интерфейсу OVPN) шлюз в интернет. Без  redirect-gateway клиент получит адрес из сети удаленного OVPN-сервера но не получит шлюза в 0.0.0.0, без которого доступ в интернет невозможен.
                    Именно redirect-gateway def1 создает для вас еще один как-бы WAN. Почему как-бы? Потому, что он создается поверх уже имеющегося WAN.
                    Повторю. Использовалось на версии до 2.2 Я не использовал сквид. И правилами на LAN можно было выпускать любые IP\Алиасы IP через любой имеющийся в pfSense шлюз (группу мультиван, шлюзы, входящие в мультиван по отдельности, шлюз OVPN клиента) на выбор, создав на LAN нужные правила и расставив их в определенном порядке.

                    1 Reply Last reply Reply Quote 0
                    • D
                      dvv06
                      last edited by

                      в настроеном мной pfsense servere эта галочка НЕ СТОИТ. Клиенты подключаются к нему и т.о им доступны ресурсы сети за шлюзом pfSense, а на домашних устройствах они испоьзуют своих провайдеров и ходят через них. Стоило бы мне на моем сервере поставить эту галку, так на стороне клиента это выглядело бы как если бы раздавал ему инет а не их домашний провайдер. то, что вы говорите - я кажется понимаю, без этой директивы я как клиент впн буду как бы частью сети во главе с впн сервером, но интернет от него я не получу т.к он не является шлюзом по умолчанию у меня на клиенте.

                      тогда какже это реализовать…

                      Я сейчас проделал следующее подключился клиентом к внешнему провайдеру vpn

                      • весь трафик завернуло в впн, т.к пришла директива от сервера впн

                      • потом я применил на клиенте (https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway)
                        route 0.0.0.0 192.0.0.0 net_gateway
                        route 64.0.0.0 192.0.0.0 net_gateway
                        route 128.0.0.0 192.0.0.0 net_gateway
                        route 192.0.0.0 192.0.0.0 net_gateway
                        маршрут поумолчанию изменился на моего провайдера (НЕ ТУНЕЛЬ)
                        тунель впн в состоянии подключен

                      • потом добавил в маршрут диапазон ip сайтов доступ к которым я хочу получить по каналу впн с явным указанием шлюза openvpn
                          tracert ом проверяю - идет в канал впн, но сайт заблокирова всеравно

                      на этом пока застопорился

                      я еще попробую без сквида, если все-таки можно будет выбирать элиасы, тогда это уже косяк сквида а не пфсенса...

                      1 Reply Last reply Reply Quote 0
                      • P
                        pigbrother
                        last edited by

                        в настроеном мной pfsense servere эта галочка НЕ СТОИТ. Клиенты подключаются к нему и т.о им доступны ресурсы сети за шлюзом pfSense, а на домашних устройствах они испоьзуют своих провайдеров и ходят через них. Стоило бы мне на моем сервере поставить эту галку, так на стороне клиента это выглядело бы как если бы раздавал ему инет а не их домашний провайдер. то, что вы говорите - я кажется понимаю, без этой директивы я как клиент впн буду как бы частью сети во главе с впн сервером, но интернет от него я не получу т.к он не является шлюзом по умолчанию у меня на клиенте.

                        Все верно.

                        - потом я применил на клиенте (https://community.openvpn.net/openvpn/wiki/IgnoreRedirectGateway)
                        С этим дела не имел и не подскажу ничего.

                        я еще попробую без сквида, если все-таки можно будет выбирать элиасы, тогда это уже косяк сквида а не пфсенса.
                        Да, AFAIK, это особенность сквида - использовать исключительно системный default gateway. Как это обойти в актуальных версиях pfSense вроде были посты, но, повторю, я от темы сквида далек.

                        1 Reply Last reply Reply Quote 0
                        • werterW
                          werter
                          last edited by

                          Доброе.

                          tracert ом проверяю - идет в канал впн, но сайт заблокирова всеравно

                          Конечно. У вас же обращение к dns идет не через vpn. У вашего пров-ра блокировка через dns реализована.
                          Раздайте по dhcp те же 8.8.8.8, 8.8.4.4 своим локальным клиентам в кач-ве dns. И заверните трафик к 8.8.8.8, 8.8.4.4 через ваш туннель. Или же сделайте так, чтобы сам пф обращался к dns-серверам только через туннель. И на клиентах неплохо бы сделать ipconfig /flushdns после этого.

                          P.s. Купите в Европе самый дешевый VPS за 5-10$ в мес. Разверните debian\centos minimal. И прикрутите это - http://pritunl.com/ (https://github.com/pritunl/pritunl , демка - http://demo.pritunl.com/), https://techknight.eu/2016/05/15/deploy-pritunl-ubuntu/
                          Дел - на 15 минут. Все рулится через веб-фейс. И вы сам себе хозяин.

                          P.s2. Признайтесь, в ОК и ВК пытаетесь попасть ?  ;)

                          P.s3. Написал и подумал. А ведь это же готовый бизнес-план  8)

                          1 Reply Last reply Reply Quote 0
                          • P
                            pigbrother
                            last edited by

                            Кстати, по поводу DNS и OVPN.
                            Если в Client Specific Overrides или настройках самого сервера задать DNS Servers, и передать клиенту через
                            push "block-outside-dns"; или явно указать block-outside-dns в конфиге клиента, то есть все имеющиеся в системе DNS будут игнорироваться, а использоваться только те, что передаются через OVPN.
                            Это работает, проверял, по крайней мере, для клиентов Windows 8.1, и наверное, более новых.
                            Клиент в логе пишет:
                            Sun May 21 18:56:03 2017 Blocking outside dns using service succeeded.
                            Возможно это можно реализовать и когда pfSense  сам является клиентом OVPN.

                            P.s. Купите в Европе самый дешевый VPS за 5-10$ в мес. Разверните debian\centos minimal. И прикрутите это - http://pritunl.com/ (https://github.com/pritunl/pritunl , демка - http://demo.pritunl.com/), https://techknight.eu/2016/05/15/deploy-pritunl-ubuntu/
                            Дел - на 15 минут. Все рулится через веб-фейс. И вы сам себе хозяин.

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

                            1 Reply Last reply Reply Quote 0
                            • werterW
                              werter
                              last edited by

                              Доброе.
                              Спасибо за block-outside-dns

                              server.conf

                              push "dhcp-option DNS x.x.x.x"  # Push your preferred VPN DNS - google eg. 8.8.8.8
                              push "block-outside-dns"        # Block access to any other DNS

                              Otherwise, you can simply add block-outside-dns to your Windows 10 client config files.

                              P.s. По сквиду попробовать в Services -> Proxy server -> General -> Custom Options добавить tcp_outgoing_address 127.0.0.1;

                              1 Reply Last reply Reply Quote 0
                              • D
                                dvv06
                                last edited by

                                я все-таки не хочу прыгать с одной системы на другу и останусь на pfsense.
                                Насчет DNS провайдера я не подумал, спасибо за наводку (хотя это первое о чем надо было подумать)
                                Думаю если в General Setup указать внешний днс с привязкой к openvpn шлюзу, то если не ошибаюсь на клиентах ничего не потребуется менять…
                                раздать клиентам гулевские днс не получится, у них днс - контролер домена, это вызовет проблемы как участников домена.
                                да и весь трафик тогда пойдет с откликом от гуглевских, а не провайдеровского днс с 2 мс.
                                Но идея понятна - для тунеля не использовать днс провайдера
                                может быть в сетевом интерфейсе впн указать явно днс гугла?

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

                                P.S: проверил на windows 7 клиенте openvpn.
                                добавил маршрут к нужным сайтам через впн шлюз
                                указал гуглевские днс.
                                теперь у меня скорость всех сайтов от провайдера, а на нужные ходит по узкому каналу впн.

                                завтра попробую на pfsense

                                Отдельное спасибо за терпение и помощь werter и pigbrother. Может быть мой опыт поиска решения будет кому-то полезен ;-)

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pigbrother
                                  last edited by

                                  я все-таки не хочу прыгать с одной системы на другу и останусь на pfsense.

                                  Совет ув. Werter Купить в Европе самый дешевый VPS касается не смены платформы, а организации собственного удаленного сервера с поднятым на нем OpenVPN.

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    dvv06
                                    last edited by

                                    Отчет об экспериментах:
                                    1. в General Setup оставил только внешние DNS (например 8.8.8.8, 8.8.4.4)
                                    т.к провайдер сделал переопределение имя-ip и трасировка проходит по маршруту к его внутреннему адресу
                                    2. Создал правило для тестовых сайтов через шлюз vpn для определенных lan_ip
                                    3.  настроил подключение впн клиента по конфигу из *.ovpn
                                    но отключил две опции

                                    • Don't pull routes
                                    • Don't add/remove routes
                                      –----
                                      В итоге соединение происходит, шлюз не переназначается на впн, а остается мультиван, и на все сайты кроме указаных ходит через провайдера, а к тестовым сайтам через впн тунель (добавил тестовый компьютер в группу, которая ходит напрямую в инет минуя прокси)

                                    Что смущает:
                                    1. в логах после установления успешного соединения повторяется строки
                                    May 23 14:24:01 openvpn 37012 MANAGEMENT: Client disconnected
                                    May 23 14:24:01 openvpn 37012 MANAGEMENT: CMD 'status 2'
                                    May 23 14:24:01 openvpn 37012 MANAGEMENT: CMD 'state 1'
                                    May 23 14:24:01 openvpn 37012 MANAGEMENT: Client connected from /var/etc/openvpn/client2.sock
                                    May 23 14:15:52 openvpn 37012 MANAGEMENT: Client disconnected
                                    May 23 14:15:52 openvpn 37012 MANAGEMENT: CMD 'status 2'
                                    May 23 14:15:52 openvpn 37012 MANAGEMENT: CMD 'state 1'
                                    May 23 14:15:52 openvpn 37012 MANAGEMENT: Client connected from /var/etc/openvpn/client2.sock

                                    • возможно это неважно и указывает на то, что я не дал шлюзу впн передать мне маршруты и свой шлюз впн

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

                                    1 Reply Last reply Reply Quote 0
                                    • werterW
                                      werter
                                      last edited by

                                      Доброе.
                                      Что за правило прокси? Скрины.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        dvv06
                                        last edited by

                                        вот скрин локальнойго интерфейса
                                        и правило для впн с Sites_Test вверху
                                        https://ru.files.fm/u/2g99qy3r#_

                                        1 Reply Last reply Reply Quote 0
                                        • werterW
                                          werter
                                          last edited by

                                          Предпоследнее правило. Что за LAN2 net в dest  ?

                                          Просьба. Цепляйте картинки здесь же.

                                          1 Reply Last reply Reply Quote 0
                                          • D
                                            dvv06
                                            last edited by

                                            по диапазону LAN2 = InternetWorkstation = 192.168.1.0/24
                                            предпоследнее правило это заворот на прокси всего исходящего трафика (или я  не правильно сделал? у меня этот конфиг идет еще с pfsense 2.0 ничего не меняю, только дополняю).

                                            P.S: мне стыдно, но я не могу понять как это сделать с картинками
                                            вижу тэги ![vpn6.png](, вижу Attach (выбираю файл) не вижу загрузки
                                            <br>
                                            <br>
                                            <img class=) vpn6.png_thumb" />

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.