UPDATE 2015-10-22: Тут неактуальная информация. Для работы работы strongSwan нужно поставить из Entware-arm, подробнее здесь. Но прежде всего, необходимо собрать и установить прошивку с поддержкой IPsec.
Все вроде бы хорошо, и можно поставить strongswan из портов.
Можно попробовать настроить на телефоне и подключиться. Но будет ждать облом:
Это типа потому, что нет поддержки eap-mschapv2. Надо бы ее засунуть в пакет.
Есть инструкция по самостоятельной сборке пакетов для ipkg для этой платформы:
http://mybookworld.wikidot.com/cross-compile-for-mbwe-using-optware
При сборке будут косяки:
- uclibc.mk: не будет скачивать 0.9.28 к адресу скачивания надо добавить old-releases:
В итоге получился такой пакет: https://cloud.mail.ru/public/ae2ffc6f7d02/strongswan_4.5.3-2_arm.ipk
Чтобы его поставить надо будет закомментировать размер и md5 в optware.mbwe-bluering
для пакета strongswan.
Сертификаты хоста надо генерировать как описано http://wiki.openwrt.org/doc/howto/vpn.ipsec.roadwarrior
Пример настройки strongswan есть на сайте http://blog.miffyliye.org/2014/04/18/
Дальше все начало работать, как надо:
Погуглив, я нашел, что господин Merlin уже добавил поддержку всех нужных модулей в свою прошивку http://forums.smallnetbuilder.com/showthread.php?t=12916
Значит проблема в другом.
В последних изменениях прошивки Merlin отключил поддержку IPSec для ARM:
Все вроде бы хорошо, и можно поставить strongswan из портов.
Это поставит strongswan-4.5.3-2ipkg install strongswan
mbwe-bluering
.Можно попробовать настроить на телефоне и подключиться. Но будет ждать облом:
[IKE] peer requested EAP, config inacceptable [CFG] no alternative config found [IKE] peer supports MOBIKE [ENC] generating IKE_AUTH response 1 [ N(AUTH_FAILED) ]
Это типа потому, что нет поддержки eap-mschapv2. Надо бы ее засунуть в пакет.
Есть инструкция по самостоятельной сборке пакетов для ipkg для этой платформы:
http://mybookworld.wikidot.com/cross-compile-for-mbwe-using-optware
При сборке будут косяки:
- uclibc.mk: не будет скачивать 0.9.28 к адресу скачивания надо добавить old-releases:
uclibc.org/downloads/old-releases/- collect2.c:1535 привести вызове open к подобному виду:
Для сборки пакета:open(tracefn, S_IRUSR|S_IWUSR, O_CREAT|O_TRUNC|O_WRONLY)
Там тоже непоняные проблемы были при сборке gnutls, пришлось в его папку копировать файлы exception_defines.h, exception, new, а так же после сборки создавать файлы .build, .staged ознаменовав, что сборка завершена. Так же такие же файлы придется создать в libsoap.make strongswan-ipk
В итоге получился такой пакет: https://cloud.mail.ru/public/ae2ffc6f7d02/strongswan_4.5.3-2_arm.ipk
Чтобы его поставить надо будет закомментировать размер и md5 в optware.mbwe-bluering
для пакета strongswan.
Сертификаты хоста надо генерировать как описано http://wiki.openwrt.org/doc/howto/vpn.ipsec.roadwarrior
Пример настройки strongswan есть на сайте http://blog.miffyliye.org/2014/04/18/
Дальше все начало работать, как надо:
Но как видно, наш роутер не смог выдать вирутальный IP для клиента. Это печально. Придется пересобирать прошивку так, чтобы она удовлетворяла требованиям описанным в https://wiki.strongswan.org/projects/strongswan/wiki/KernelModules[IKE] 192.168.1.56 is initiating an IKE_SA [ENC] generating IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(MULT_AUTH) ] [NET] sending packet: from 91.200.226.25[500] to 192.168.1.56[500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] unknown attribute type INTERNAL_IP4_SERVER [ENC] unknown attribute type INTERNAL_IP6_SERVER [ENC] parsed IKE_AUTH request 1 [ IDi CERTREQ N(MOBIKE_SUP) CP(ADDR DNS NBNS SRV ADDR6 DNS6 SRV6) SA TSi TSr ] [IKE] received cert request for "C=CH, O=Linux strongSwan, CN=RT-AC68U" [IKE] received 32 cert requests for an unknown ca [CFG] looking for peer configs matching 91.200.226.25[%any]...192.168.1.56[192.168.1.56] [CFG] selected peer config 'windows-eap-mschapv2' [IKE] initiating EAP_IDENTITY method (id 0x00) [IKE] peer supports MOBIKE [IKE] authentication of 'ipsec.local-ix.ru' (myself) with RSA signature successful [IKE] sending end entity cert "C=CH, O=Linux strongSwan, CN=ipsec.local-ix.ru" [ENC] generating IKE_AUTH response 1 [ IDr CERT AUTH EAP/REQ/ID ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] parsed IKE_AUTH request 2 [ EAP/RES/ID ] [IKE] received EAP identity 'Windows Phone\leandr' [IKE] initiating EAP_MSCHAPV2 method (id 0xDF) [ENC] generating IKE_AUTH response 2 [ EAP/REQ/MSCHAPV2 ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] parsed IKE_AUTH request 3 [ EAP/RES/MSCHAPV2 ] [ENC] generating IKE_AUTH response 3 [ EAP/REQ/MSCHAPV2 ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] parsed IKE_AUTH request 4 [ EAP/RES/MSCHAPV2 ] [IKE] EAP method EAP_MSCHAPV2 succeeded, MSK established [ENC] generating IKE_AUTH response 4 [ EAP/SUCC ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] parsed IKE_AUTH request 5 [ AUTH ] [IKE] authentication of '192.168.1.56' with EAP successful [IKE] authentication of 'ipsec.local-ix.ru' (myself) with EAP [IKE] IKE_SA windows-eap-mschapv2[3] established between 91.200.226.25[ipsec.local-ix.ru]...192.168.1.56[192.168.1.56] [IKE] peer requested virtual IP %any6 [CFG] reassigning offline lease to 'Windows Phone\leandr' [IKE] assigning virtual IP 10.8.1.1 to peer 'Windows Phone\leandr' [KNL] allocating SPI failed: Invalid argument (22) [KNL] unable to get SPI for reqid {3} [IKE] allocating SPI failed [ENC] generating IKE_AUTH response 5 [ AUTH CP(ADDR) N(MOBIKE_SUP) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(ADD_4_ADDR) N(NO_PROP) ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [NET] received packet: from 192.168.1.56[4500] to 91.200.226.25[4500] [ENC] parsed INFORMATIONAL request 6 [ D ] [IKE] received DELETE for IKE_SA windows-eap-mschapv2[3] [IKE] deleting IKE_SA windows-eap-mschapv2[3] between 91.200.226.25[ipsec.local-ix.ru]...192.168.1.56[192.168.1.56] [IKE] IKE_SA deleted [ENC] generating INFORMATIONAL response 6 [ ] [NET] sending packet: from 91.200.226.25[4500] to 192.168.1.56[4500] [CFG] lease 10.8.1.1 by 'Windows Phone\leandr' went offline
Погуглив, я нашел, что господин Merlin уже добавил поддержку всех нужных модулей в свою прошивку http://forums.smallnetbuilder.com/showthread.php?t=12916
Значит проблема в другом.
В последних изменениях прошивки Merlin отключил поддержку IPSec для ARM:
- REMOVED: IPSEC support removed from ARM devices, as it'snot compatible with the new DPI kernel modules.The option remains available in the buildenvironment if anyone wishes to create theirown IPSEC-enabled build, however they must ensurethat they disable the BWDPI option. (AC56, AC68)
Комментариев нет:
Отправить комментарий