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

OpenVPN - неправильный роутинг на клиентах.

Scheduled Pinned Locked Moved Russian
24 Posts 4 Posters 15.3k 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.
  • B
    Bansher
    last edited by Dec 24, 2013, 11:03 AM

    Всем доброго времени.
    Имеем следующие грабли. При подключении OpenVPN, на клиенте отваливается интернет. Смотрим route print клиента, видим две конкурирующие строчки:

    Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
              0.0.0.0          0.0.0.0      192.168.1.1     192.168.1.34     10
              0.0.0.0        128.0.0.0         10.8.0.5         10.8.0.6     30
    

    При этом не смотря на метрики, "интернетный" трафик все равно пытается идти через локальный роутер в удаленной сети.
    Открываем консоль на клиентском компе и прибиваем неправильный маршрут:

    route delete 0.0.0.0 mask 128.0.0.0 10.8.0.5
    

    Появляется интернет, локалка через vpn работает, веселится и ликует весь народ.
    Вопрос: Чего подкрутить в настройках OpenVPN сервера (или клиента), чтобы паразитный роутинг на клиентах не поднимался?
    Сейчас в Advanced configuration  сервера прописаны только:
    push "route 10.8.0.0 255.255.255.0";
    push "route 192.168.20.0 255.255.255.0";
    push "route 192.168.0.0 255.255.255.0";

    1 Reply Last reply Reply Quote 0
    • W
      werter
      last edited by Dec 24, 2013, 12:09 PM Dec 24, 2013, 11:50 AM

      Схему сети нарисуйте с адресами. У вас клиент получает адрес (и маршруты) внутри своей локалки автоматом? Нет ли явно заданных маршрутов у клиентов?

      Вот еще :

      http://www.opennet.ru/openforum/vsluhforumID1/90883.html
      http://www.linux.org.ru/forum/admin/9444282

      P.s.  Какой тип подключения исп-ся -  Peer to Peer или Remote Access? Не установлено ли в настройках сервера\клиента указание, что OpenVPN является дефолтным шлюз, т.е. весь внешний трафик "гнать" через него ?

      P.p.s. Покажите лог клиента при установление сессии . Желательно, чтобы у клиента была в конфиге директива verb 3 (как минимум).

      Если все же проблема не решается с помощью настроек Опенвпн - можно создать bat-файл типа :

      1-ая строка - установка Опенвпн-cессии (пример - http://www.personalvpn.org/auto_login_openvpn.htm)
      2-ая - пауза в 3 сек  - ping -n 3 127.0.0.1
      3-ая - удаление неправильного маршрута
      4-ая - (для верности) вновь пауза в 3 сек - ping -n 3 127.0.0.1

      Сам батник разместить в подпапке bin каталога OpenVPN и вывести ярлык на раб. стол.

      1 Reply Last reply Reply Quote 0
      • B
        Bansher
        last edited by Dec 24, 2013, 1:14 PM

        Клиенты с OpenVPN сидят в разных точках города, на разных провайдерах. Через VPN получают доступ в локальную сеть. Явно заданных маршрутов нет. Ситуацию легко моделирую на свободном ноутбуке. Ставлю OpenVPN клиент, в инет подключаюсь через модем. Запускаю VPN соединение. Все. Локальная сеть есть, интернета нет. Убиваю два маршрута: 0.0.0.0 mask 128.0.0.0 и 128.0.0.0 mask 128.0.0.0 - все работает и локальная сеть и интернет.
        Лог подключения клиента:

        Tue Dec 24 17:06:38 2013 OpenVPN 2.3.2 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [eurephia] [IPv6] built on Aug 22 2013
        Enter Management Password:
        Tue Dec 24 17:06:48 2013 Control Channel Authentication: using 'vpn-TCP-1194-tls.key' as a OpenVPN static key file
        Tue Dec 24 17:06:48 2013 Attempting to establish TCP connection with [AF_INET]46.16.176.179:1194
        Tue Dec 24 17:06:48 2013 TCP connection established with [AF_INET]46.16.176.179:1194
        Tue Dec 24 17:06:48 2013 TCPv4_CLIENT link local: [undef]
        Tue Dec 24 17:06:48 2013 TCPv4_CLIENT link remote: [AF_INET]46.16.XXX.XXX:1194
        Tue Dec 24 17:06:48 2013 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
        Tue Dec 24 17:06:51 2013 [VpnServerCert] Peer Connection Initiated with [AF_INET]46.16.XXX.XXX:1194
        Tue Dec 24 17:06:53 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
        Tue Dec 24 17:06:53 2013 open_tun, tt->ipv6=0
        Tue Dec 24 17:06:53 2013 TAP-WIN32 device [Подключение по локальной сети 2] opened: \\.\Global\{AF28CF1F-0BF5-4F04-9D3C-BD1A5D51CF30}.tap
        Tue Dec 24 17:06:53 2013 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.8.0.34/255.255.255.252 on interface {AF28CF1F-0BF5-4F04-9D3C-BD1A5D51CF30} [DHCP-serv: 10.8.0.33, lease-time: 31536000]
        Tue Dec 24 17:06:53 2013 Successful ARP Flush on interface [22] {AF28CF1F-0BF5-4F04-9D3C-BD1A5D51CF30}
        Tue Dec 24 17:06:59 2013 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.   [status=5010 if_index=22]
        Tue Dec 24 17:06:59 2013 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
        Tue Dec 24 17:06:59 2013 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.   [status=5010 if_index=22]
        Tue Dec 24 17:06:59 2013 env_block: add PATH=C:\Windows\System32;C:\WINDOWS;C:\WINDOWS\System32\Wbem
        Tue Dec 24 17:06:59 2013 Initialization Sequence Completed
        

        Настройки клиента:

        dev tun
        persist-tun
        persist-key
        proto tcp-client
        cipher BF-CBC
        tls-client
        client
        resolv-retry infinite
        remote vpn.address.url 1194
        tls-remote VpnServerCert
        auth-user-pass
        pkcs12 vpn-TCP-1194.p12
        tls-auth vpn-TCP-1194-tls.key 1
        comp-lzo
        

        Ссылки которые вы прислали описывают мою ситуацию но конкретного решения не имеют. Странно, я думал что проблема банальная и имеет примитивное решение.
        Вариант с батником в данный момент привлекательно выглядит :)

        1 Reply Last reply Reply Quote 0
        • W
          werter
          last edited by Dec 24, 2013, 2:41 PM Dec 24, 2013, 1:56 PM

          А вас не смущает эта строка ?

          ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.  [status=5010 if_index=22]

          И зачем вы используете tcp вместо udp ? У вас клиенты через прокси выходят?

          Попробуйте добавить след. строки в конфиг клиента :

          route-delay 5
          route-method exe
          ip-win32 netsh
          pull
          verb 3

          И пускай клиент запускает подключение от имени Администратора - т.е. правой кнопкой мыши на Опенвпн - Запустить от имени Администратора.

          Плюс, само ПО OpenVPN нужно было тоже устанавливать от имени Администратора - т.е. правой кнопкой мыши на инсталляционном пакете Опенвпн - Запустить от имени Администратора. Июо есть ньюансы.

          1 Reply Last reply Reply Quote 0
          • H
            helper
            last edited by Oct 13, 2014, 5:55 PM Oct 13, 2014, 5:52 PM

            Наверное в конфиге опенвн сервера стоит такое:

            # If enabled, this directive will configure
            # all clients to redirect their default
            # network gateway through the VPN, causing
            # all IP traffic such as web browsing and
            # and DNS lookups to go through the VPN
            # (The OpenVPN server machine may need to NAT
            # or bridge the TUN/TAP interface to the internet
            # in order for this to work properly).
            push "redirect-gateway def1 bypass-dhcp"
            

            По дефолту оно закомментировано, вы скорее всего раскомментировали.

            Эта директива заставляет клиентов прописывать дефолтным маршрутизатором ВПН сервер и весь трафик от клиентов после этого заруливается на туннель. В этом есть необходимость, если вам нужно выходить в интернет через туннель (допустим порты закрыты и вы пробрасываете туннель через определенный порт, например так китайцы обходят свой "великий файрвол"), либо хотите спрятаться за иным айпишником.

            1 Reply Last reply Reply Quote 0
            • H
              helper
              last edited by Oct 13, 2014, 6:01 PM

              @werter:

              И зачем вы используете tcp вместо udp ? У вас клиенты через прокси выходят?

              Потенциально это без разницы, через UDP может быть быстрее, через TCP надежнее.
              На моей практике было такое, что через UDP не всегда шло, например резались стандартные MTU 1500 (когда случается Path MTU Discovery Black Hole) при этом это происходило только с UDP пакетами, конечно в openvpn есть настройки, которые позволяют зарезать значение MTU, но все же хотелось лишний раз это не трогать…

              1 Reply Last reply Reply Quote 0
              • W
                werter
                last edited by Oct 14, 2014, 5:46 AM

                2 helper

                На дату гляньте, ага.

                1 Reply Last reply Reply Quote 0
                • H
                  helper
                  last edited by Oct 14, 2014, 6:06 AM

                  @werter:

                  2 helper

                  На дату гляньте, ага.

                  А в чем проблема с датой? Он из будущего? :)))

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

                  1 Reply Last reply Reply Quote 0
                  • W
                    werter
                    last edited by Oct 14, 2014, 6:23 AM

                    Тогда работы вам здесь - непочатый край.

                    P.s. Пишите лучше в личку.

                    1 Reply Last reply Reply Quote 0
                    • D
                      defen2204
                      last edited by Feb 8, 2016, 12:57 PM

                      Здравствуйте, а Вы не могли бы и мне помочь с openvpn? Дело в том, что внутри локалки все коннектится на ура, а вот если стучу с внешки, все тормозится на хэндшейке и соединение обрывается по таймауту….

                      настройка сервера:

                      local 192.168.88.10
                      port 1194
                      proto udp
                      dev tun
                      ca ca.crt
                      cert server.crt
                      key server.key 
                      dh dh1024.pem
                      server 10.8.0.0 255.255.255.0 
                      ifconfig-pool-persist
                      client-config-dir ccd
                      push "route 192.168.88.10 255.255.255.0
                      push "redirect-gateway def1"     
                      push "dhcp-option DNS 8.8.8.8"     
                      client-to-client                   
                      keepalive 10 120                   
                      tls-server                         
                      auth SHA512                         
                      tls-auth ta.key 0                   
                      cipher BF-CBC                       
                      comp-lzo adaptive                 
                      user nobody                         
                      group nogroup
                      persist-key                         
                      persist-tun                         
                      status /var/log/openvpn/openvpn-status.log           
                      log /var/log/openvpn/openvpn.log           
                      verb 3                             
                      mute

                      Клиента:

                      client
                      dev tun
                      proto udp
                      remote  ххх.ххх.ххх.ххх 1194                     
                      resolv-retry infinite
                      nobind
                      persist-key
                      persist-tun
                      ca caR.crt
                      cert clientR.crt
                      key clientR.key
                      tls-auth taR.key 1
                      auth SHA512
                      cipher BF-CBC
                      comp-lzo adaptive
                      log openvpn.log
                      status openvpn-status.log
                      verb 3
                      mute 20
                      route 10.8.0.0 255.255.0.0

                      1 Reply Last reply Reply Quote 0
                      • D
                        defen2204
                        last edited by Feb 8, 2016, 1:01 PM

                        Сервер работает на  "малинеке" на микротике порты проброшены….

                        1 Reply Last reply Reply Quote 0
                        • D
                          defen2204
                          last edited by Feb 8, 2016, 1:01 PM

                          вот как-то так

                          1 Reply Last reply Reply Quote 0
                          • W
                            werter
                            last edited by Feb 8, 2016, 2:14 PM

                            Доброе.

                            Сервер.

                            push "route 192.168.88.10 255.255.255.0

                            Только один адрес ? Может должно быть так - 192.168.88.0 255.255.255.0?

                            push "redirect-gateway def1"

                            Зачем весь трафик заворачиваете в впн ? Откл. это.

                            Клиент.

                            route 10.8.0.0 255.255.0.0

                            Удалите эту строчку вообще

                            1 Reply Last reply Reply Quote 0
                            • D
                              defen2204
                              last edited by Feb 9, 2016, 3:34 AM

                              к сожалению ситуация та же(((

                              1 Reply Last reply Reply Quote 0
                              • D
                                defen2204
                                last edited by Feb 9, 2016, 3:52 AM

                                Логи клиента:
                                2016-02-09 13:12:49 VERIFY OK: depth=0
                                cert. version    : 3
                                serial number    : 01
                                issuer name      : C=US, ST=CA, L=SanFrancisco, O=Fort-Funston, OU=changeme, CN=changeme, ??=changeme, emailAddress=mail@host.domain
                                subject name      : C=US, ST=CA, L=SanFrancisco, O=Fort-Funston, OU=changeme, CN=server, ??=changeme, emailAddress=mail@host.domain
                                issued  on        : 2016-01-22 01:42:02
                                expires on        : 2026-01-19 01:42:02
                                signed using      : RSA with SHA1
                                RSA key size      : 1024 bits
                                basic constraints : CA=false
                                cert. type        : SSL Server
                                key usage        : Digital Signature, Key Encipherment
                                ext key usage    : TLS Web Server Authentication

                                2016-02-09 13:13:01 EVENT: CONNECTION_TIMEOUT [ERR]
                                2016-02-09 13:13:01 EVENT: DISCONNECTED
                                2016-02-09 13:13:01 Raw stats on disconnect:
                                  BYTES_IN : 11056
                                  BYTES_OUT : 48218
                                  PACKETS_IN : 64
                                  PACKETS_OUT : 93
                                  KEEPALIVE_TIMEOUT : 1
                                  CONNECTION_TIMEOUT : 1
                                  N_RECONNECT : 1
                                  PKTID_UDP_REPLAY_WINDOW_BACKTRACK : 1
                                2016-02-09 13:13:01 Performance stats on disconnect:
                                  CPU usage (microseconds): 140954
                                  Network bytes per CPU second: 420520
                                  Tunnel bytes per CPU second: 0
                                2016-02-09 13:13:01 EVENT: DISCONNECT_PENDING
                                2016-02-09 13:13:01 –--- OpenVPN Stop -----

                                1 Reply Last reply Reply Quote 0
                                • W
                                  werter
                                  last edited by Feb 9, 2016, 6:27 PM

                                  2 defen2204

                                  Четкое ТЗ. И схему.

                                  1 Reply Last reply Reply Quote 0
                                  • H
                                    helper
                                    last edited by Feb 9, 2016, 7:27 PM

                                    @defen2204:

                                    Здравствуйте, а Вы не могли бы и мне помочь с openvpn? Дело в том, что внутри локалки все коннектится на ура, а вот если стучу с внешки, все тормозится на хэндшейке и соединение обрывается по таймауту….

                                    настройка сервера:

                                    local 192.168.88.10
                                    …
                                    ca ca.crt
                                    …

                                    Клиента:

                                    ca caR.crt
                                    …

                                    1. Что смущает, вы задали слушать локальный адрес, на компе есть еще интерфейсы, на которых надо слушать? если да, то закомментируйте эту директиву local.
                                    2. Второе, что смущает, разные названия сертификатов, это вы переименовали? Если нет, то похоже, что вы генерили сертификаты клиента и сервера через разные корневые сертификаты.
                                    1 Reply Last reply Reply Quote 0
                                    • D
                                      defen2204
                                      last edited by Feb 9, 2016, 10:53 PM

                                      1. Не совсем понял что Вы имеете ввиду говоря о ТЗ и схеме, поэтому расскажу что вообще настроено у меня в сети.  Малинка, на которой поднята самба, видеонаблюдение, принтсервер и впн подключена к роутеру микротик. Необходимо, чтобы она через впн пропускала весь трафик от клиента к серверу, включая интернет. На другом стационарном компе в сети крутится фтп (под виндой). На роутере проброшены порты для фтп, ssh, rdp (для малинки) и проброс для DC клиентов на 2х компах. Вроде ни чего не забыл…
                                      2. Имена сертификатов менял сам, т.к. Создавал несколько клиентов для разных серверов

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        defen2204
                                        last edited by Feb 10, 2016, 1:03 AM

                                        Вот что наконец выплюнул сервак:
                                        Wed Feb 10 00:46:44 2016 MULTI: multi_create_instance called
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Re-using SSL/TLS context
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 LZO compression initialized
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Control Channel MTU parms[ L:1586 D:210 EF:110 EB:0 ET:0 EL:0 ]
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Data Channel MTU parms [
                                        L:1586 D:1450 EF:86 EB:135 ET:0 EL:0 AF:3/1 ]
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Local Options hash
                                        (VER=V4): '5134803b'
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Expected Remote Options
                                        hash (VER=V4): 'e66044bc'
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 TLS: Initial packet from
                                        [AF_INET]192.168.88.1:26695, sid=7a40b1ff 3b92eccb
                                        Wed Feb 10 00:46:44 2016 192.168.88.1:26695 Replay-window backtrack occurred [1]
                                        Wed Feb 10 00:47:31 2016 MULTI: multi_create_instance called
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 Re-using SSL/TLS context
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 LZO compression initialized
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 Control Channel MTU parms [
                                        L:1586 D:210 EF:110 EB:0 ET:0 EL:0 ]
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 Data Channel MTU parms [
                                        L:1586 D:1450 EF:86 EB:135 ET:0 EL:0 AF:3/1 ]
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 Local Options hash
                                        (VER=V4): '5134803b'
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 Expected Remote Options
                                        hash (VER=V4): 'e66044bc'
                                        Wed Feb 10 00:47:31 2016 192.168.88.1:9564 TLS: Initial packet from
                                        [AF_INET]192.168.88.1:9564, sid=8e73bebb 8b3794d1
                                        Wed Feb 10 00:47:44 2016 192.168.88.1:26695 TLS Error: TLS key
                                        negotiation failed to occur within 60 seconds (check your network
                                        connectivity)
                                        Wed Feb 10 00:47:44 2016 192.168.88.1:26695 TLS Error: TLS handshake failed
                                        Wed Feb 10 00:47:44 2016 192.168.88.1:26695 SIGUSR1[soft,tls-error] received, client-instance restarting
                                        Wed Feb 10 00:48:31 2016 192.168.88.1:9564 TLS Error: TLS key
                                        negotiation failed to occur within 60 seconds (check your network
                                        connectivity)
                                        Wed Feb 10 00:48:31 2016 192.168.88.1:9564 TLS Error: TLS handshake failed
                                        Wed Feb 10 00:48:31 2016 192.168.88.1:9564 SIGUSR1[soft,tls-error]
                                        received, client-instance restarting

                                        OpenVPN CLIENT LIST
                                        Updated,Wed Feb 10 00:57:02 2016
                                        Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
                                        ROUTING TABLE
                                        Virtual Address,Common Name,Real Address,Last Ref
                                        GLOBAL STATS
                                        Max bcast/mcast queue length,0
                                        END

                                        1 Reply Last reply Reply Quote 0
                                        • W
                                          werter
                                          last edited by Feb 10, 2016, 2:48 PM

                                          2 defen2204

                                          1. Не совсем понял что Вы имеете ввиду говоря о ТЗ и схеме, поэтому расскажу что вообще настроено у меня в сети.  Малинка, на которой поднята самба, видеонаблюдение, принтсервер и впн подключена к роутеру микротик. Необходимо, чтобы она через впн пропускала весь трафик от клиента к серверу, включая интернет. На другом стационарном компе в сети крутится фтп (под виндой). На роутере проброшены порты для фтп, ssh, rdp (для малинки) и проброс для DC клиентов на 2х компах. Вроде ни чего не забыл…

                                          Мил человек, я не увидел в этой схеме pfsense.

                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post
                                          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
                                            This community forum collects and processes your personal information.
                                            consent.not_received