Помогите настроить FreeRADIUS Version 2.0.0 + MSCHAP V2

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

Сообщение ran »

ran писал(а): тыкай дальше :D а мож проще посмотреть егоенный типа ченжлог? или там такое не водится?
так вот... хоть оно мне и ненада...
Before version 2.0 of FreeRADIUS, the script could be run from the deprecated attributes 'Exec-Program' and 'Exec-Program-Wait'. However, these attributes are no longer supported and you have to use the module 'rlm_exec' instead.
из ентого следоваит:

в radiusd.conf в секции modules нада бы

Код: Выделить всё

exec auth {                                                   
	program = "/usr/abills/libexec/rauth.pl"        
	wait = yes                                            
	input_pairs = request                                 
	shell_escape = yes                                    
	output = no                                           
	output_pairs = reply                                  
}                                                             
exec acc {                                                    
	program = "/usr/abills/libexec/racct.pl"        
	wait = yes                                            
	input_pairs = request                                 
	shell_escape = yes                                    
	output = no                                           
	output_pairs = reply                                  
}
в секции exec

Код: Выделить всё

exec {                                                        
	wait = yes                                            
	input_pairs = request                                 
	shell_escape = yes                                    
	output = none                                         
	output_pairs = reply                                  
}
в нужной конфигурации из sites-enabled

Код: Выделить всё

preacct {                                               
	preprocess                                      
	acc                          
}
authorize {                                                     
	preprocess                                                        
	files                   
	auth
}
в users

Код: Выделить всё

DEFAULT Auth-Type = Accept 
и будет вам щастье... может быть... потому как сам непробовал по причине... ммм... а просто влом :wink:

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Вконец запутался. Не понятно что надо, а что не надо.
Как я понял Вы взяли настройку радиуса отсюда
Прочитав все это и попробовав в разных комбинациях, возникло много вопросов.
1. Надо ли настраивать rlm_perl? Со старым радиусом я этого не делал и все работало. Может это относится к ветке 0.4.0? На сайте не сказано для чего это делается.
2. В секции modules - надо ли оставлять старые секции pre_auth и post_auth и все что с ними связано в других местах?
3. Надо ли изменять файл acct_users?
Вообще, если у кого получилось настроить Radius2+MSCHAP, огромная просьба выложить сюда все по порядку. И будет ему за это огромное человеческое спасибо.

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

Сообщение ran »

Надо ли настраивать rlm_perl?
не обязательно хотя грят что гораздо эффективнее... у меня лично не работает по причине того что мне нужен пёрдл с потоками а рлм_перл при этом непашет
2. В секции modules - надо ли оставлять старые секции pre_auth и post_auth и все что с ними связано в других местах?
а попробовать?
3. Надо ли изменять файл acct_users?
а нафига он нужеy если you have to use the module 'rlm_exec' instead

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

ran писал(а): у меня лично не работает по причине того что мне нужен пёрл с потоками а рлм_перл при этом непашет
А где взять такой перл?
ran писал(а):а попробовать?
Попробовал по всякому. Вывод - надо оставлять и то и другое.
Работает теперь только PAP и CHAP авторизация. А MSCHAP-V2 не работает.
Вот что выдал radiusd -X

Код: Выделить всё

rad_recv: Access-Request packet from host 127.0.0.1 port 49303, id=8, length=147
        Service-Type = Framed-User
        Framed-Protocol = PPP
        User-Name = "mnk"
        MS-CHAP-Challenge = 0x8d9c1e24028aa71d8e34ffa857dd76b8
        MS-CHAP2-Response = 0xd8008b66d398084bbf2d988019c2038190fe0000000000000000f77e700121185cbac90403658a070f50bc6663616736c6b6
        Calling-Station-Id = "172.16.130.147"
        NAS-IP-Address = 127.0.0.1
        NAS-Port = 1
