The OpenNET Project / Index page

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

VPN соединение из Linux (pptpclient) к FreeBSD (mpd) с шифрованием MPPE128 (vpn linux freebsd crypt pptp tunnel patch)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: vpn, linux, freebsd, crypt, pptp, tunnel, patch,  (найти похожие документы)
From: Alexander Teplyh <checkbox@yandex.ru> Newsgroups: email Date: Mon, 9 Dec 2003 14:31:37 +0000 (UTC) Subject: VPN соединение из Linux (pptpclient) к FreeBSD (mpd) с шифрованием MPPE128 Итак... Задача: Подключаться к серверу mpd 3.13 (на FreeBSD) из Linux'а с помощью программы pptp-client. Исходные данные: Сервер: mpd 3.13, включены авторизация MSCHAPV2 и шифрование MPPE128 Клиент: RedHat9, ppp-2.4.2b3, pptp-client-1.3.1 К слову: Этой статьи бы не было, если бы мой провайдер не потребовал MPPE128, до этого всё работало. Как оказалось реализация коротких кодов протокола внутри MPPE посылок разная у FreeBSD и Linux, что и приводило к интересному эффекту: соединение устанавливалось, а получить по нему хоть что-нибудь неполучалось. Но вываливалось сообщение: unsupported protocol 0x2145 После почти полугодового ожидания появился патч для Linux, его то мы и используем. За основу было взято описание настройки pptp-соединения для RedHat9 http://pptpclient.sourceforge.net/howto-redhat-90.phtml Качаем патч: http://sourceforge.net/tracker/download.php?group_id=33063&atid=407154&file_id=68370&aid=847523 Вот его текст, если что... Написал его Stephen J. Leavitt (sleavitt) Для озакомления: http://sourceforge.net/mailarchive/forum.php?thread_id=3522622&forum_id=773 И ещё: http://sourceforge.net/tracker/index.php?func=detail&aid=847523&group_id=33063&atid=407154 ----------------------------------------------------------------------- --- ppp_mppe_compress.c.old Sat Nov 22 00:31:02 2003 +++ ppp_mppe_compress.c Sat Nov 22 12:06:01 2003 @@ -408,6 +408,7 @@ unsigned ccount; int flushed = MPPE_BITS(ibuf) & MPPE_BIT_FLUSHED; int sanity = 0; + int retval; if (isize <= PPP_HDRLEN + MPPE_OVHD) { if (state->debug) @@ -528,6 +529,14 @@ /* And finally, decrypt the packet. */ arcfour_decrypt(&state->arcfour_context, ibuf, isize, obuf); + /* Do PFC decompression if necessary */ + retval = osize; + if (obuf[0] & 0x1) { + memmove(obuf + 1, obuf, osize); + obuf[0] = 0; + ++retval; + } + state->stats.unc_bytes += osize; state->stats.unc_packets++; state->stats.comp_bytes += isize; @@ -536,7 +545,7 @@ /* good packet credit */ state->sanity_errors >>= 1; - return osize; + return retval; } /* ----------------------------------------------------------------------- Качаем http://prdownloads.sourceforge.net/pptpclient/ppp-2.4.2_cvs_20030610-1.i386.rpm Устанавливаем ppp-2.4.2... Качаем http://prdownloads.sourceforge.net/poptop/kernelmod-0.7.1.tar.gz?download Разархивируем kernelmod-0.7.1 Проверяем и устанавливеам: gcc-3.2.2-5.i386.rpm kernel-source-2.4.20-8.i386.rpm rpm-build-4.2-0.69.i386.rpm rpm-devel-4.2-0.69.i386.rpm Копируем патч в каталог kernelmod/src/linux-default-bsd-mppe/ Переходим в него Даём команду #patch -p0 < ppp-mppe_8-bit-protocol.patch.txt Переходим в каталог kernelmod/ Даём команду #./kernelmod.sh Далее всё стандартно, ставим pptp-client, pptp-php-gtk и пользуемся VPN

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, Blc (?), 17:23, 09/12/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А зачем патч качать откудато, если он идет в поставке в последнеи pppd, народ читайте документацию
     
     
  • 2.2, Alexander (?), 19:09, 09/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Не спорю, идёт, работает, но не с сервером на FreeBSD
    PopTop и Windows серверы работают с pptpclient без проблем
    Вот история событий:
    http://linuxportal.ru/forums/index.php/t/12978/
    И продолжение:
    http://linuxportal.ru/forums/index.php/t/13406/
     

  • 1.3, Andrey (?), 09:40, 11/12/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    У меня таже фигня, между Linux-Linux, VPN-соединение устанавливается, но пинги не ходят, при этом загрузка проца на 100 процентов, загрузка интерфейса, то же на 100, что то передаёт, непонятно что.... Удавалось решать эту проблему удалением какого-то пути, который pptp-client дописывает сам, но, если без шифрование при удалении этого пути всё работает, то с mppe шифрованием, нужно удалить это путь как можно быстрее после создания его, обычно удаётся это сделать с 5-10 попытки.... После удалении этого пути нагрузка проца падает и сетевого интерфейса тоже... Никто с таким не сталкивался???
     
     
  • 2.4, Alexander (?), 17:00, 11/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Видимо у тебя получается "петля" для пакетиков.
    То есть пакет не уходит из ppp интерфейса из за неправильного роутинга
    У меня конкретно та же ситуация, решается просто:
    Прописывай путь перед началом соединения до VPN сервера через eth0
    Что-то типа route add 192.168.4.1 dev eth0
    А потом соединяйся.
    Подробно и с картинками описано на pptpclient.sourceforge.net
    Да, и посмотри (Например из windows) какой default gw после соединения,
    Мой провайдер неожиданно выставляет не адрес VPN сервера, а произвольный
    Типа 192.168.100.29 (eth0 у меня 192.168.4.29)
    Его то же надо прописать
    Типа route add default gw 192.168.100.29
    Но после соединения.
     
  • 2.5, Alexander (?), 17:03, 11/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Воспользуйся Ethereal для Linux чтобы посмотреть траффик
    Последовательно на всех интерфейсах - Думаю на половину решишь проблему
    У него есть версия и для windows - так что можно сравнивать
    соединения в linux и в windows
     
  • 2.6, Alexander (?), 17:09, 11/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати если в винде всё ОК,
    Простая команда route print даёт тебе правильные пути - такие и в линуксе делай.
    Ещё дай команду ipconfig в винде - тоже информация.

     
     
  • 3.7, Andrey (?), 01:15, 12/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Я понимаю что петля получается.... :-))
    Но беда в том, что эта петля нормально убирается если нет mppe шифрования... А вот если оно с ним, то фигня...

    А то что путь надо перед соединением прописать, так pptp-client при соединении его почему то удаляет и ставит свой.... Ну опять же говорю, что это путь (который pptp прописал) удаляется и всё номально без mppe шифрования, с ним надо очень быстро его удалить.. :-)) Получается с 5-10 попытки..

     
     
  • 4.8, Alexander (?), 19:54, 13/12/2003 [^] [^^] [^^^] [ответить]  
  • +/
    Может посмотрим на конфиги и мессаги?
     

  • 1.9, Alex (?), 09:58, 30/12/2003 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вообще-то  есть мнение что бага то во FreeBSD
    вот патчик (найден весной в Инете)

    --- sys/netgraph/ng_ppp.c.orig Thu Nov 21 12:39:06 2002
    +++ sys/netgraph/ng_ppp.c Thu Nov 21 12:39:26 2002
    @@ -744,7 +744,7 @@
    case HOOK_INDEX_VJC_VJIP:
    if (priv->conf.enableCompression
        && priv->hooks[HOOK_INDEX_COMPRESS] != NULL) {
    - if ((m = ng_ppp_addproto(m, proto, 1)) == NULL) {
    + if ((m = ng_ppp_addproto(m, proto, 0)) == NULL) {
    NG_FREE_META(meta);
    return (ENOBUFS);
    }

     
     
  • 2.10, Alexander (?), 20:00, 02/01/2004 [^] [^^] [^^^] [ответить]  
  • +/
    Видел. Заставить администратора нашей районной локальной сети поставить патч на его сервер FreeBSD не удалось. Я то на стороне клиента.
    Так что... Спасибо за участие.
     
  • 2.13, weldpua2008 (ok), 23:40, 26/02/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Эм...
    Я тут смотрю ~2002-3гг
    А чё делать на FreeBSD 6.0/6.1/6.2?
    У Меня на них с mpd4b4 , mpd4.1 Линух не конектится!!!
    И пробывал когда-то FreeBSD тож :) ->FreeBSD6.0+mpd4.0b4
    Симптом один и тот же:
    За небольшой промежуток времени набегает туча трафика до 4Мб/сек...
    Пинг никуда не ходит...
     

  • 1.11, RADmir (?), 19:54, 07/01/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я тут немного не в курсе, но вот набрел на интересный сайтец: http://vpnaccounts.info/ может через них попробывать?
     
  • 1.12, Max (??), 19:09, 30/05/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как в SuSE 9.2 настроить VPN ?
    подскажите плиз
     
     
  • 2.14, weldpua2008 (ok), 01:14, 27/02/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Вот чего Я достиг:
    FreeBSD6.2RC1+mpd4.1

    mpd.conf:

    pptp100:
            new -i ng100 pptp100 pptp100
            set ipcp ranges 192.168.11.1/32 192.168.11.101/32
            load pptp_standart

    pptp_standart:
        set pptp disable windowing
        set iface route default
        set iface disable on-demand
        #
        set iface enable tcpmssfix
        #
        set bundle disable multilink
        set link yes acfcomp protocomp
        set iface up-script "/usr/local/etc/mpd4/link-up"
        set iface down-script "/usr/local/etc/mpd4/link-down"
        set link no pap chap
        set link enable chap
        set link keep-alive 10 75
        set ipcp yes vjcomp
        set ipcp dns 10.11.25.1
    #    set link mtu 1460
    #    set link mru 1460
        set iface enable proxy-arp
        set bundle enable compression
        set ccp yes mppc
        set ccp yes mpp-e40
    #    set ccp yes mpp-e56
        set ccp yes mpp-e128
        set ccp yes mpp-stateless
        set pptp enable incoming
        set pptp disable originate
    #   set radius config /opt/radius.conf
        set radius me 127.0.0.1
        set radius retries 2
        set radius server 127.0.0.1 password 1812 1813
        set radius timeout 5
        set auth acct-update 300
        set auth enable radius-auth
        set auth enable radius-acct
    #    set ipcp yes radius-ip
    #   set iface route

    mpd.links:
    pptp100:
            set link type pptp

    Конект есть, а Инета нету :(

     
     
  • 3.15, Serge (??), 15:46, 05/11/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Всем День добрый При детальном анализе процесса коннекта к people net выяснилис... большой текст свёрнут, показать
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




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

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