Jump to content

pdn_mail

Forum Members
  • Posts

    51
  • Joined

  • Last visited

Posts posted by pdn_mail

  1. Здравствуйте!

    Скажите пожалуйста, а вот автоматический режим умеет делать два туннеля? Или это можно только в ручном режиме делать, ну.., там crypto map всякие прописывать?

    Сделал второй туннель Gre63 и всё перестало работать...............................................................

    (config)> sh ipsec 
    
     ipsec_statusall:  
    
    Status of IKE charon daemon (strongSwan 5.6.0, Linux 3.4.113, mips):
     uptime: 16 minutes, since Oct 17 11:26:15 2017
     malloc: sbrk 200704, mmap 0, used 123744, free 76960
     worker threads: 11 of 16 idle, 5/0/0/0 working, job queue: 0/0/0/0, scheduled: 4
     loaded plugins: charon random nonce openssl hmac attr kernel-netlink socket-default stroke updown eap-mschapv2 eap-dynamic xauth-generic xauth-eap error-notify systi
    me-fix unity
    Listening IP addresses:
     46.240.100.2
     192.168.0.1
     10.1.30.1
     192.168.100.1
     192.168.163.1
    Connections:
           Gre0:  46.240.100.2...%any  IKEv1, dpddelay=30s
           Gre0:   local:  [46.240.100.2] uses pre-shared key authentication
           Gre0:   remote: uses pre-shared key authentication
           Gre0:   child:  46.240.100.2/32[gre] === 0.0.0.0/0[gre] TRANSPORT, dpdaction=restart
          Gre63:   child:  46.240.100.2/32[gre] === 0.0.0.0/0[gre] TRANSPORT, dpdaction=restart
    Security Associations (0 up, 0 connecting):
     none
    
    (config)> sh crypto
    (config)> 

    Прошивка v2.11.A.4.0-2
     

  2. Добрый день!

    Столкнулся с проблемой. Тремя постами выше расписана настройка.

    Всё работает замечательно, сервер доступен снаружи, работает, локальные ресурсы с ним также могут общаться, только заметил, что обновления на него не идут, т.е. сам сервер не может общаться с внешним миром если он инициатор обмена.

    Например "ping 8.8.8.8", трафик с сервера уходит по туннелю IPSEC/GRE в сторону кинетика, а обратно ничего не приходит. Проблема явно где-то на стороне настроек роутера, потому что со стороны сети Интернет с сервером работа идёт без проблем.

    Сервер видит через туннель Bridge0.

    Подскажите пожалуйста что нужно прописать в настройке, чтобы кинетик с интерфейса Gre0 пропускал трафик дальше?

     

  3. В 26.07.2017 в 18:19, Le ecureuil сказал:

    EoIP работает не поверх GRE, они просто используют один и тот же IP protocol number - 47. А в остальном - они совершенно несовместимы, и ЕМНИП ни в одном дистрибутиве реализации EoIP из коробки нет.

    Я помню пытался наладить туннель EoIP, в связи с этим сообщением и предыдущими выводами созрел вопрос, почему не реализовали тип туннеля GRE L2 (gretap), а взяли вендор-зависимую реализацию от микротика?

    Ни в коей мере не критикую политику компании, только думаю потенциальных пользователей GRE L2  было бы больше, чем EoIP. Есть там конечно проблема с DF, но это решаемо патчами, не сложнее чем "чужой" EoIP запилить.

  4. Теперь могу подвести итог. Первая ошибка начинающего, невнимательность к деталям, краеугольным камнем моей ошибки стало то, что не понял сначала разницу между типами интерфейса gre и gretap, почему-то подумал, что это всё относится к одному протоколу, но тип gre - это L3, а gretap - L2. В описании туннеля GRE в документации zyxel говорится, что это реализация туннеля L3, так что применение мной gretap в настройках интерфейса в linux было неправильным.

    Самая простая конфигурация, в случае использовании схемы:

    s_1502098809_2859715_b0cd79ca00.png


    Поднимаем IPSec туннель. Со стороны linux делаем настройки:
    ipsec.conf 

    # ipsec.conf - strongSwan IPsec configuration file
    
    # basic configuration
    
    config setup
            # strictcrlpolicy=yes
            # uniqueids = no
    
    conn ipsec-gre
         dpddelay=30s
         dpdtimeout=120s
         dpdaction=restart
         closeaction=restart
          type=transport
          keyexchange=ikev1
          authby=psk
          ike=aes128-sha1-modp1024!
          esp=aes128-sha1! 
          left=192.168.2.2
          leftsubnet=192.168.2.2/32[47/0]
          leftfirewall=yes
          right=46.16.2.2
          rightsubnet=46.16.2.2/32[47/0]
          auto=start

    ipsec.secrets 

    # ipsec.secrets - strongSwan IPsec secrets file
    192.168.2.2 46.16.2.2 : PSK "WAY123456"

    добавляем интерфейс GRE

    ip link add grelan type gre local 192.168.2.2 remote 46.16.2.2 dev enp4s0 
    ip link set grelan up 

    Теперь надо настроить общение сервера с внешним миром через туннель, тут вариантов масса, например gre интерфейс на сервере запихать в бридж с адресом локальной сети, но у меня стояла задача обеспечить доступ к нему по "белому" IP через zyxel, поэтому использовал самую простую настройку, дал gre интерфейсу адрес другой сети - 192.168.100.0/24 и настроил соответственно маршрутизацию:

    ip a add 192.168.100.2/24 dev grelan 
    ip ro add 46.16.2.2 via 192.168.2.1 dev enp4s0 
    ip ro del default 
    ip ro add default via 192.168.100.1 dev grelan

    Настройки со стороны Zyxel:

    int Gre0
    security-level private
    ip address 192.168.100.1 255.255.255.0
    tunnel source ISP
    ipsec preshared-key "WAY123456"
    up

     Далее, со стороны Zyxel траффик на сервер заворачивается стандартным способом:
     s_1502098809_2603143_df3127133d.png
     
     вот и всё стартуем, делаем на линукс - ipsec start
     должен подняться ipsec туннель и по нему пойти через GRE траффик на сервер со стороны "белого" адреса на zyxel.

  5. В 01.06.2017 в 03:42, Le ecureuil сказал:

    Ну можно конечно, только у нас в планах сразу сделать нормальную авторизацию на уровне Web приложения + SSL, потому пока текущее состояние ломать не хотим, чтобы через два месяца опять все переделывать.

    Прошло два месяца. В прошивке 2.10 наконец появится эта кнопка? А то сильно грамотные пользователи достали, хоть убивай :(

    • Upvote 1
  6. Добрый день!

    Обновился и пока колупал конфигурацию IKEv2 на стенде с linux машинами, с параметрами предложенными gaaronk 

    Уже решил попробовать на реальном железе с Zyxel и подумал: "а дай попробую на новой прошивке предыдущую конфигурацию GRE туннеля, перед тем как стал потом IPIP настраивать", и что вы думаете? Конечно всё заработало.

    у меня автоконфигурация на zyxel, единственно что смущает, это не смог найти подобные строчки в show run:

    access-list _WEBADMIN_IPSEC_pptp-ipsec
        permit gre 192.168.0.0 255.255.255.0 192.168.2.2 255.255.255.255

    Единственно, что утешает, это то, что между интерфейсами GRE туннеля прокинутого через нат over IPSEC могут пройти только пакеты завёрнутые в этот же IPSEC.

    Готовую конфигу как пример выложу позже.

  7. 35 минут назад, Le ecureuil сказал:

    Кстати эти данные - это хорошие кандидаты на вывод в show interface, что же вы молчите-то?

    Поддерживаю! Стоит ли в теме развития создать тему?

    Но как пока посмотреть ipsec.conf на кинетике?

  8. 3 часа назад, gaaronk сказал:

    1. Обновить кинетик до 2.10

    Ок. Только теперь всё до завтра откладывается. Хотя может удалённо прошью.

    3 часа назад, gaaronk сказал:

    2. Конфигурировать авто туннель на кинетикие в режиме ikev2

    А вот это обязательно? Может пока рабочей схемы на ikev1 добиться? Если честно у меня протокол ikev2 между линуксовыми машинами через нат не пошёл, сильно не стал разбираться, тем более с zyxel связываться, пока сосредоточился на ikev1.

    3 часа назад, gaaronk сказал:

    Посмотреть в /tmp/ipsec/ipsec.conf

    ткните пожалуйста в тему где про это говорится, я с ходу не нагуглил и пока CLI не настолько хорошо знаю.

     

  9. За натом linux, как клиент (я так говорю, потому, что он инициирует соединение), тоже на Strongswan 5.5.3

    В первом посте схема, Zyxel на белом IP, Linux за натом с динамическим внешним IP.

    Правда я понял почему у вас работает, у вас изначально есть связность gre туннеля, т.к. он и ipsec напрямую видят и сидят на одинаковых внешних интерфейсах, в моём случае связность gre туннелю обеспечивает ipsec, концы сидят на разных интерфейсах, вот тут и возникает проблема.

    Ещё раз попытаюсь, максимально повторив вашу конфигурацию, то что будет возможно повторить в моём случае, чуть позже отпишусь, что получилось.  

  10. 10 часов назад, gaaronk сказал:

    Поехали.

    Упустили самый важный момент. Уточните пожалуйста, на чём у вас организован IPSEC? название и версию софтины.

    А так вам большое спасибо за пример. Есть над чем подумать.

    И ещё, у вас клиент не за натом судя по всему сидит, хотя это не принципиально важно.

  11. 1 час назад, gaaronk сказал:

    Вы в ACL должны указывать концы туннеля, а не трафик внутри туннеля.

    С чего вы решили, что это не так?

    1 час назад, gaaronk сказал:

    А трафик внутрь заворачивайте маршрутизацией.

    Рабочий пример можно?

    Вот у меня с самого начала всё расписано, что и как, в конце исправлено с учётом замечаний Le ecureuil уже вроде всё разжевано, но туннель не работает. Как у вас в Debian это реализовано?

  12. Не ребята, я не понял, кто минусует вопрос??? Думаете я шучу?

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

  13. протестировал работу в автоматическом режиме. Есть вопрос там транспортный режим работает принудительно? Можно ли и как в автомате включить туннельный режим?

    Теперь к проблеме. Как и предполагалось, со стороны клиента ничего не изменилось при приёме пакетов, клиент на линукс не понимает что ему прислали, картина та-же, система по ходу не знает что делать с извлечённым пакетом из gre. 

    Решил посмотреть на проблему с другого конца. Там тоже непонятно, пакеты отсылаются в сторону КЦ, но в ответ ничего не приходит:

    ping 192.168.100.1

    Скрытый текст

    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:rule:5 IN= OUT=grelan SRC=192.168.100.2 DST=192.168.100.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=58727 DF PROTO=ICMP TYPE=8 CODE=0 ID=3194 SEQ=1 UID=1000 GID=100 
    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=grelan SRC=192.168.100.2 DST=192.168.100.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=58727 DF PROTO=ICMP TYPE=8 CODE=0 ID=3194 SEQ=1 UID=1000 GID=100 
    июл 26 21:22:12 arch2 kernel: TRACE: filter:OUTPUT:policy:2 IN= OUT=grelan SRC=192.168.100.2 DST=192.168.100.1 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=58727 DF PROTO=ICMP TYPE=8 CODE=0 ID=3194 SEQ=1 UID=1000 GID=100 
    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=47 
    июл 26 21:22:12 arch2 kernel: TRACE: filter:OUTPUT:rule:1 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=47 
    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:rule:4 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:rule:6 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:12 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:12 arch2 kernel: TRACE: filter:OUTPUT:policy:2 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42279 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:13 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=47 
    июл 26 21:22:13 arch2 kernel: TRACE: filter:OUTPUT:rule:1 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=47 
    июл 26 21:22:13 arch2 kernel: TRACE: raw:OUTPUT:rule:4 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:13 arch2 kernel: TRACE: raw:OUTPUT:rule:6 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:13 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:13 arch2 kernel: TRACE: filter:OUTPUT:policy:2 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42571 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:14 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=47 
    июл 26 21:22:14 arch2 kernel: TRACE: filter:OUTPUT:rule:1 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=66 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=47 
    июл 26 21:22:14 arch2 kernel: TRACE: raw:OUTPUT:rule:4 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:14 arch2 kernel: TRACE: raw:OUTPUT:rule:6 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:14 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
    июл 26 21:22:14 arch2 kernel: TRACE: filter:OUTPUT:policy:2 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=112 TOS=0x00 PREC=0x00 TTL=64 ID=42777 DF PROTO=UDP SPT=4500 DPT=4500 LEN=92 
     

    Снял self-test в этот момент, отправил следующим сообщением. Там что-то можно разглядеть и понять, что происходит?

  14. Настраивал сейчас автомат, обратил внимание на неточность в справке по ссылке - https://help.keenetic.net/hc/ru/articles/115002715029-Настройка-туннелей-IPIP-GRE-и-EoIP

    Цитата

    В команде interface tunnel source можно указать как интерфейс-источник, так и IP-адрес, на котором будет "висеть" сервер. Однако предпочтение отдается интерфейсу, поскольку в данном случае вся перенастройка при смене адреса и прочих событиях будет происходить автоматически.

    На самом деле, туннель слушает все интерфейсы, а командой указывается интерфейс с которым будет установлен режим туннеля.

    Цитата

    (config)> int Gre0 tunnel source 192.168.0.1
    Network::Interface::Tunnel: Source IP set to 192.168.0.1.

    (config)> sh ipsec

      ipsec_statusall: 

    Status of IKE charon daemon (strongSwan 5.5.2, Linux 3.4.113, mips):
      uptime: 86 seconds, since Jul 26 12:29:12 2017
      malloc: sbrk 176128, mmap 0, used 121400, free 54728
      worker threads: 11 of 16 idle, 5/0/0/0 working, job queue: 0/0/0/0, scheduled: 2
      loaded plugins: charon random nonce openssl hmac attr kernel-netlink socket-default stroke updown eap-mschapv2 eap-dynamic xauth-generic xauth-eap error-notify systime-fix unity
    Listening IP addresses:
      46.X.Y.Z
      192.168.0.1
      10.1.30.1
      192.168.100.1

    Connections:
            Gre0:  192.168.0.1...%any  IKEv1, dpddelay=30s
            Gre0:   local:  [192.168.0.1] uses pre-shared key authentication
            Gre0:   remote: uses pre-shared key authentication
            Gre0:   child:  192.168.0.1/32[gre] === 0.0.0.0/0[gre] TRANSPORT, dpdaction=restart
    Security Associations (0 up, 0 connecting):
      none
     

    Думаю данная неточность в справке может вводить пользователей в заблуждение.

  15. Здравствуйте!

    Заранее извиняюсь за возможно глупый вопрос, но где на вебморде кнопка "LOGOUT". Страшно её не хватает. У меня прошивка 2.09.С

  16. 3 часа назад, Le ecureuil сказал:
    Цитата

    access-list _WEBADMIN_IPSEC_pptp-ipsec
        permit ip 192.168.0.0 255.255.255.0 192.168.2.2 255.255.255.255
        permit gre 192.168.0.0 255.255.255.0 192.168.2.2 255.255.255.255

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

    Не помнимаю, чем вам автоматический туннель не угодил и почему захотелось делать все руками, не до конца понимая, как все это работает.

    Добрый вечер. Я убрал в итоге permit gre 192.168.0.0 255.255.255.0 192.168.2.2 255.255.255.255

    Это не помогло. Поведение системы осталось прежним.

    Потому в ручном и решил настроить, чтобы до конца понять как всё это работает. Кроме access-list есть ещё ошибки в настройках?

    Туннель пока не рабочий. Завтра ради интереса попробую автоматический режим настроить, но ведь очевидно, что проблема на стороне linux машины, (слева по схеме, считаем - клиент). Почему туннель, по этой схеме построенный, с машиной linux в качестве сервера, работает, а когда практически ничего не меняя в схеме, меняем линукс машину на zyxel не работает?

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

  17. Перенастроил на внешний интерфейс 

    TRACE на linux машинке показывает:

    июл 25 23:42:06 arch2 kernel: TRACE: filter:INPUT:policy:1 IN=enp4s0 OUT= MAC=00:1a:64:94:68:74:b8:a3:86:ba:ea:03:08:00 SRC=46.X.Y.Z DST=192.168.2.2 LEN=108 TOS=0x00 PREC=0x00 TTL=64 ID=35509 DF PROTO=47  

    до машинки долетает расшифрованный пакет GRE, но потом сразу идёт ответ о недостижимости хоста, т.е. пакет теряется где-то в маршрутизации, он не появляется в PREROUTING от интерфейса grelan:
    июл 25 23:42:06 arch2 kernel: TRACE: raw:OUTPUT:policy:7 IN= OUT=enp4s0 SRC=192.168.2.2 DST=46.X.Y.Z LEN=136 TOS=0x00 PREC=0xC0 TTL=64 ID=57777 PROTO=ICMP TYPE=3 CODE=3 [SRC=46.X.Y.Z DST=192.168.2.2 LEN=108 TOS=0x00 PREC=0x00 TTL=64 ID=35509 DF PROTO=47 ]

    Такое ощущение что идёт несовместимость на уровне протокола GRE? Или я просто ошибаюсь?

  18. настроил туннель GRE так, чтобы всё заворачивалось в GRE. Поднимается:

    pptp-ipsec{13}:   192.168.0.0/24[gre] === 192.168.2.2/32[gre]

    сделал:

    access-list _WEBADMIN_IPSEC_pptp-ipsec
       permit gre 192.168.0.0 255.255.255.0 192.168.2.2 255.255.255.255
    !


    tools ping 192.168.100.2 теперь ничего не выдаёт, оно и понятно, так и должно быть если по IPSEC один GRE ходит. На другом конце отлавливается та-же картина, отсылаются PROTO=ICMP TYPE=3 CODE=3

×
×
  • Create New...