The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"MPD + IAS + Сертификаты"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"MPD + IAS + Сертификаты"  
Сообщение от dm email(ok) on 23-Окт-07, 12:40 
Здравствуйте.

Есть связка mpd + IAS (windows radius), для подключения пользователей
windows домена к vpn'у, авторизация по паролю проходит на ура все
работает, но когда использую для авторизации сертификат (смарт карта,
e-token), один раз подключается, а второй раз не хочет, до следующего
перезапуска mpd демона. Я так понял что после подключения windows
клиента меняется значение mtu? Незнаю как это побороть, очень
хочется авторизироваться используя сертификат.

И еще вопрос, как можно посмотреть/изменить значения mtu/mru для ng интерфейса
используя ngctl ?


Вот сообщения лога:

--------cut----------
mpd: [pptp0] EAP: rec'd RESPONSE Type Identity #1 len:26
mpd: [pptp0] EAP-RADIUS: Identity:user@domen
mpd: [pptp0] AUTH: Auth-Thread started
mpd: [pptp0] RADIUS: rec'd RAD_ACCESS_CHALLENGE for user user@domen
mpd: [pptp0] RADIUS: RadiusGetParams: RAD_MESSAGE_AUTHENTIC
mpd: [pptp0] AUTH: Auth-Thread finished normally
mpd: [pptp0] EAP-RADIUS: RadiusEapProxyFinish: status undefined
mpd: [pptp0] EAP-RADIUS: send  REQUEST  Type TLS #2 len:6
mpd: [pptp0] EAP: rec'd RESPONSE Type TLS #2 len:108
mpd: [pptp0] AUTH: Auth-Thread started
mpd: [pptp0] RADIUS: rec'd RAD_ACCESS_CHALLENGE for user user@domen
mpd: [pptp0] RADIUS: RadiusGetParams: RAD_MESSAGE_AUTHENTIC
mpd: [pptp0] AUTH: Auth-Thread finished normally
mpd: [pptp0] EAP-RADIUS: RadiusEapProxyFinish: status undefined
mpd: [pptp0] EAP-RADIUS: send  REQUEST  Type TLS #3 len:1496
mpd: [pptp0] error writing len 1500 frame to bypass: Message too long
mpd: [pptp0] EAP-RADIUS: send  REQUEST  Type TLS #3 len:1496
mpd: [pptp0] error writing len 1500 frame to bypass: Message too long
mpd: [pptp0] EAP-RADIUS: send  REQUEST  Type TLS #3 len:1496
mpd: [pptp0] error writing len 1500 frame to bypass: Message too long
--------cut----------

Значение mtu в конфиге:

    set iface mtu 1500
    set link mtu 1500


--
С уважением,
Denis            

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "MPD + IAS + Сертификаты"  
Сообщение от root (??) on 23-Окт-07, 12:56 
# We 'set link mtu 1460' to avoid GRE packet fragmentation.

Рекомендуется ставить 1492

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "MPD + IAS + Сертификаты"  
Сообщение от dm email(??) on 23-Окт-07, 15:47 
># We 'set link mtu 1460' to avoid GRE packet fragmentation.
>
>Рекомендуется ставить 1492

Изменение данного параметра в MPD никчему не приводит, так как после переподключение vpn'a (мне так кажется) значение mtu на ng интерфейсе меняется :(

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "MPD + IAS + Сертификаты"  
Сообщение от dm email(??) on 24-Окт-07, 12:40 
Идей никаких нет как это побороть? :(
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "MPD + IAS + Сертификаты"  
Сообщение от Alexander Motin email on 24-Окт-07, 14:38 
># We 'set link mtu 1460' to avoid GRE packet fragmentation.
>
>Рекомендуется ставить 1492

1492 рекомендуется для pppoe. Для pptp как раз лучше где-то 1460.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "MPD + IAS + Сертификаты"  
Сообщение от Alexander Motin email on 24-Окт-07, 15:38 
>И еще вопрос, как можно посмотреть/изменить значения mtu/mru для ng интерфейса
>используя ngctl ?

Для интерфейса вообще ifconfig. Но тебе больше интересно вероятно mru ноды ng_ppp, который вообще корректно рулятся самой mpd.

>mpd: [pptp0] EAP-RADIUS: send  REQUEST  Type TLS #3 len:1496
>mpd: [pptp0] error writing len 1500 frame to bypass: Message too long

На сколько я понял из RFC, ввиду того, что EAP-TLS может обмениваться весьма большими блоками протокол предусматривает фрагментацию пакетов. В данном случае случае, так как mpd является просто EAP proxy эту фрагментацию должен выполнять RADIUS. По хорошему тебе стоит объяниться с ним на предмет MTU под который он режет пакеты, ибо для PPPoE пакеты в 1500 байт, как предполагает твой RADIUS недопустимы по определению.

То, что соединение устанавливается в первый раз объясняется тем, что mpd не чистит параметры линка после использования. Вставь в bundle.c после строки
b->pppConfig.links[l->bundleIndex].enableLink = 0;
строку
b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
и думаю для pptp оно заработает.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "MPD + IAS + Сертификаты"  
Сообщение от dm email(??) on 24-Окт-07, 17:11 
>b->pppConfig.links[l->bundleIndex].enableLink = 0;
>строку
>b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
>и думаю для pptp оно заработает.

Спасибо, заработало, буду тестить.

MPD 4.3
---cut-------------------------------------------
--- bund.c      Wed Aug 29 12:30:21 2007
+++ bund_new.c  Wed Oct 24 15:49:32 2007
@@ -256,9 +256,9 @@
   BundReasses(b, 1);

   /* Configure this link */
   b->pppConfig.links[l->bundleIndex].enableLink = 1;
-  b->pppConfig.links[l->bundleIndex].mru = lcp->peer_mru;
+  b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
   b->pppConfig.links[l->bundleIndex].enableACFComp = lcp->peer_acfcomp;
   b->pppConfig.links[l->bundleIndex].enableProtoComp = lcp->peer_protocomp;
   b->pppConfig.links[l->bundleIndex].bandwidth = (l->bandwidth / 8 + 5) / 10;
   b->pppConfig.links[l->bundleIndex].latency = (l->latency + 500) / 1000;
---cut----------------------------------------------

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "MPD + IAS + Сертификаты"  
Сообщение от Alexander Motin email on 24-Окт-07, 17:16 
>>b->pppConfig.links[l->bundleIndex].enableLink = 0;
>>строку
>>b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
>>и думаю для pptp оно заработает.
>
>Спасибо, заработало, буду тестить.

Нет, не так. Так бы вообще вырубил ограничение MTU в ng_ppp. Правильнее так:
--- bund.c    2007/08/23 21:23:14    1.114
+++ bund.c    2007/10/24 11:40:15    1.114.2.1
@@ -336,6 +336,7 @@
  
   /* Disable link */
   b->pppConfig.links[l->bundleIndex].enableLink = 0;
+  b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
   NgFuncSetConfig(b);

   /* Special stuff when last link goes down... */

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "MPD + IAS + Сертификаты"  
Сообщение от dm email(??) on 24-Окт-07, 18:07 
>[оверквотинг удален]
>+++ bund.c 2007/10/24 11:40:15 1.114.2.1
>@@ -336,6 +336,7 @@
>
>   /* Disable link */
>   b->pppConfig.links[l->bundleIndex].enableLink = 0;
>+  b->pppConfig.links[l->bundleIndex].mru = LCP_DEFAULT_MRU;
>   NgFuncSetConfig(b);
>
>   /* Special stuff when last link goes down... */
>

Точно, не там заменил :)

Все работает, спасибо еще раз :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру