Не работает rlm_perl!

Ответить
nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Не работает rlm_perl!

Сообщение nsa »

Попробовал установить rlm_perl, пересобрал:
perl5.8.8, freeradius1.1.3, perl-dbi и perl-dbd-mysql без потоков(нитей)!
Пробую запустить freeradius -X!
Привожу кусок лога:

Module: Loaded perl
perl: module = "/usr/abills/libexec/rlm_perl.pl"
perl: func_authorize = "authorize"
perl: func_authenticate = "authenticate"
perl: func_accounting = "accounting"
perl: func_preacct = "preacct"
perl: func_checksimul = "checksimul"
perl: func_detach = "detach"
perl: func_xlat = "xlat"
perl: func_pre_proxy = "pre_proxy"
perl: func_post_proxy = "post_proxy"
perl: func_post_auth = "post_auth"
perl: perl_flags = "(null)"
perl: func_start_accounting = "(null)"
perl: func_stop_accounting = "(null)"
Can't load '/usr/lib/perl/5.8/auto/POSIX/POSIX.so' for module POSIX: /usr/lib/perl/5.8/auto/POSIX/POSIX.so: undefined symbol: PL_sig_name at /usr/lib/perl/5.8/XSLoader.pm line 70.
at /usr/lib/perl/5.8/POSIX.pm line 26
Compilation failed in require at /usr/abills/libexec/config.pl line 148.
BEGIN failed--compilation aborted at /usr/abills/libexec/config.pl line 148.
Compilation failed in require at /usr/abills/libexec/rlm_perl.pl line 35.

По гуглив немного относительно этой ошибки, нашёл сайт где была подобная ошибка но для биллинговой системы Cake, там предложили удалить пакет libltdl3-dev, попробовал пересобрать freeradius опять не так вылезли ошибки относительно libltdl3-dev, но попытка не удалась ошибка присутствует. Подробной установки rlm_perl под Linux не нашёл!

Работает rlm_perl под Linux?
Что я делаю не правильно?

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

Can't load '/usr/lib/perl/5.8/auto/POSIX/POSIX.so' for module POSIX: /usr/lib/perl/5.8/auto/POSIX/POSIX.so: undefined symbol: PL_sig_name at /usr/lib/perl/5.8/XSLoader.pm line 70.
думаю что и радиус и перл должны быть откомпилены компилятором одной версии и с одинаковыми опциями... а судя по цитате - это не так...

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

ran писал(а):
Can't load '/usr/lib/perl/5.8/auto/POSIX/POSIX.so' for module POSIX: /usr/lib/perl/5.8/auto/POSIX/POSIX.so: undefined symbol: PL_sig_name at /usr/lib/perl/5.8/XSLoader.pm line 70.
думаю что и радиус и перл должны быть откомпилены компилятором одной версии и с одинаковыми опциями... а судя по цитате - это не так...
Понял это возможно!

А вы используете rlm_perl?
Какая у вас OS?

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

А вы используете rlm_perl?
нет - по причине того что мне нужен перл с потоками. Вот появится для моего дистра рпм радиуса с поддержкой потокового рлм_перл - буду юзать... А самому собирать некогда - оно того не стоит :)
Какая у вас OS?
оупенсюзя

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Продолжение страданий установки rlm_perl !

Сообщение nsa »

Для установки rlm_perl создал виртуальную машину, установил debian etch R3 !
Пересобрал пакеты описываемые выше, выяснил проблему с модулем POSIX.so, проблема была не в компиляторе!

Подключил модуль rlm_perl, попробовал radtest !
radtest vpn-serge xxxxx 192.168.51.123:1812 0 testing123 0 192.168.51.123
Sending Access-Request of id 59 to 192.168.51.123 port 1812
User-Name = "vpn-serge"
User-Password = "xxxxx"
NAS-IP-Address = 192.168.51.123
NAS-Port = 0
Framed-Protocol = PPP
rad_recv: Access-Accept packet from host 192.168.51.123:1812, id=59, length=68
Acct-Interim-Interval = 60
Session-Timeout = 2359125
PPPD-Upstream-Speed-Limit = 0
Octets-Direction = Route-IP-No
Framed-IP-Address = 10.254.1.225
Session-Octets-Limit = 418381824
Framed-IP-Netmask = 255.255.255.255
PPPD-Downstream-Speed-Limit = Send-Auth-None