+- entering group authorize {...}
Exec-Program output: User-Password == "qwerty"
Exec-Program-Wait: value-pairs: User-Password == "qwerty"
Exec-Program: returned: 0
++[pre_auth] returns ok
++[preprocess] returns ok
++[chap] returns noop
[mschap] Found MS-CHAP attributes.  Setting 'Auth-Type  = mschap'
++[mschap] returns ok
[suffix] No '@' in User-Name = "mnk", looking up realm NULL
[suffix] No such realm "NULL"
++[suffix] returns noop
[eap] No EAP-Message, not doing EAP
++[eap] returns noop
++[unix] returns notfound
[files] users: Matched entry DEFAULT at line 1
++[files] returns ok
Exec-Program output: Session-Timeout = 1749175, MS-MPPE-Send-Key = 0x95d86e10750c0086771ffc5784632e0f, MS-MPPE-Encryption-Types = 0x00000006, Session-Octets-Limit = 2146435072, MS-CHAP2-SUCCESS = 0xd8533d42313939314438383330374532333933364544383232444235423231434136443042323842333733, MS-MPPE-Encryption-Policy = 0x00000001, Acct-Interim-Interval = 60, Octets-Direction = 0, MS-MPPE-Recv-Key = 0xed16f0847367535b953250fd48cc292d, Framed-IP-Address = 192.168.1.137, Framed-IP-Netmask = 255.255.255.255,
Exec-Program-Wait: value-pairs: Session-Timeout = 1749175, MS-MPPE-Send-Key = 0x95d86e10750c0086771ffc5784632e0f, MS-MPPE-Encryption-Types = 0x00000006, Session-Octets-Limit = 2146435072, MS-CHAP2-SUCCESS = 0xd8533d42313939314438383330374532333933364544383232444235423231434136443042323842333733, MS-MPPE-Encryption-Policy = 0x00000001, Acct-Interim-Interval = 60, Octets-Direction = 0, MS-MPPE-Recv-Key = 0xed16f0847367535b953250fd48cc292d, Framed-IP-Address = 192.168.1.137, Framed-IP-Netmask = 255.255.255.255,
Exec-Program: returned: 0
++[auth] returns ok
++[expiration] returns noop
++[logintime] returns noop
[pap] WARNING! No "known good" password found for the user.  Authentication may fail because of this.
++[pap] returns noop
Found Auth-Type = MSCHAP
+- entering group MS-CHAP {...}
[mschap] No Cleartext-Password configured.  Cannot create LM-Password.
[mschap] No Cleartext-Password configured.  Cannot create NT-Password.
[mschap] Told to do MS-CHAPv2 for mnk with NT-Password
[mschap] FAILED: No NT/LM-Password.  Cannot perform authentication.
[mschap] FAILED: MS-CHAP2-Response is incorrect
++[mschap] returns reject
Failed to authenticate the user.
Using Post-Auth-Type Reject
+- entering group REJECT {...}
Exec-Program output:
Exec-Program: returned: 0
++[post_auth] returns ok
Sending Access-Reject of id 8 to 127.0.0.1 port 49303
        Session-Timeout = 1749175
        MS-MPPE-Send-Key = 0x95d86e10750c0086771ffc5784632e0f
        MS-MPPE-Encryption-Types = 0x00000006
        Session-Octets-Limit = 2146435072
        MS-CHAP2-Success = 0xd8533d42313939314438383330374532333933364544383232444235423231434136443042323842333733
        MS-MPPE-Encryption-Policy = 0x00000001
        Acct-Interim-Interval = 60
        Octets-Direction = Route-IP-No
        MS-MPPE-Recv-Key = 0xed16f0847367535b953250fd48cc292d
        Framed-IP-Address = 192.168.1.137
        Framed-IP-Netmask = 255.255.255.255
        MS-CHAP-Error = "\330E=691 R=1"
Finished request 12.
Going to the next request
Waking up in 4.8 seconds.
Cleaning up request 12 ID 8 with timestamp +547
Ready to process requests.

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

