Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

При работе BRAS на ESR, есть возможность разрешить или запретить доступ для требуемых url с использованием внешнего HTTP/HTTPS(WEB) сервера, на котором будут храниться списки разрешенных/запрещенных url.

Принцип конфигурирования:

  • На ESR настраивается функционал BRAS с указанием параметров RADIUS-сервера с настройками абонентов и WEB-сервера содержащего списки разрешенных/запрещенных url.
  • Для абонента BRAS, в настройках RADIUS описываются имены файлов содержащих разрешенные и запрещенные ресурсы.
  • На WEB-сервере размещаются списки разрешенных/запрещенных url с именами соответствующими настройкам в RADIUS.

Принцип работы функционала:

  • При авторизации абонента на BRAS:
    • ESR получает от RADIUS-сервера имена имена списков разрешенных/запрещенных url;
    • Скачивает и применяет соответствующие списки разрешенных/запрещенных url для абонента.
  • В момент, когда абонент BRAS запрашивает в интернете тот или иной ресурс, происходит проверка по примененным для него спискам разрешенных/запрещенных url.

Есть возможность составлять списки разрешенных/запрещенных url в формате regexp.

1) Конфигурация BRAS на ESR.

object-group url defaultserv
  url https://eltex-co.ru/
exit

syslog console debug

username techsupport
  password encrypted $6$dArYxEkFjWgMtgf8$gtlzWm1YLBrFhqmVdzKu6B7CCBV4TPnYeDK6zCGF3.LuN2NNwFSPZCGatezKJolD4VzeqCKNpNdvOf7q3tF/I1
exit
aaa authentication login auth_test radius
radius-server host 192.168.0.1
  key ascii-text encrypted 8CB5107EA7005AFF
  source-address 192.168.0.10
exit
aaa radius-profile bras_radius
  radius-server host 192.168.0.1
exit
aaa radius-profile bras_radius_servers
  radius-server host 192.168.0.1
exit
das-server das
  key ascii-text encrypted 8CB5107EA7005AFF
exit
aaa das-profile bras_das
  das-server das
exit
line telnet
  login authentication auth_test
exit

tech-support login enable
system fan-speed auto

vlan 10
exit

ip access-list extended BYPASS
  rule 1
    action permit
    match protocol udp
    match source-port 68
    match destination-port 67
    enable
  exit
  rule 2
    action permit
    match protocol udp
    match destination-port 53
    enable
  exit
  rule 3
  exit
exit

ip access-list extended INTERNET
  rule 1
    action permit
    enable
  exit
exit

subscriber-control filters-server-url http://192.168.0.1:8000/   # запрос списков url с http/https сервера(web сервера)
subscriber-control
  aaa das-profile bras_das
  aaa sessions-radius-profile bras_radius
  aaa services-radius-profile bras_radius_servers
  nas-ip-address 192.168.0.10
  session ip-authentication
  bypass-traffic-acl BYPASS
  default-service
    class-map BYPASS
    filter-name local defaultserv
    filter-action permit
    default-action redirect https://eltex-co.ru/
    session-timeout 121
  exit
  enable
exit

bridge 10
  description LocalNetwork
  vlan 10
  ip firewall disable
  ip address 172.16.0.1/24
  ip helper-address 192.168.16.1
  service-subscriber-control any
  location USER
  enable
exit

interface gigabitethernet 1/0/1
  description to_FreeRadius
  ip firewall disable
  ip address 192.168.0.10/24
exit
interface gigabitethernet 1/0/3.10
  bridge-group 10
  ip firewall disable
exit
interface gigabitethernet 1/0/4
  description WAN
  ip firewall disable
  ip address <ipaddr>
exit

security passwords history 0
nat source
  ruleset factory
    to interface gigabitethernet 1/0/4
    rule 10
      description "replace 'source ip'by outgoing interface ip address"
      action source-nat interface
      enable
    exit
  exit
exit

ip route 0.0.0.0/0 <>

Диагностика:

esr-1200# show subscriber-control sessions status
Session id User name IP address MAC address Interface Domain
-------------------- --------------- --------------- ----------------- ------------------ ---------------
1224979098644774945 Bras_user 172.16.0.20 a8:f9:4b:ac:9f:33 gi1/0/3.10 --
1224979098644774944 Bras_user_2 172.16.0.10 a8:f9:4b:ab:a9:ae gi1/0/3.10 --

esr-1200# show subscriber-control services status
Service id Session id Service name User name Quota volume Quota time
(Bytes) (Seconds)
-------------------- -------------------- --------------- --------------- -------------- --------------
1261007895663738900 1224979098644774935 A INTERNET Bras_user -- --
1261007895663738899 1224979098644774934 A INTERNETDY Bras_user_2 -- --

esr-1200# clear subscriber-control sessions


Включение debug:

esr-1200# debug
esr-1200(debug)# debug bras error
esr-1200(debug)# debug bras debug
esr-1200(debug)# debug bras coa
esr-1200(debug)# debug bras radius
esr-1200(debug)# debug bras radius-err
esr-1200(debug)# debug bras netlink
esr-1200(debug)# debug bras netlink-err
esr-1200(debug)# debug bras warn
esr-1200(debug)# end

2) Конфигурация freeradius:

freeradius/users:

"172.16.0.20" Cleartext-Password := "172.16.0.20"
User-Name = "Bras_user",
Session-Timeout = 259200,
Idle-Timeout = 259200,
Cisco-Account-Info = "AINTERNET"                          # INTERNET - название сервиса для клиента с ip 172.16.0.20

"172.16.0.10" Cleartext-Password := "172.16.0.10"
User-Name = "Bras_user_2",
Session-Timeout = 259200,
Idle-Timeout = 259200,
Cisco-Account-Info = "AINTERNETDY"                        # AINTERNETDY - название сервиса для клиента с ip 172.16.0.10

INTERNET Cleartext-Password := "INTERNET"
User-Name = "INTERNET",
Cisco-AVPair = "subscriber:traffic-class=INTERNET",          #INTERNET - название acl на esr(bras)
Cisco-AVPair += "subscriber:filter-id=white;subscriber:filter-action=permit",      # white - имя списка доступа url, разрешенных для данного сервиса(INTERNET)
Cisco-AVPair += "subscriber:filter-id=black;subscriber:filter-action=deny",        # black - имя списка доступа url, запрещенных для данного сервиса(INTERNET)
Cisco-AVPair += "subscriber:flow-status=enabled"

INTERNETDY Cleartext-Password := "INTERNETDY"
User-Name = "INTERNETDY",
Cisco-AVPair = "subscriber:traffic-class=INTERNET",          #INTERNET - название acl на esr(bras)
Cisco-AVPair += "subscriber:filter-id=white;subscriber:filter-action=permit",      # white - имя списка доступа url, разрешенных для данного сервиса(INTERNETDY)
Cisco-AVPair += "subscriber:filter-id=black_2;subscriber:filter-action=deny",      # black_2 - имя списка доступа url, запрещенных для данного сервиса(INTERNETDY)
Cisco-AVPair += "subscriber:flow-status=enabled"


freeradius/clients.conf:
client BRAS {
ipaddr = 192.168.0.10
secret = password
}

freeradius -X - запуск freeradius в режиме отладки

3) HTTP/HTTPS(WEB) сервер:

Запуск web сервера на Linux из деректории /Документы/http

root@comp:~/Документы/http# python3 -m http.server 8000

В директории /Документы/http хранятся списки доступа с именами black/black_2/white. URL в списках доступа рекомендуется хранить в формате regexp.

  • Нет меток