Далее настроил на реальной машине клиента и попробовал подключиться!

pppd call vpn-serge
using channel 12469
Using interface ppp2
Connect: ppp2 <--> /dev/pts/15
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xdba977dc> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0x4b21caf6> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0x4b21caf6> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xdba977dc> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xdba977dc> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xdba977dc]
rcvd [LCP EchoReq id=0x0 magic=0x4b21caf6]
sent [LCP EchoRep id=0x0 magic=0xdba977dc]
rcvd [CHAP Challenge id=0x11 <944dde20e8f05899e2794b6127743a46>, name = "debianvrt"]
sent [CHAP Response id=0x11 <57b6eb71e4b4101503b6355420960a930000000000000000e36f466583460eeead1e9cd59c402673d7b645e6fa11501a00>, name = "vpn-serge"]
rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0xd2634e67> <pcomp> <accomp>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0> <magic 0xbd243410> <pcomp> <accomp>]
sent [LCP ConfAck id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0xd2634e67> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xdba977dc> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0> <magic 0xbd243410> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xbd243410]
rcvd [LCP EchoReq id=0x0 magic=0xd2634e67]
sent [LCP EchoRep id=0x0 magic=0xbd243410]
rcvd [CHAP Challenge id=0x42 <cdea41cca22c7cb6c79d19220df8c17d>, name = "debianvrt"]
sent [CHAP Response id=0x42 <8ac499d0a82e4a5b197f298e401608670000000000000000a335e201e268e7e596d858885c7bf0352fc78c7075afa45800>, name = "vpn-serge"]
rcvd [LCP EchoRep id=0x0 magic=0xd2634e67]
rcvd [CHAP Success id=0x42 "S=AD5760A5DBFE9B0F46717D393F7F28EB5ACFEC1E"]
CHAP authentication succeeded
sent [CCP ConfReq id=0x1 <mppe +H -M +S -L -D -C>]
rcvd [LCP TermReq id=0x3 "MPPE required but not available"]
LCP terminated by peer (MPPE required but not available)
sent [LCP TermAck id=0x3]
Script /usr/sbin/pptp 192.168.51.123 --nolaunchpppd finished (pid 24096), status = 0x0
Modem hangup
Connection terminated.

Насторожило вот это!
rcvd [LCP TermReq id=0x3 "MPPE required but not available"]
LCP terminated by peer (MPPE required but not available)
Хотя поддержка mppe в ядре включена и в ppp тоже!

По логам радиус сервера авторизация успешна!