С новым радиусом всеравно придется рано или поздно разбираться - старый то уже не поддерживается.
Что то ничего не получается с MSCHAP-V2. Придется, наверно, подождать, когда кто нибудь не выложит, как правильно настроить.

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

Сообщение ran »

А где взять такой перл?
какой? с потоками? у меня в дистре такой... можно и самому собрать... ток тада и модули егоенные (мож и не все) - тоже :) судя по вотетому:
+- entering group MS-CHAP {...}
[mschap] No Cleartext-Password configured. Cannot create LM-Password.
[mschap] No Cleartext-Password configured. Cannot create NT-Password.
[mschap] Told to do MS-CHAPv2 for mnk with NT-Password
[mschap] FAILED: No NT/LM-Password. Cannot perform authentication.
[mschap] FAILED: MS-CHAP2-Response is incorrect
++[mschap] returns reject
настройками модуля мсчап радиуса добиваться получения гдета ватетого:

Код: Выделить всё

modcall: entering group MS-CHAP for request 10
  rlm_mschap: Told to do MS-CHAPv2 for barabash with NT-Password
rlm_mschap: adding MS-CHAPv2 MPPE keys
  modcall[authenticate]: module "mschap" returns ok for request 10

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Все таки похоже, что это что-то другое.
Вот кусок лога при chap авторизации.

Код: Выделить всё

rad_recv: Access-Request packet from host 127.0.0.1 port 51939, id=50, length=106
        Service-Type = Framed-User
        Framed-Protocol = PPP
        User-Name = "mnk"
        CHAP-Challenge = 0x49bffcf0afdc602245ff3756709991325df17a36
        CHAP-Password = 0x1efe24a16e4870c14d772a0116b0a3edf3
        Calling-Station-Id = "172.16.130.147"
        NAS-IP-Address = 127.0.0.1
        NAS-Port = 1
+- entering group authorize {...}
Exec-Program output: Auth-Type := Accept
Exec-Program-Wait: value-pairs: Auth-Type := Accept
Exec-Program: returned: 0
++[pre_auth] returns ok
++[preprocess] returns ok
[chap] WARNING: Auth-Type already set.  Not setting to CHAP
++[chap] returns noop
++[mschap] returns noop
[files] users: Matched entry DEFAULT at line 1
++[files] returns ok
Те радиус уже не обращает внимание, что авторизация chap, раз прошло Auth-Type.

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

Сообщение ran »

Те радиус уже не обращает внимание, что авторизация chap, раз прошло Auth-Type.
угу... тока чап и мсчап - разные модули радиуса

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Заработала авторизация MSCHAP-V2. Осталось только mppe прикрутить. Строчка в секции authorize - files должна быть первой среди других способов авторизации.
Но, хотя внешне все работает нормально, то это все равно неправильно. Сравнивал логи radiusd -X на старом сервере, где все работает и на новом с радиусом V2.1.
На новом - как только проходит авторизация files, все остальное динамится, и поэтому радиус не возвращает pptp демону параметры для mppe соединения, отчего он и падает, хотя радиус говорит, что соединение установлено нормально. Вот кусок лога нового сервера при установленном mppe

Код: Выделить всё

Exec-Program: returned: 0
++[auth] returns ok
[files] users: Matched entry DEFAULT at line 1
++[files] returns ok
[mschap] Found existing Auth-Type.  Not changing it.
++[mschap] returns noop
++[preprocess] returns ok
++[preprocess] returns ok
++[chap] returns noop
[eap] No EAP-Message, not doing EAP
++[eap] returns noop
++[expiration] returns noop
++[logintime] returns noop
[pap] Found existing Auth-Type, not changing it.
++[pap] returns noop
Found Auth-Type = Accept
Auth-Type = Accept, accepting the user
+- entering group post-auth {...}
++[exec] returns noop
Sending Access-Accept of id 210 to 127.0.0.1 port 42157
        Session-Timeout = 1235496
        MS-MPPE-Encryption-Types = 0x00000006
        Session-Octets-Limit = 2146435072
        MS-CHAP2-Success = 0xab533d35454645333036423441303744313044393630463433424343354134453244443532384137423235
        MS-MPPE-Encryption-Policy = 0x00000001
        Acct-Interim-Interval = 60
        Octets-Direction = Route-IP-No
        Framed-IP-Address = 172.16.131.39
        Framed-IP-Netmask = 255.255.255.255
