pdn_mail
-
Posts
51 -
Joined
-
Last visited
Content Type
Profiles
Forums
Gallery
Downloads
Blogs
Events
Posts posted by pdn_mail
-
-
Спасибо!
ip nat Gre0 помогло.
-
Добрый день!
Столкнулся с проблемой. Тремя постами выше расписана настройка.
Всё работает замечательно, сервер доступен снаружи, работает, локальные ресурсы с ним также могут общаться, только заметил, что обновления на него не идут, т.е. сам сервер не может общаться с внешним миром если он инициатор обмена.
Например "ping 8.8.8.8", трафик с сервера уходит по туннелю IPSEC/GRE в сторону кинетика, а обратно ничего не приходит. Проблема явно где-то на стороне настроек роутера, потому что со стороны сети Интернет с сервером работа идёт без проблем.
Сервер видит через туннель Bridge0.
Подскажите пожалуйста что нужно прописать в настройке, чтобы кинетик с интерфейса Gre0 пропускал трафик дальше?
-
В 26.07.2017 в 18:19, Le ecureuil сказал:
EoIP работает не поверх GRE, они просто используют один и тот же IP protocol number - 47. А в остальном - они совершенно несовместимы, и ЕМНИП ни в одном дистрибутиве реализации EoIP из коробки нет.
Я помню пытался наладить туннель EoIP, в связи с этим сообщением и предыдущими выводами созрел вопрос, почему не реализовали тип туннеля GRE L2 (gretap), а взяли вендор-зависимую реализацию от микротика?
Ни в коей мере не критикую политику компании, только думаю потенциальных пользователей GRE L2 было бы больше, чем EoIP. Есть там конечно проблема с DF, но это решаемо патчами, не сложнее чем "чужой" EoIP запилить.
-
Теперь могу подвести итог. Первая ошибка начинающего, невнимательность к деталям, краеугольным камнем моей ошибки стало то, что не понял сначала разницу между типами интерфейса gre и gretap, почему-то подумал, что это всё относится к одному протоколу, но тип gre - это L3, а gretap - L2. В описании туннеля GRE в документации zyxel говорится, что это реализация туннеля L3, так что применение мной gretap в настройках интерфейса в linux было неправильным.
Самая простая конфигурация, в случае использовании схемы:
Поднимаем 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 траффик на сервер заворачивается стандартным способом:
вот и всё стартуем, делаем на линукс - ipsec start
должен подняться ipsec туннель и по нему пойти через GRE траффик на сервер со стороны "белого" адреса на zyxel. -
В 01.06.2017 в 03:42, Le ecureuil сказал:
Ну можно конечно, только у нас в планах сразу сделать нормальную авторизацию на уровне Web приложения + SSL, потому пока текущее состояние ломать не хотим, чтобы через два месяца опять все переделывать.
Прошло два месяца. В прошивке 2.10 наконец появится эта кнопка? А то сильно грамотные пользователи достали, хоть убивай
- 1
-
Добрый день!
Обновился и пока колупал конфигурацию 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.
Готовую конфигу как пример выложу позже.
-
35 минут назад, Le ecureuil сказал:
Кстати эти данные - это хорошие кандидаты на вывод в show interface, что же вы молчите-то?
Поддерживаю! Стоит ли в теме развития создать тему?
Но как пока посмотреть ipsec.conf на кинетике?
-
3 часа назад, gaaronk сказал:
1. Обновить кинетик до 2.10
Ок. Только теперь всё до завтра откладывается. Хотя может удалённо прошью.
3 часа назад, gaaronk сказал:2. Конфигурировать авто туннель на кинетикие в режиме ikev2
А вот это обязательно? Может пока рабочей схемы на ikev1 добиться? Если честно у меня протокол ikev2 между линуксовыми машинами через нат не пошёл, сильно не стал разбираться, тем более с zyxel связываться, пока сосредоточился на ikev1.
3 часа назад, gaaronk сказал:Посмотреть в /tmp/ipsec/ipsec.conf
ткните пожалуйста в тему где про это говорится, я с ходу не нагуглил и пока CLI не настолько хорошо знаю.
-
За натом linux, как клиент (я так говорю, потому, что он инициирует соединение), тоже на Strongswan 5.5.3
В первом посте схема, Zyxel на белом IP, Linux за натом с динамическим внешним IP.
Правда я понял почему у вас работает, у вас изначально есть связность gre туннеля, т.к. он и ipsec напрямую видят и сидят на одинаковых внешних интерфейсах, в моём случае связность gre туннелю обеспечивает ipsec, концы сидят на разных интерфейсах, вот тут и возникает проблема.
Ещё раз попытаюсь, максимально повторив вашу конфигурацию, то что будет возможно повторить в моём случае, чуть позже отпишусь, что получилось.
-
10 часов назад, gaaronk сказал:
Поехали.
Упустили самый важный момент. Уточните пожалуйста, на чём у вас организован IPSEC? название и версию софтины.
А так вам большое спасибо за пример. Есть над чем подумать.
И ещё, у вас клиент не за натом судя по всему сидит, хотя это не принципиально важно.
-
1 час назад, gaaronk сказал:
Вы в ACL должны указывать концы туннеля, а не трафик внутри туннеля.
С чего вы решили, что это не так?
1 час назад, gaaronk сказал:А трафик внутрь заворачивайте маршрутизацией.
Рабочий пример можно?
Вот у меня с самого начала всё расписано, что и как, в конце исправлено с учётом замечаний Le ecureuil уже вроде всё разжевано, но туннель не работает. Как у вас в Debian это реализовано?
-
Добрый день!
Стенд собрали? Что нибудь прояснилось почему туннель GRE с клиентом strongswan на linux не работает?
-
Вы правы, это EoIP работает поверх, который я недавно пытался, пока, безуспешно завести.
-
Спасибо!
-
Хм.. IPIP работает, учитывая, что этот протокол работает поверх GRE - просто удивительно!
-
Если нетрудно, соберите стенд с арчем, т.к. на нём линукс клиент.
Пока попробую IPIP помучить.
-
-
Не ребята, я не понял, кто минусует вопрос??? Думаете я шучу?
Я удалённо людям настраиваю модем, через RDP, так вот после этого надо модем перезагрузить, чтобы сессию скинуть, или браузер закрыть, а оно думаете людям надо? Да и некоторые браузеры сессию восстанавливают, и можно потом ковырять настройки.
-
протестировал работу в автоматическом режиме. Есть вопрос там транспортный режим работает принудительно? Можно ли и как в автомате включить туннельный режим?
Теперь к проблеме. Как и предполагалось, со стороны клиента ничего не изменилось при приёме пакетов, клиент на линукс не понимает что ему прислали, картина та-же, система по ходу не знает что делать с извлечённым пакетом из 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 в этот момент, отправил следующим сообщением. Там что-то можно разглядеть и понять, что происходит?
-
Настраивал сейчас автомат, обратил внимание на неточность в справке по ссылке - 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
Думаю данная неточность в справке может вводить пользователей в заблуждение.
-
Здравствуйте!
Заранее извиняюсь за возможно глупый вопрос, но где на вебморде кнопка "LOGOUT". Страшно её не хватает. У меня прошивка 2.09.С
-
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. Как на это повлияет автоматическая настройка даже не знаю.
-
Перенастроил на внешний интерфейс
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? Или я просто ошибаюсь?
-
настроил туннель 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
Как настроить IPSec/GRE туннель c Linux и пробросить по туннелю порт?
in Обсуждение IPsec, OpenVPN и других туннелей
Posted · Edited by pdn_mail
Здравствуйте!
Скажите пожалуйста, а вот автоматический режим умеет делать два туннеля? Или это можно только в ручном режиме делать, ну.., там 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