Jump to content
Калькуляторы

Вопрос по работе VPN и Radius серверов

Приветствую всех уважаемые господа!

Задача у меня такая: работает несколько ВПН серверов (ВПН-1 и ВПН-2), авторизация пользователей осуществляется через радиус (FreeRadis), IP адреса выдает тоже радиус, выбор подключения пользователей к ВПН серверам идет через механизм Raund Robin. На радиус сервере прописано 2 пула адресов (ippool). Сейчас в конфигурационном файле радиуса (где прописаны пользователи) у меня прописано что, например, пользователь test-1 получает ИП адрес из пула А , а пользователь test-2 получает ИП адрес из пула B.

test-1  Cleartext-Password := "t-z", Simultaneous-Use := 1, Pool-Name := "A"
test-2  Cleartext-Password := "t-z", Simultaneous-Use := 1, Pool-Name := "B"

 

Что надо сделать (куда копать), чтобы при подключении к ВПН-1 пользователям выдавался ИП из пула А , при подключении к ВПН-2 пользователям выдавался ИП из пула В ?

Share this post


Link to post
Share on other sites

Копать в сторону проверки атрибута NAS_IDENTIFIER на радиусе.

 

Share this post


Link to post
Share on other sites

В качестве эксперимента проделал следующее

В файле huntgroups прописал

private         NAS-IP-Address == 192.16.0.101

 

В файле users дописал

DEFAULT Auth-Type := Local, Huntgroup-Name == private, Pool-Name := "private_ip_pool"
        Service-Type = Framed-User,
        Framed-Protocol = PPP,
        Framed-Routing = Broadcast-Listen,
        Framed-Filter-Id = "std.ppp",
        Framed-MTU = 1460,
        Framed-Compression = Van-Jacobsen-TCP-IP,
        Fall-Through = Yes

 

Завел пользователя

s  Cleartext-Password := "t-z"

 

Когда пользователь подключается, авторизация проходит, но сервер не выдает ИП адрес.

private_ip_pool - существующий рабочий пул адресов.

Edited by dm765

Share this post


Link to post
Share on other sites

если Вы хотите привязвть пул к насу то самый простой способ сделать это - определить пул на самом насе и позволить ему самому назначать IP клиенту. Радиус тут не нужен...

 

Share this post


Link to post
Share on other sites

Работает сейчас 8 NAS, 1 Radius и 2 больших пула ИП адресов. Надо временно 4 NAS привязать к 1-му пулу, другие 4 NAS к 2-му пулу. Поэтому все желательно сделать силами Radius.

Поднят и работает OSPF.

Edited by dm765

Share this post


Link to post
Share on other sites

У меня в зависимости от NAS-а происходит авторизация абонентов, в запросе на авторизацию использую поле Client-IP-Address, выделяю, какие атрибуты насу выдавать.

Вам тоже это можно сделать, но в случае пула. Смысл будет один и тот-же.

Share this post


Link to post
Share on other sites
Вам тоже это можно сделать, но в случае пула.
На своем примере можете показать?

Почему в моем случае (с huntingroups) не выдается IP адрес?

Edited by dm765

Share this post


Link to post
Share on other sites

Делал еще так, в файле huntgroups дописал имя пула

private         NAS-IP-Address == 192.16.0.101, Pool-Name := "private_ip_pool"

IP адрес тоже не выдается клиенту.

Edited by dm765

Share this post


Link to post
Share on other sites

Вот лог радиуса, где то проблема с атрибутом

+- entering group post-auth {...}
[private_ip_pool] Could not find Pool-Name attribute.
++[private_ip_pool] returns noop

 

Share this post


Link to post
Share on other sites

Так еще делал, не помогло - не находит Pool-Name attribute

DEFAULT Auth-Type := CHAP, NAS-IP-Address ==192.16.0.101, Pool-Name := "private_ip_pool"
        Service-Type = Framed-User,
        Framed-Protocol = PPP,
        Framed-Routing = Broadcast-Listen,            
        Framed-Filter-Id = "std.ppp",                 
        Framed-MTU = 1460,                            
        Framed-Compression = Van-Jacobsen-TCP-IP,     
        Fall-Through = Yes

$INCLUDE users.test

Edited by dm765

Share this post


Link to post
Share on other sites

To assign a user an IP from a pool you simply need to have a Pool-Name Attribute (Keep in mind that it is a CHECK item, not reply) in the required configuration file, which is either in files(users), sql or any other type of configuration schema.

 

http://wiki.freeradius.org/Pool-Name

 

Походу клиентов нужно запихивать в группу, после чего на группу вешать пул. Попробуйте так сделать.

Share this post


Link to post
Share on other sites

Мне надо пул привязать к серверу доступа.

Сейчас пул привязан к пользователю, все работает.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this