Finished request 0.
Going to the next request 
Вот кусок лога pptpd

Код: Выделить всё

RADATTR plugin wrote 9 line(s) to file /var/run/radattr.ppp1.
sent [CHAP Success id=0x3d "S=4CADD63907ECF200B7F7311C2A1B1285E7FDA35F"]
MPPE required, but keys are not available.  Possible plugin problem?
sent [LCP TermReq id=0x2 "MPPE required but not available"]
rcvd [CCP ConfReq id=0x5 <mppe +H -M -S -L -D +C>]
Discarded non-LCP packet when LCP not open
rcvd [IPCP ConfReq id=0x6 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-wins 0.0.0.0> <ms-dns3 0.0.0.0> <ms-wins 0.0.0.0>]
Discarded non-LCP packet when LCP not open
rcvd [LCP TermAck id=0x2 "MPPE required but not available"]
Connection terminated.
Connect time 0.1 minutes.
Sent 0 bytes, received 0 bytes.
RADATTR plugin removed file /var/run/radattr.ppp1.
А вот кусок лога работающего radius v1.7 с mschap-v2 и mppe

Код: Выделить всё

modcall[authorize]: module "pre_auth" returns ok for request 21
  modcall[authorize]: module "preprocess" returns ok for request 21
  modcall[authorize]: module "chap" returns noop for request 21
  rlm_mschap: Found MS-CHAP attributes.  Setting 'Auth-Type  = mschap'
  modcall[authorize]: module "mschap" returns ok for request 21
    rlm_realm: No '@' in User-Name = "misha", looking up realm NULL
    rlm_realm: No such realm "NULL"
  modcall[authorize]: module "suffix" returns noop for request 21
  rlm_eap: No EAP-Message, not doing EAP
  modcall[authorize]: module "eap" returns noop for request 21
    users: Matched entry DEFAULT at line 1
  modcall[authorize]: module "files" returns ok for request 21
rlm_pap: Found existing Auth-Type, not changing it.
  modcall[authorize]: module "pap" returns noop for request 21
modcall: leaving group authorize (returns ok) for request 21
  rad_check_password:  Found Auth-Type MS-CHAP
auth: type "MS-CHAP"
  Processing the authenticate section of radiusd.conf
modcall: entering group MS-CHAP for request 21
  rlm_mschap: Told to do MS-CHAPv2 for misha with NT-Password
rlm_mschap: adding MS-CHAPv2 MPPE keys
  modcall[authenticate]: module "mschap" returns ok for request 21
modcall: leaving group MS-CHAP (returns ok) for request 21
Exec-Program output: Session-Timeout = 1237588, MS-MPPE-Encryption-Types = 0x00000006, Session-Octets-Limit = 2146435072, MS-CHAP2-SUCCESS = 0x76533d35304631343942323333303246324242374539463645413643373542333238314633393037424135, MS-MPPE-Encryption-Policy = 0x00000001, Acct-Interim-Interval = 60, Octets-Direction = 0, Framed-IP-Address = 172.16.131.10, Framed-IP-Netmask = 255.255.255.255,
Exec-Program-Wait: value-pairs: Session-Timeout = 1237588, MS-MPPE-Encryption-Types = 0x00000006, Session-Octets-Limit = 2146435072, MS-CHAP2-SUCCESS = 0x76533d35304631343942323333303246324242374539463645413643373542333238314633393037424135, MS-MPPE-Encryption-Policy = 0x00000001, Acct-Interim-Interval = 60, Octets-Direction = 0, Framed-IP-Address = 172.16.131.10, Framed-IP-Netmask = 255.255.255.255,
Exec-Program: returned: 0
Sending Access-Accept of id 253 to 127.0.0.1 port 49595
        MS-CHAP2-Success = 0x76533d35304631343942323333303246324242374539463645413643373542333238314633393037424135
        MS-MPPE-Recv-Key = 0x4fd92b60467642213b9f57838fa2df65
        MS-MPPE-Send-Key = 0x1f033b44eddda0bc9f4421324322fee9
        MS-MPPE-Encryption-Policy = 0x00000002
        MS-MPPE-Encryption-Types = 0x00000004
        Session-Timeout = 1237588
        Session-Octets-Limit = 2146435072
        Acct-Interim-Interval = 60
        Octets-Direction = Route-IP-No
        Framed-IP-Address = 172.16.131.10
        Framed-IP-Netmask = 255.255.255.255
