IPoE_heserial.tmplt

Skip to end of metadata
Go to start of metadata
configure terminal

!!! включаем, что subscriber ы должны авторизовываться
subscriber authorization enable

!!! включаем, что можно по радиус реплай передать несколько сервисов в ответ на логи пароль.
subscriber service multiple-accept

!!! выключаем отдельный аккаунтинг подключеных сервисов
!!! нам достаточно только аккаунтинга пользователя
no subscriber service session-accounting

!!! включаем нетфлоу отправку
ip flow-export version 5
ip flow-cache timeout active 20
ip flow-cache timeout inactive 30

flow record CRB_IPv4_REC
 match ipv4 source address
 match ipv4 destination address
 match ipv4 protocol
 match interface input
 match transport source-port
 match transport destination-port
 match ipv4 tos
 collect counter packets
 collect counter bytes
!
!
flow exporter CRB_EXPORTER
 destination {{billing_ip}}
 ttl 7
 transport udp 9996
 template data timeout 60
!
!
flow monitor CRB_IPv4_MONITOR
 exporter CRB_EXPORTER
 cache timeout inactive 20
 cache timeout active 180
 record CRB_IPv4_REC
!

!!! создаем радиус группу для авторизации по ip subscriber
no aaa group server radius CRB_AAAGS_IPOE
aaa group server radius CRB_AAAGS_IPOE
 server-private {{billing_ip}} auth-port 1812 acct-port 1813 timeout 3 retransmit 2 key {{radius_secret}}
 ip radius source-interface {{to_billing_int}}
 deadtime 1

!!! тут идет магия, но при других наборах параметров работать не будет
aaa authentication login AAA_LIST_IPOE group CRB_AAAGS_IPOE
aaa authentication ppp AAA_LIST_IPOE group CRB_AAAGS_IPOE
aaa authorization network AAA_LIST_IPOE group CRB_AAAGS_IPOE
!!! эта строчка выглядит не логично, но она Верная
aaa authorization subscriber-service AAA_LIST_IPOE local group CRB_AAAGS_IPOE
!!! и эта строка нужна
aaa authorization subscriber-service default local

!!! включаем accounting для листа AAA_LIST_IPOE
aaa accounting network AAA_LIST_IPOE
 action-type start-stop
  group CRB_AAAGS_IPOE
!
!!! ждать назначения ip адреса
aaa accounting delay-start all

!!! делаем рандом сдвиги, чтоб при ресете не было пиковых одновременных аккаунтингов
aaa accounting jitter maximum 10

!!! период accounting в минутах
aaa accounting update periodic 20

!!! влкючаем обратный радиус для приема coa
no aaa server radius dynamic-author
aaa server radius dynamic-author
 client {{billing_ip}} server-key {{coa_psw}}
 port {{coa_port}}
 auth-type any

!!! общий сессион ID для пользователя и его сервисов
aaa session-id common

!!! разрешаем управлять по радиусу интерфейсами, в теории нужно только для ppp доступа и здесь не нужно
aaa policy interface-config allow-subinterface



!!! Настройки DHCP relay
ip dhcp relay information option
ip dhcp relay information policy keep
no ip dhcp relay information check
ip dhcp relay information trust-all





!!! создаем полиси контрол для перехвата первого пакета и авторизации абонетов
no policy-map type control CTRL_IPOE
class-map type control match-all CTRL_TIMER_UNAUTH
!!! если пользователь авторизован ранее с ошибкой, то ничего не делаем(return), пока не кончится таймер TIMER_UNAUTH
 match authen-status unauthenticated
 match timer TIMER_UNAUTH

!!! если пользователь авторизован и не закончился таймер TIMER_AUTH, то return
class-map type control match-all CTRL_TIMER_AUTH
 match authen-status authenticated
 match timer TIMER_AUTH



policy-map type control CTRL_IPOE
 class type control always event session-start
  10 authorize aaa list AAA_LIST_IPOE password password identifier circuit-id
 !
 class type control always event timed-policy-expiry
  1 service disconnect
 !
 class type control always event account-logoff
  1 service disconnect
 !
 class type control always event access-reject
  1 service disconnect
 !



!!! если стопнули радиус сессию, то отключаем сервисы
 class type control always event account-logoff
  1 service disconnect

!!! если радиус не отвечает, даем инет со скоростью 512кбит на 10 минут
 class type control always event radius-timeout
  10 set-timer TIMER_UNAUTH 10
  20 service-policy type service name FWPOL_DEFAULT

!!! если это первый пакет, то пробуем авторизоваться
 class type control always event session-start
  10 set-timer TIMER_AUTH 10080
!!! если авторизовались, то будет неявный return
  20 authorize aaa list AAA_LIST_IPOE password servicemode identifier source-ip-address
!!! если reject, то вешаем таймер на 5 минут и перенаправляем на страницу редиректа админом
  30 set-timer TIMER_UNAUTH 5
  40 service-policy type service name FWPOL_BLOCKED_TRUSTED
  50 service-policy type service name FWPOL_BLOCKED_REDIRECT

!!! на все интерфейсы из списка abon_ints вешаем обязательную авторизацию по первому пакету через контрол CTRL_IPOE по ip-address
@@@ for abon_int in abon_ints
 interface {{abon_int}}
 ip flow monitor CRB_IPv4_MONITOR input
 ip flow monitor CRB_IPv4_MONITOR output
 ip nat inside
 ip helper-address {{billing_ip}}
 no ip unreachables
 no ip proxy-arp
 ip verify unicast source reachable-via rx allow-self-ping
 service-policy type control CTRL_IPOE
 ip subscriber l2-connected
  initiator dhcp
@@@ endfor

end
exit
Введите метки, чтобы добавить к этой странице:
Please wait 
Ищите метку? просто начните печатать.