rad_recv: Access-Request packet from host 127.0.0.1:1033, id=255, length=151
Service-Type = Framed-User
Framed-Protocol = PPP
User-Name = "vpn-serge"
MS-CHAP-Challenge = 0xcdea41cca22c7cb6c79d19220df8c17d
MS-CHAP2-Response = 0x42008ac499d0a82e4a5b197f298e401608670000000000000000a335e201e268e7e596d858885c7bf0352fc78c7075afa458
Calling-Station-Id = "192.168.51.2"
NAS-IP-Address = 192.168.51.123
NAS-Port = 1
Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 10
Exec-Program output: User-Password == "xxxxx"
Exec-Program-Wait: value-pairs: User-Password == "xxxxx"
Exec-Program: returned: 0
modcall[authorize]: module "pre_auth" returns ok for request 10
modcall[authorize]: module "preprocess" returns ok for request 10
Using perl at 0x800fc6f0
rlm_perl: Added pair Session-Timeout = 2358425
rlm_perl: Added pair MS-MPPE-Encryption-Types = 0x00000006
rlm_perl: Added pair Session-Octets-Limit = 418381824
rlm_perl: Added pair PPPD-Downstream-Speed-Limit = 0
rlm_perl: Added pair MS-CHAP2-SUCCESS = 0x42533d41443537363041354442464539423046343637313744333933463746323845423541434645433145
rlm_perl: Added pair MS-MPPE-Encryption-Policy = 0x00000001
rlm_perl: Added pair Acct-Interim-Interval = 60
rlm_perl: Added pair PPPD-Upstream-Speed-Limit = 0
rlm_perl: Added pair Octets-Direction = 0
rlm_perl: Added pair Framed-IP-Address = 10.254.1.225
rlm_perl: Added pair Framed-IP-Netmask = 255.255.255.255
rlm_perl: Added pair User-Password = xxxxx
rlm_perl: Added pair Auth-Type = Accept
modcall[authorize]: module "perl" returns ok for request 10
rlm_mschap: Found MS-CHAP attributes. Setting 'Auth-Type = mschap'
modcall[authorize]: module "mschap" returns ok for request 10
rlm_realm: No '@' in User-Name = "vpn-serge", looking up realm NULL
rlm_realm: No such realm "NULL"
modcall[authorize]: module "suffix" returns noop for request 10
modcall: leaving group authorize (returns ok) for request 10
rad_check_password: Found Auth-Type Accept
rad_check_password: Auth-Type = Accept, accepting the user
Sending Access-Accept of id 255 to 127.0.0.1 port 1033
Session-Timeout = 2358425
MS-MPPE-Encryption-Types = 0x00000006
Session-Octets-Limit = 418381824
PPPD-Downstream-Speed-Limit = Send-Auth-None
MS-CHAP2-Success = 0x42533d41443537363041354442464539423046343637313744333933463746323845423541434645433145
MS-MPPE-Encryption-Policy = 0x00000001
Acct-Interim-Interval = 60
PPPD-Upstream-Speed-Limit = Bridge-No
Octets-Direction = Route-IP-No
Framed-IP-Address = 10.254.1.225
Framed-IP-Netmask = 255.255.255.255
Finished request 10

Далее на виртуальной и реальной машине выключил поддержку mppe!

