Table of Contents |
---|
Версии прошивок
JUNOS 17.3R3-S3.3
JUNOS 18.4R3-S2
Лицензии
S-MX80-SA-FP
S-MX80-SSM-FP
S-SA-16K
Правка RADIUS словарей
Freebsd путь /usr/local/share/freeradius/
В словарях нужно изменить атрибуты на следующие:
dictionary.erx
Code Block | ||
---|---|---|
| ||
ATTRIBUTE ERX-Dhcp-Options 55 octets |
dictionary.rfc4679
Code Block | ||
---|---|---|
| ||
ATTRIBUTE ADSL-Agent-Circuit-Id 1 octets
ATTRIBUTE ADSL-Agent-Remote-Id 2 octets |
ABillS
Code Block | ||
---|---|---|
| ||
cp Mx802.pm /usr/abills/Abills/mysql |
Файл настройки config.pl
Включение модуля авторизации. Данные параметры должны быть прописаны после секций %AUTH = (); %ACCT = ();
Code Block | ||
---|---|---|
| ||
$AUTH{mx80} = 'Mx802';
$ACCT{mx80} = 'Mx802'; |
Параметры
$conf{MX80_IPOE_SWITCH_PORT}=1; | Авторизация по коммутатору и порту. Данные для авторизации берутся из IP (DHCP) сервиса |
---|---|
$conf{MX80_MAC_AUTH}=1; | Авторизация по MAC'у. При включении этой опции все другие типы атворизации не работают |
Настройка сервера доступа меню Настройка>Сервер доступа
IP: | IP адрес маршрутизатора |
---|---|
Название: | Название |
Тип: | Указать тип: mx80 |
Alive | Время Alive пакетов для PPPoE и время DHCP lease для IPoE (рекомедуемое значение 600 и больше) |
:Управление:
IP:PORT: | Адрес и порт для отправки RADIUS CoA команд. (По умолчанию 3799) xxx.xxx.xxx.xxx:3799 |
---|---|
Пароль: | Пароль для отправки RADIUS и CoA пакетов |
Дополнительные Радиус параметры для IPoE авторизации
Code Block | ||
---|---|---|
| ||
Framed-Route=0.0.0.0 0.0.0.0 31.135.96.1,
MS-Primary-DNS-Server=10.0.0.1,
MS-Secondary-DNS-Server=8.8.8.8, |
Гостевой профайл
Гостевой профайл разрешает перенаправлять не авторизированных пользователей на страничку уведомления о состоянии счёта и причине отказа авторизации
config.pl
$conf{MX80_GUEST_POOLS_PARAMS}='POOL_ID:EXT_PARAMS'; | Объявление гостевого пула адресов. Данный пул выдаётся не авторизированным абонентам которые не зарегистрированы в системе. Параметры: POOL_ID - Номер пула адресов в системе ABillS (заводится Настройка>Сервер доступа>IP Pools) EXT_PARAMS - Дополнительные радиус параметры для данного пула. Система предоставляет возможность заводить на каждый Vlan свой гостевой пул. Правила пулов разделяются точкой с запятой (;). Пример: $conf{MX80_GUEST_POOLS_PARAMS}='3:ERX-Primary-Dns = 192.168.1.1,Framed-IP-Netmask=255.255.224.0;'; |
---|---|
$conf{MX80_DEFAULT_GUEST_PROFILE}='NOAUTH'; | Гостевой профайл по умолчанию. Если не указан явно будет использоваться NOAUTH |
$conf{MX80_O82_EXPR}='Название опции:регулярное выражение:переменные;…'; | Определение параметров опции 82 |
$conf{MX80_PROFILE_PREFIX}='svc'; | Префикс профайла соединения по умолчанию 'svc' |
$conf{MX80_PROFILES}='WRONG_PASS:profile_wrong_pass;'; | Определение разных профайлов для разных ошибок авторизации Параметры: WRONG_PASS - Неправильный правильный пароль для туннельных соединений (PPPoE) NEG_DEPOSIT - Отрицательный баланс на счету AUTH_ERROR - Другая ошибка авторизации NOT_REGISTER - Учётная запись с такими параметрами не зарегистрирована NOT_ALLOW_SERVICE - Использование услугу запрещено DISABLE - Пользователь отключен Пример $conf{MX80_PROFILES}='WRONG_PASS:profile_wrong_pass; NEG_DEPOSIT:profile_neg_deposit; AUTH_ERROR:profile_other_error; NOT_REGISTER:profile_not_register; NOT_ALLOW_SERVICE:profile_not_allow_service; DISABLE:profile_disable'; |
$conf{MX80_NAT_PROFILE}=1; | Включение NAT профайла ( svc-cgn-nat-pppoe / svc-cgn-nat-ipoe ) для серых адресов. система автоматически проверяет адрес и елси он попадает в приватные сети включает NAT Приватные сети: 10.0.0.0/8 |
Пример config.pl Возможность использовать разные профайлы для разных ошибок подключения
Code Block | ||
---|---|---|
| ||
#MX80-PPPoE
$conf{MX80_PROFILES}='
WRONG_PASS:svc-guest-pppoe(svc-filter-in-wrongpassword);
NEG_DEPOSIT:svc-guest-pppoe(svc-filter-in-nomoney);
AUTH_ERROR:svc-guest-pppoe(svc-filter-in-unknownerror);
USER_NOT_EXIST:svc-guest-pppoe(svc-filter-in-notregister);
NOT_ALLOW_SERVICE:svc-guest-pppoe(svc-filter-in-notallowservice);
DISABLE:svc-guest-pppoe(svc-filter-in-disable);
WRONG_PORT:svc-guest-pppoe(svc-filter-in-wrongport);
WRONG_CID:svc-guest-pppoe(svc-filter-in-wrongcid);
'; |
Пример настройки MX80
Code Block | ||
---|---|---|
| ||
dynamic-profiles svc-guest-pppoe
interfaces {
pp0 {
unit "$junos-interface-unit" {
family inet {
filter {
input guest-filter-in;
}
}
}
}
} |
Выражения для определения параметров Option 82
$conf{MX80_O82_EXPR}='Название опции:регулярное выражение:переменные;…';
Пример:
для коммутаторов Foxgate
Code Block | ||
---|---|---|
| ||
Agent-Remote-Id = 0x70726f626e696b2e6c6f63616c
ADSL-Agent-Circuit-Id = "Vlan202+Ethernet1/5" |
config.pl
Code Block | ||
---|---|---|
| ||
$conf{MX80_O82_EXPR}='ADSL-Agent-Circuit-Id:Vlan(\d+)\+Ethernet\d\/(\d+):VLAN,PORT;ADSL-Agent-Remote-Id:0x([a-f0-9]{12}):MAC'; |
Пример:
Edge-core ES-3528(M)
Edge-core ES-3510M
Code Block | ||
---|---|---|
| ||
$conf{MX80_O82_EXPR}='ADSL-Agent-Circuit-Id:[a-f0-9]{10}([a-f0-9]{2}):PORT;ADSL-Agent-Remote-Id:0x0006([a-f0-9]{12}):MAC'; |
Alcatel LS6224
EdgeCore 3528M
Code Block | ||
---|---|---|
| ||
$conf{MX80_O82_EXPR}='ADSL-Agent-Circuit-Id:\d{4}(\d{4})\d{2}(\d{2}):VLAN,PORT;ADSL-Agent-Remote-Id:0x0006([a-f0-9]{12}):MAC'; |
Настройка RADIUS
Работа паралельно 2 радиусов
Code Block |
---|
radius-server {
192.168.1.1 {
secret "$9$Nl-YoasdarevL"; ## SECRET-DATA
timeout 6;
retry 3;
max-outstanding-requests 200;
source-address 192.168.1.61;
}
192.168.6.1 {
secret "$9$Aessdst1heK8x-wO1asdasmfTz6"; ## SECRET-DATA
timeout 6;
retry 3;
max-outstanding-requests 200;
source-address 192.168.6.4;
} |
Пример RADIUS запросов
Пример авторизации IPoE с использование Option 82
Code Block | ||
---|---|---|
| ||
User-Name = "000e.0cc1.6c8a"
User-Password = "sub321"
Service-Type = Framed-User
Chargeable-User-Identity = ""
Acct-Session-Id = "129"
ERX-Dhcp-Options = 0x3501013d0701000e0cc16c8a0c0563616374693707011c02030f0
60c52120106000400150105020800067072cf36b340
ERX-Dhcp-Mac-Addr = "000e.0cc1.6c8a"
NAS-Identifier = "gw-subsriber"
NAS-Port = 4190229
NAS-Port-Id = "ae0.1073741824:21"
NAS-Port-Type = Ethernet
ADSL-Agent-Circuit-Id = 0x000400150105
ADSL-Agent-Remote-Id = 0x00067072cf36b340 |
Ответ авторизации для рабочих сессий
Code Block | ||
---|---|---|
| ||
Acct-Interim-Interval = 90
NAS-Identifier = "gw-subsriber"
ERX-Dhcp-Options = "0x0304c0a80001"
ERX-Service-Activate:2 = "svc-local_1-ipoe(3072000,2048000)"
Service-Type = Framed-User
Framed-IP-Address = 192.168.47.232
Framed-IP-Netmask = 255.255.0.0
ERX-Service-Activate:3 = "svc-global-ipoe(524288,1048576)" |
Пример ответа авторизации при гостевой сессии
Code Block | ||
---|---|---|
| ||
Reply-Message = "NEG_DEPOSIT '-5'"
Session-Timeout = 90
Service-Type = Framed-User
ERX-Service-Activate:1 = "svc-guest-ipoe(svc-filter-in-nomoney)"
ERX-Dhcp-Options = "0x03041f876001"
ERX-Primary-Dns = 10.10.0.1
Framed-IP-Address = 192.168.11.236
Framed-IP-Netmask = 255.255.0.0 |
Название профайла
Code Block | ||
---|---|---|
| ||
ERX-Service-Activate:[3-{traffic_class_id}] = svc-{traffic_class_name}-{profile_sufix} |
{traffic_class_id} | Номер класса трафика 3 - Глобальный 2 - Локальный 3 - Внутренний Для гостевых сервисов используется номер 1 |
---|---|
{traffic_class_name} | Название класса трафика |
{profile_sufix} | pppoe ipoe Если присутствует RADIUS пара Framed-Protocol система подставляет pppoe в противном случае ipoe |
Автотестирование PPPoE
Code Block | ||
---|---|---|
| ||
user> test aaa ppp user test password 123456
Authentication Grant
************User Attributes***********
User Name - test
Virtual Router Name (LS:RI) - default:default
Service Type - Framed
Agent Remote Id - <not set>
Client IP Address - 10.20.0.2
Client IP Netmask - 255.255.255.255 |