Finished request 21
Те радиус должен определить, что это mschap-v2 c mppe и выдать pptpd дополнительные атрибуты

Код: Выделить всё

       MS-MPPE-Recv-Key = 0x4fd92b60467642213b9f57838fa2df65
        MS-MPPE-Send-Key = 0x1f033b44eddda0bc9f4421324322fee9
Чего в новом радиусе не происходит.

Куда дальше копать - даже и не знаю. А mppe - мне очень нужен.

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

Сообщение ran »

А mppe - мне очень нужен
можно полюбобытствовать - а нафига? авторизация с мсчапв2 - понимаю.... а шифрование туннеля мппе... такое дерьмовое и ресурсоёмкое... непонимаю... ладно б ещё через инет шифрованный тунель (и то я б не через мппе делал бы) - а локальный??? O.O

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Как раз через инет оно и работает. У меня по нему через инет обновления программ с сайта забираются. А уж локальные пользователи заодно.
А насчет ресурсоемкости. Серер Athlon 64 2500 + 1G памяти + куча програм.
Одновременно работает где-то до 30 пользователей (это только по билингу). И нагрузка процессора больше 10% не поднимается.
Я бы конечно использовал бы openvpn (а он и используется, в тех сетях, где режут gre пакеты- GPRS, например ), но уж слишком это муторно ключи генерить, пересылать их пользователям.
Но как нибудь надо попробовать в билинге его настроить, пока не пробовал.

Тут дело даже не в том, что использовать mppe или нет. Просто оно должно работать в обоих случаях. А уж пользователь решает, нужно оно ему или нет.

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

Сообщение ran »

У меня по нему через инет обновления программ с сайта забираются
маразм... шифрованные туннели через инет нужны только в одном случае: объединение территориально удалённых сетей в одну виртуальную. Во всех остальных случаях нада юзать шифрование на уровне приложений... оупенссл например... транспортный уровень должен заниматься доставкой пакетов и ни чем больше - 7-уровневую модель OSI не зря придумали

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Вы имеете ввиду https, например?
Вообще - оно и занимается доставкой пакетов только по шифрованному каналу. И почему по нему нельзя файлы передавать?

Ладно мы отошли от темы. Давайте по делу лучше поговорим. Как реализовать это дело с помощью abills и радиус 2.*

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

Сообщение ran »

Вообще - оно и занимается доставкой пакетов только по шифрованному каналу. И почему по нему нельзя файлы передавать?
та можно - кто ж спорит... вопрос в том - нужно ли? Вот в случае объединения территориально удалённых сетей в одну виртуальную (а в случае оупенвпн - даже в одноранговый типа изернет можно) - да. В остальных случаях... врядли... надо ж учитывать, что перенос на транспортный уровень несвойственных ему функций понижает его надёжность и быстродействие (и соответственно всех вышестоящих уровней) в геометрической прогрессии к тому что туда насуёшь

mnk
Сообщения: 192
Зарегистрирован: Ср янв 31, 2007 7:21 am
Откуда: г. Вологда
Контактная информация:

Сообщение mnk »

Хорошо - уговорили. Буду в следующий раз настраивать для этого HTTPS и FTPS.
А пока надо что бы mppe работало.

Ответить