Подключение прошло успешно!
pppd call vpn-serge
using channel 12472
Using interface ppp2
Connect: ppp2 <--> /dev/pts/13
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xfb6fb7ff> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0xf85806f5> <pcomp> <accomp>]
sent [LCP ConfAck id=0x1 <asyncmap 0x0> <auth chap MS-v2> <magic 0xf85806f5> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xfb6fb7ff> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xfb6fb7ff> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xfb6fb7ff]
rcvd [LCP EchoReq id=0x0 magic=0xf85806f5]
sent [LCP EchoRep id=0x0 magic=0xfb6fb7ff]
rcvd [CHAP Challenge id=0xfc <89e55872a78b68b636276be64eb07042>, name = "debianvrt"]
sent [CHAP Response id=0xfc <7626846afdbf365112acc52d35fb716100000000000000006e79463970997c14cdc6c5c1069f801b7da8644c354abe9000>, name = "vpn-serge"]
rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0x1acd73be> <pcomp> <accomp>]
sent [LCP ConfReq id=0x2 <asyncmap 0x0> <magic 0x51cefcb7> <pcomp> <accomp>]
sent [LCP ConfAck id=0x2 <asyncmap 0x0> <auth chap MS-v2> <magic 0x1acd73be> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xfb6fb7ff> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x2 <asyncmap 0x0> <magic 0x51cefcb7> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0x51cefcb7]
rcvd [LCP EchoReq id=0x0 magic=0x1acd73be]
sent [LCP EchoRep id=0x0 magic=0x51cefcb7]
rcvd [CHAP Challenge id=0x53 <d312509ea7802d642c1866f853288414>, name = "debianvrt"]
sent [CHAP Response id=0x53 <1415992eba4a5951006e86330e9e860800000000000000000e809d04c18c65cff2942e9417da3654461e91dae2911a0500>, name = "vpn-serge"]
rcvd [LCP EchoRep id=0x0 magic=0x1acd73be]
rcvd [CHAP Success id=0x53 "S=8EE2D52CC882E592A9F86B28806FC2AEC1A2EB4B"]
CHAP authentication succeeded
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 192.168.51.2>]
rcvd [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15>]
sent [CCP ConfReq id=0x1]
sent [CCP ConfRej id=0x1 <deflate 15> <deflate(old#) 15>]
rcvd [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 10.254.1.1>]
sent [IPCP ConfAck id=0x1 <compress VJ 0f 01> <addr 10.254.1.1>]
rcvd [IPCP ConfNak id=0x1 <addr 10.254.1.225>]
sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 10.254.1.225>]
rcvd [CCP ConfAck id=0x1]
rcvd [CCP ConfReq id=0x2]
sent [CCP ConfAck id=0x2]
rcvd [IPCP ConfAck id=0x2 <compress VJ 0f 01> <addr 10.254.1.225>]
Cannot determine ethernet address for proxy ARP
local IP address 10.254.1.225
remote IP address 10.254.1.1
Script /etc/ppp/ip-up started (pid 31243)
Script /etc/ppp/ip-up finished (pid 31243), status = 0x0

Далее использовал стандартные модуля не (rlm_perl) для авторизации с включеным mppe, коннектилось без проблем!

Так вот вопрос?
Получается что при включеном rlm_perl! mppe не работает?

Конечно я читал топик viewtopic.php?t=3347&highlight=rlmperl


И еще в логах появляется такого типа предупреждение!
Subroutine access_deny redefined at /usr/abills/libexec/rauth.pl line 254.
Reply-Message = "Unknow server ''"
Говорят в 0.4 поправили!?

И еще вопрос при апдейте с 0.37b до 0.40 версии по Changelog, будет ли код версии 0.37b обратно совместим или придётся апдейтится до 0.4
версии?


Есть мысли по этому поводу?

Если нужна помощь в последовательности действий для запуска rlm_perl обращайтесь!

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

с мппе если нада сам колупайся ибо он и нахрен ненужен ;)
при апдейте с 0.37b до 0.40 версии по Changelog, будет ли код версии 0.37b обратно совместим или придётся апдейтится до 0.4
версии?
по ченжлогу ты приведёшь базу в соответствие с каррент... какой смысл юзать устаревший код, а не обновиться до каррент?
Если нужна помощь в последовательности действий для запуска rlm_perl обращайтесь!
а чё там военного? уже вроде и с потоковым должно работать судя по ватетому:
*
2.11.2008

Улутшена поддержка rlm_perl:

1.
Доработана работа с потоковым Perl (threaded).
2.
Ликвидированная ошибка пропадания свяи с сервером
3.
Ускорена работа авторизатора.

Добавлена возможность сброса с Cisco NAS используя Radius POD
проверить вот только некогда...

nsa
Сообщения: 41
Зарегистрирован: Пт авг 01, 2008 4:55 am

Сообщение nsa »

ran писал(а):с мппе если нада сам колупайся ибо он и нахрен ненужен ;)
Так уж сложилось что работали с шифрованием как никак защита, проц грузит ну и что, щас это не проблема, перевести всех пользователей вот это проблема, впринципе можно оставить анонс в форуме или на сайте!
ran писал(а):а чё там военного? уже вроде и с потоковым должно работать судя по ватетому:
*
2.11.2008

Улутшена поддержка rlm_perl:

1.
Доработана работа с потоковым Perl (threaded).
2.
Ликвидированная ошибка пропадания свяи с сервером
3.
Ускорена работа авторизатора.

Добавлена возможность сброса с Cisco NAS используя Radius POD
Данный ченж появился 02.11.2008 к сожалению не обратил внимание а страдал со своим rlm_perl!

И что вы хотите сказать что в этих изменениях работает mppe?

ran
Сообщения: 2298
Зарегистрирован: Вс окт 21, 2007 2:29 pm

Сообщение ran »

как никак защита
чего? и от кого? или у тебя дальше в инет пакет тоже шифрованный идёт? :D так для этого есть шифрование уровня приложений - оупенссл например... мсчапв2 - согласен нужно... а мппе?
И что вы хотите сказать что в этих изменениях работает mppe?
ran писал(а): проверить вот только некогда...
а мппе так и даже проверять небуду :)

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Сообщение ~AsmodeuS~ »

