Page 5 of 15 FirstFirst ... 34567 ... LastLast
Results 61 to 75 of 223

Thread: 802.1x EAP-MD5 авторизация у провайдера

  1. #61
    Quote Originally Posted by Oleg View Post
    Можно попробовать вот этот супликант
    Угу, этот работает... но, авторизацию не проходит:

    Code:
    Initializing interface 'vlan1' conf '/tmp/wpa_supplicant.conf' driver 'wired' ctrl_interface 'N/A' bridge 'N/A'
    Configuration file '/tmp/wpa_supplicant.conf' -> '/tmp/wpa_supplicant.conf'
    Reading configuration file '/tmp/wpa_supplicant.conf'
    ap_scan=0
    Line: 2 - start of a new network block
    key_mgmt: 0x8
    eap methods - hexdump(len=16): 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00
    identity - hexdump_ascii(len=10):
         61 61 31 30 37 30 33 32 38 35                     aa_что-то_      
    password - hexdump_ascii(len=10): [REMOVED]
    eapol_flags=0 (0x0)
    Priority group 0
       id=0 ssid=''
    Initializing interface (2) 'vlan1'
    EAPOL: SUPP_PAE entering state DISCONNECTED
    EAPOL: KEY_RX entering state NO_KEY_RECEIVE
    EAPOL: SUPP_BE entering state INITIALIZE
    EAP: EAP entering state DISABLED
    EAPOL: External notification - portEnabled=0
    EAPOL: External notification - portValid=0
    wpa_driver_wired_init: Added multicast membership with packet socket
    Own MAC address: 00:1b:fc:81:74:d3
    Setting scan request: 0 sec 100000 usec
    Added interface vlan1
    EAPOL: External notification - portControl=Auto
    Already associated with a configured network - generating associated event
    Association info event
    State: DISCONNECTED -> ASSOCIATED
    Associated to a new BSS: BSSID=01:80:c2:00:00:03
    No keys have been configured - skip key clearing
    Network configuration found for the current AP
    EAPOL: External notification - portControl=Auto
    Associated with 01:80:c2:00:00:03
    EAPOL: External notification - portEnabled=0
    EAPOL: External notification - portValid=0
    EAPOL: External notification - portEnabled=1
    EAPOL: SUPP_PAE entering state CONNECTING
    EAPOL: SUPP_BE entering state IDLE
    EAP: EAP entering state INITIALIZE
    EAP: EAP entering state IDLE
    Cancelling scan request
    EAPOL: startWhen --> 0
    EAPOL: SUPP_PAE entering state CONNECTING
    EAPOL: txStart
    TX EAPOL - hexdump(len=4): 01 01 00 00
    EAPOL: startWhen --> 0
    EAPOL: SUPP_PAE entering state CONNECTING
    EAPOL: txStart
    TX EAPOL - hexdump(len=4): 01 01 00 00
    EAPOL: idleWhile --> 0
    EAP: EAP entering state FAILURE
    CTRL-EVENT-EAP-FAILURE EAP authentication failed
    EAPOL: SUPP_PAE entering state AUTHENTICATING
    EAPOL: SUPP_BE entering state FAIL
    EAPOL: SUPP_PAE entering state HELD
    EAPOL: SUPP_BE entering state IDLE
    EAPOL: startWhen --> 0
    EAPOL: heldWhile --> 0
    EAPOL: SUPP_PAE entering state CONNECTING
    и т.д.

  2. #62
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Quote Originally Posted by Corvus Corax View Post
    Угу, этот работает...
    Это скверно. Значит я всё таки потерял исходники актуальные. В тех, что у меня есть видимо испорчено чтение конфиг файла. Я припоминаю, что в какой-то момент начал с этим играться.

  3. #63
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Я слегка иначе собрал

    http://oleg.wl500g.info/8021x/wpa_supplicant

    Теперь новая версия похожа на старую?

  4. #64
    Quote Originally Posted by Oleg View Post
    Теперь новая версия похожа на старую?
    Хм... в каком-то смысле похожа, но только на "новую старую" - лог один в один с первоначальным, заканчивающимся строкой
    Code:
    Using wired driver - overriding ap_scan configuration

  5. #65
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    У Вас либо по дороге прокси кеширующий, либо не туда файл попал. Я сейчас проверил, он работает правильно, т.е. конфиг читается. Попробуйте ещё раз.

    lly

    Я начал тогда переделку с тем, чтобы отключить встроенный парсер командной строки, но так и не доделал. В итоге патч вообще не нужен. Нужен только конфиг c таким содержанием.

    Code:
    CONFIG_DRIVER_WIRED=y
    CONFIG_IEEE8021X_EAPOL=y
    CONFIG_EAP_MD5=y
    CONFIG_NO_WPA=y
    CONFIG_NO_WPA2=y
    CONFIG_NO_AES_EXTRAS=y
    CONFIG_BACKEND=file

  6. #66
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by Oleg View Post
    Я начал тогда переделку с тем, чтобы отключить встроенный парсер командной строки, но так и не доделал. В итоге патч вообще не нужен. Нужен только конфиг c таким содержанием.
    Я давно догадался , мой вариант собран именно так, только версия 0.6.8 и добавлено
    Code:
    CONFIG_NO_CONFIG_BLOBS=y
    плюс мелкий патчик исправляющий инициализацию в случае отсутсвия поддержки блобов. Если кому интересно - выложу, но он прозрачен.

  7. #67
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    В старой версии CONFIG_NO_CONFIG_BLOBS не было.

    Сейчас надо бы заставить эту старую версию работать. Тут такое дело: сразу после

    TX EAPOL - hexdump(len=4): 01 01 00 00

    должен приходить ответ типа такого:

    RX EAPOL from 00:17:9a:7a:7f:cc
    RX EAPOL - hexdump(len=46): 01 00 00 0f 01 01 00 0f 01 55 73 65 72 20 6e 61 6d 65 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

    Но он не приходит. Причины может быть две: провайдер молчит, либо второй вариант - в прошивке я что-то поменял.

    Дата, когда всё работало - 20 декабря 2007 года. Прошивка была 1.9.2.7-8. Имеет смысл попробовать её.

    Обязательно нужно убедиться, что МАК адрес склонирован от компьютера с виндоус, который подключался в последний раз. Там могут быть какие-то кеши на провайдерской стороне...

  8. #68
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by Oleg View Post
    Сейчас надо бы заставить эту старую версию работать.
    Так кто спорит то?
    Я проблему вижу в том, что ни у кого из разработчиков нет полигона с авторизатором EAP-MD5. PPPoE сервер я себе на домашний линух уже водрузил, а вот свободного EAP не нашел. Плохо искал?

  9. #69
    Quote Originally Posted by Oleg View Post
    У Вас либо по дороге прокси кеширующий, либо не туда файл попал. Я сейчас проверил, он работает правильно, т.е. конфиг читается. Попробуйте ещё раз.
    Прокси нет. Первую и вторую редакции "нового" суппликанта, естественно, сравнивал, они различались. Но, видимо, всё-таки их перепутал на самом роутере. Попробовал ещё раз - "заработало", лог стал как у wpa_supplicant.old. Пробовал на 1.9.2.7-10. Сменил MAC на "виндовой" - нет реакции. Провайдер не отвечает вообще.

    Прошивка была 1.9.2.7-8. Имеет смысл попробовать её.
    Прошился ей, аналогично - лог тот же. Сменил MAС - реакции нет.

    RX EAPOL from 00:17:9a:7a:7f:cc
    RX EAPOL - hexdump(len=46): 01 00 00 0f 01 01 00 0f 01 55 73 65 72 20 6e 61 6d 65 3a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    Угу, на "большом" линуксе (Debian) авторизация проходит отлично. И без всякой смены MAC-адресса.
    Last edited by Corvus Corax; 25-02-2009 at 16:09.

  10. #70
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Плохо. Остаётся ждать счастливого обладателя wl500w, чтобы отсеять версию с VLAN.

    А где взять исходники eapd или как его там? Я могу собрать версию для своей прошивки, чтобы проверить.

  11. #71
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    Quote Originally Posted by Oleg View Post
    А где взять исходники eapd или как его там? Я могу собрать версию для своей прошивки, чтобы проверить.
    Оригинал - в форуме dd-wrt. Я немного их поправил на предмет логгирования в syslog и выноса констант в main.c, но логику не трогал:
    Last edited by lly; 28-03-2009 at 19:37.

  12. #72
    Quote Originally Posted by Oleg View Post
    А где взять исходники eapd или как его там?
    Тут http://www.dd-wrt.com/phpBB2/viewtopic.php?t=45001

    Вообще проблемы с авторизацией по протоколу 802.1x ислючительно аппаратные. Если быть точнее на диапазон mac адресов, отвечающих за авторизацию не приходят пакеты без конфигурирования свитча (https://dev.openwrt.org/ticket/1862 ). В wpa_supplicant был добавлен костыль - спецальный драйвер, для его использования нужно собрать суппликнт с опцией CONFIG_DRIVER_ROBOSWITCH=y.

    2lly: если будеш исользовать eapd, то поправь в socket.c функцию:
    Code:
    int socket_recv(int socket,u8 *data,u16 data_size)
    {
    	struct sockaddr_ll ll;
    	memset(&ll, 0, sizeof(ll));
    	int res;
    	while (1)
    	{
    		socklen_t rlen = sizeof(ll);
    		memset(&ll, 0, sizeof(ll));
    		ll.sll_family = AF_PACKET;
    		res = recvfrom(socket, data, data_size, 0,(struct sockaddr *)&ll,&rlen);
    		if (res<=0)
    			break;
    		if (ll.sll_ifindex == if_id)
    			break;
    	}
    	if (res < 0) 
    	{
    		perror("recvfrom");
    		return -1;
    	}
    	return res;
    }
    В оригинале там зактомменчен цикл do while, но с ним почемто не работало, сделал while(1) - некрасиво, зато работает . Если функцию не поправить, то будут конфликты с авторизацией 802.1x по wifi.
    Last edited by m0xf; 25-02-2009 at 17:13.

  13. #73
    Join Date
    Nov 2006
    Location
    Russia, Moscow
    Posts
    3,640
    m0xf
    Супер! Спасибо за объяснения! Очень тяжело было найти концы проблемы, так как не мог наблюдать ее у себя.

    У меня остался только один вопрос - почему в driver_init() ты в drv->ifr.ifr_name записываешь "eth0" а не "vlan1"?

  14. #74
    Quote Originally Posted by lly View Post
    У меня остался только один вопрос - почему в driver_init() ты в drv->ifr.ifr_name записываешь "eth0" а не "vlan1"?
    robo.c вообще почти полностью списан из wpa supplicant, там какраз и происходит то конфигурирование свитча для приёма нужных пактов. Производится запись в некие регистры, что точно там происходит трудно сказать, спецификации broadcom не открывает . Как я понял eth0 используется по тому, что он связан с драйвером, через который происходит обращение к регистрам свитча. Более того, после такой "конфигурации", пакеты с mac адресом 0180c2000003, которые приходят в wan порт, прилетают не на vlan1, а на eth0. Выбор vlan с которого принимаются пакты авторизации производится в driver_init, туда передаётся нужный vlan.

    Вот такой сюрприз от broadcom... Возможно можно както сделать, чтобы работа с диапазоном mac адресов 0180c2000000-0180c20000FF была прозрачна для программ, и добавить это в драйвер сетевой карты, но без спеков это проблемотично.

  15. #75
    Всё это замечательно конечно... но кто-нибудь может просто скомпилить свежий суппликант с этим CONFIG_DRIVER_ROBOSWITCH и дать потестить?

Page 5 of 15 FirstFirst ... 34567 ... LastLast

Similar Threads

  1. 2 провайдера с резервированием канала
    By andycpp in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 204
    Last Post: 14-12-2012, 12:58
  2. Asus WL-520gC - настройка роутера
    By 2vv in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 391
    Last Post: 09-04-2010, 10:16

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •