Настройка локальной авторизации для всех абонентов [Документация VAS Experts]

Настройка локальной авторизации для всех абонентов

Данная инструкция подходит для следующих сценариев:

  1. Авторизации тестового абонента в рамках функционального тестирования BRAS.
  2. Авторизация абонентов при выходе из строя основного радиус сервера.

Конфигурация FreeRADIUS

  1. Отключение EAP. В рамках данной сборки отключение не требуется, но EAP может вызвать ошибки при включении юнита radiusd, поэтому стоит отключить. Перейти в директорию /etc/raddb/sites-available/default /etc/raddb/sites-enabled/inner-tunnel
    Отключить EAP в разделах:
    authorize {
     #  eap {
    # ok = return
    # updated = return
    #  }
    authenticate {
    #  eap
    post-proxy {
    #  eap 

    Также при необходимости удалить файлы EAP из модулей /etc/raddb/mods-available/eap и /etc/raddb/mods-enabled/eap.

  2. Настройка клиентов/NAS. Под клиентами имеются в виду RADIUS-клиенты, в данном случае — FastPCRF.
    Если сервер FreeRADIUS развернут на одном узле с FastPCRF, дополнительная настройка не требуется — достаточно проверить конфигурацию по умолчанию в файле /etc/raddb/clients.conf.
    Если необходимо прописать удаленный NAS, использовать тот же файл и добавить описание клиента, например:
    client fastpcrf1 {
      ipaddr          = < IP >
      secret          = < SECRET >
      require_message_authenticator = yes
      }
  3. Авторизация абонентов. Требуется настроить шаблон Access-Accept, который будет формировать FreeRADIUS. Для этого добавить конфигурацию в файл /etc/raddb/users, явно указав авторизацию всех запросов независимо от атрибутов, имени пользователя и типа авторизации.
    DEFAULT Auth-Type := Accept
          User-name = "%{User-name}",
          VasExperts-L2-User = 1,
          VasExperts-Policing-Profile = "rate_10M",
          VasExperts-Enable-Service = "9:on",
          Framed-Pool = "test-pool",
          Framed-IP-Address = "%{Framed-IP-Address}",
          Framed-IP-Netmask = "255.255.0.0
          VasExperts-DHCP-Gateway = "192.168.35.1",
          VasExperts-DHCP-DNS = "8.8.8.8",
          VasExperts-DHCP-DNS = "8.8.4.4"

    Данный шаблон подходит для всех типов авторизации (DHCP, IPoE Static L2, PPPoE). При отсутствии атрибута Framed-IP-Address в Access-Request FreeRADIUS отправляет Access-Accept с Framed-IP-Address = 0.0.0.0. FastPCRF игнорирует атрибут с таким значением, и назначение IP-адреса выполняется на основе значения атрибута Framed-Pool. Для выдачи адресов из Framed-Pool на сервере должен быть установлен и настроен локальный DHCP-сервер. Подробнее

  4. Настройки в FastPCRF. Выполнить настройку RADIUS-сервера. В случае использования резервного сервера указать его после строки с основным radius_server.
    radius_server=secret@127.0.0.1%lo:1812;acct_port=1813
  5. Проверка. Сначала выполнить проверку конфигурации FreeRADIUS с помощью команды radiusd –CX.
    Затем запустить RADIUS в режиме отладки командой radiusd –X — вся обработка сообщений будет выводиться в CLI, а ошибки будут наглядно отображаться.
    Авторизацию со стороны PCRF проверить в файле /var/log/dpi/fastpcrf_ap2.log. При корректной работе системы запустить FreeRADIUS в штатном режиме и включить автозапуск:
    systemctl start radiusd
    systemctl enable radiusd

Варианты шаблонов Access-Accept для разных типов авторизации (L3, DHCP, PPPoE) клиентов

В данной реализации все сравнения выполняются внутри файла на основе наличия соответствующего атрибута в запросе.

Для L3 Static клиента:

DEFAULT VasExperts-Service-Type == 0, Auth-Type := Accept
  User-name = "%{User-name}",,
  VasExperts-L2-User = 1,
  VasExperts-Policing-Profile = "rate_10M",
  VasExperts-Enable-Service = "9:on",
  Framed-IP-Address = "%{Framed-IP-Address}",
  Framed-IP-Netmask = 255.255.255.0,
  VasExperts-DHCP-Gateway = "192.168.35.1",
  VasExperts-DHCP-DNS = "8.8.8.8",
  VasExperts-DHCP-DNS = "8.8.4.4",
  VasExperts-Service-Profile = "11:cg-nat",  
  Session-Timeout = 84600

Для DHCP клиента:

DEFAULT VasExperts-Service-Type == 1, Auth-Type := Accept
  User-name = "%{User-name}",
  VasExperts-Policing-Profile = "rate_10M",
  VasExperts-Enable-Service = "9:on",
  Framed-Pool = "test-pool",
  VasExperts-Service-Profile = "11:cg-nat", 
  Session-Timeout = 84600

Для PPPoE клиента:

DEFAULT VasExperts-Service-Type >= 2, Auth-Type := Accept
  User-name = "%{User-name}",
  VasExperts-Policing-Profile = "rate_10M",
  VasExperts-Enable-Service = "9:on",
  Framed-Pool = "test-pool",
  VasExperts-Service-Profile = "11:cg-nat", 
  Session-Timeout = 84600

Была ли полезна эта информация?