Да залито все исправления и улутшена работа с rlm_perl

chtito
Сообщения: 313
Зарегистрирован: Чт дек 13, 2007 11:03 am

Re: Продолжение страданий установки rlm_perl !

Сообщение chtito »

nsa писал(а):Для установки rlm_perl создал виртуальную машину, установил debian etch R3 !
Пересобрал пакеты описываемые выше, выяснил проблему с модулем POSIX.so, проблема была не в компиляторе!
А как вы это узнали? Сейчас у меня фрирадиус после обновления 2.1.3 -> 2.1.6 вылетает с той же ошибкой в модуле POSIX.so.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не работает rlm_perl!

Сообщение ~AsmodeuS~ »

скорее всего или пер без потоков или радиус перл с потоками

chtito
Сообщения: 313
Зарегистрирован: Чт дек 13, 2007 11:03 am

Re: Не работает rlm_perl!

Сообщение chtito »

~AsmodeuS~ писал(а):скорее всего или пер без потоков или радиус перл с потоками
Не, ошибка такая:
Can't load '/usr/local/lib/perl5/5.8.8/mach/auto/POSIX/POSIX.so' for module POSIX: /usr/local/lib/perl5/5.8.8/mach/auto/POSIX/POSIX.so: Undefined symbol "PL_sig_name" at /usr/local/lib/perl5/5.8.8/mach/XSLoader.pm line 70.
at /usr/local/lib/perl5/5.8.8/mach/POSIX.pm line 26
Compilation failed in require at /usr/abills/libexec/config.pl line 155.
BEGIN failed--compilation aborted at /usr/abills/libexec/config.pl line 155.
Compilation failed in require at /usr/abills/libexec/rlm_perl.pl line 35.
FreeBSD 7.2, freeradius 2.1.6, perl 5.8.8, все без потоков.
Это легко повторить: просто поставьте в виртуалку свежую фрю, за ней радиус и перл из портов со стандартными опциями, и попытайтесь запустить радиус.

~AsmodeuS~
Site Admin
Сообщения: 5746
Зарегистрирован: Пт янв 28, 2005 3:11 pm
Контактная информация:

Re: Не работает rlm_perl!

Сообщение ~AsmodeuS~ »

chtito писал(а): Не, ошибка такая:
Can't load '/usr/local/lib/perl5/5.8.8/mach/auto/POSIX/POSIX.so' for module POSIX: /usr/local/lib/perl5/5.8.8/mach/auto/POSIX/POSIX.so: Undefined symbol "PL_sig_name" at /usr/local/lib/perl5/5.8.8/mach/XSLoader.pm line 70.
at /usr/local/lib/perl5/5.8.8/mach/POSIX.pm line 26
Compilation failed in require at /usr/abills/libexec/config.pl line 155.
BEGIN failed--compilation aborted at /usr/abills/libexec/config.pl line 155.
Compilation failed in require at /usr/abills/libexec/rlm_perl.pl line 35.
FreeBSD 7.2, freeradius 2.1.6, perl 5.8.8, все без потоков.
Это легко повторить: просто поставьте в виртуалку свежую фрю, за ней радиус и перл из портов со стандартными опциями, и попытайтесь запустить радиус.

LD_PRELOAD=/usr/local/lib/perl5/5.8.8/mach/CORE/libperl.so radiusd

это связано с изменением политик безопасности ОС более подробно на сайте FreeBSD

chtito
Сообщения: 313
Зарегистрирован: Чт дек 13, 2007 11:03 am

Re: Не работает rlm_perl!

Сообщение chtito »

~AsmodeuS~ писал(а):
chtito писал(а): FreeBSD 7.2, freeradius 2.1.6, perl 5.8.8, все без потоков.

LD_PRELOAD=/usr/local/lib/perl5/5.8.8/mach/CORE/libperl.so radiusd

это связано с изменением политик безопасности ОС более подробно на сайте FreeBSD
Так в том то и дело, что с freeradius 2.1.3 все работает без фокусов с LD_PRELOAD.

Ответить