Аутентификация, авторизация и учет (aaa)

Accounting

The accounting features of the RADIUS protocol can be used independently of RADIUS authentication or authorization. The RADIUS accounting functions allow data to be sent at the start and end of sessions, indicating the amount of resources (such as time, packets, bytes, and so on) used during the session. An Internet service provider (ISP) might use RADIUS access control and accounting software to meet special security and billing needs. The accounting port for RADIUS for most Cisco devices is 1646, but it can also be 1813 (because of the change in ports as specified in RFC 2139 ).

Transactions between the client and RADIUS server are authenticated through the use of a shared secret, which is never sent over the network. In addition, user passwords are sent encrypted between the client and RADIUS server to eliminate the possibility that someone snooping on an insecure network could determine a user’s password.

Назначение

RADIUS — клиент-серверный протокол, работающий на прикладном уровне. Он является так называемым «протоколом ААА» (англ. «Protocol AAA»), что указывает на его назначение и области использования:

Аутентификация

Аутентификация (Authentication) — процесс, позволяющий аутентифицировать (проверить подлинность) субъекта по его идентификационным данным, например, по логину (имя пользователя, номер телефона и т. д.) и паролю;

Авторизация

Авторизация (Authorization)— процесс, определяющий полномочия идентифицированного субъекта, конкретного пользователя на доступ к определённым объектам или сервисам.

Учет (или контроль) — процесс, позволяющий вести сбор сведений и учётных данных об использованных ресурсах. Первичными данными, традиционно передаваемыми по протоколу RADIUS являются величины входящего и исходящего трафиков: в байтах/октетах (с недавних пор в гигабайтах). Однако протокол предусматривает передачу данных любого типа, что реализуется посредством VSA (Vendor Specific Attributes). Так, например, может учитываться время, проведенное в сети, посещаемые ресурсы и т. д.

Последняя функция делает возможным применение RADIUS-серверов в качестве компонентов биллинговых систем, ответственных за сбор информации об использовании телекоммуникационных услуг, их тарификацию, выставление счетов абонентам, обработку платежей и т. д.

Тестовый стенд

У меня развёрнута виртуальная машина Windows Server 2019 Standard на Hyper-V, которая является контроллером домена леса corp.mikrotiklab.ru.

Так же есть настроенный Mikrotik hAP AC с белым (публичным IP адресом). Его конфиг раздаёт адреса, выпускает в интернет и разрешает входящий трафик на роутер только для трафика управления (Winbox, SSH, WebFig порты). Есть ещё Simple Queue, но это не играет никакой роли.

Локальная сеть 192.168.10.0/24, адрес микрота первый в сети, адрес DC-01 192.168.10.10

Если вы хотите углубить свои знания по работе с роутерами MikroTik, то наша команда рекомендует пройти курсы которые сделаны на основе MikroTik Certified Network Associate и расширены автором на основе опыта . Подробно читайте .

Установка FreeRADIUS

Теперь, когда все предварительные условия выполнены, вы можете приступить к установке FreeRADIUS. По умолчанию пакет FreeRADIUS доступен в репозиториях, вы можете показать версии freeradius, доступные в вашем Ubuntu, выполнив следующую команду:

sudo apt policy freeradius

Вы получите результат, аналогичный приведенному ниже

Вы можете установить сервер FreeRADIUS, выполнив следующую команду:

sudo apt-get install freeradius freeradius-mysql freeradius-utils -y

Чтобы быстро проверить, что FreeRADIUS запущен и работает, мы запустим FreeRADIUS в режиме отладки.

Чтобы запустить freeRADIUS в режиме отладки, используйте следующую команду:

sudo systemctl stop freeradius
sudo freeradius -X

Результат должен выглядеть примерно так:

Вы можете увидеть строку «Готово обрабатывать запросы» внизу, что означает успешную установку FreeRADIUS.

Настройка клиентского VPN подключения на Windows 10

Для автоматизации, вы можете воспользоваться CMAK – подготовит профиль подключения, после чего пользователю нужно будет лишь дважды кликнуть мышкой. На моем ноутбуке установлена Windows 10, но настройка ничем не будет отличаться допустим от Windows 7. Создадим клиентское подключение вручную. Открываем центр управления сетями и общим доступом – Создание и настройка нового подключения или сети.

Выбираем подключение к рабочему месту.

Нас интересует новое подключение.

Используем текущее подключение к Интернету.

Следом указываете ваш белый IP адрес (или FQDN) микротика, имя VPN и создать.

Переходим в свойства созданного интерфейса через «Изменение параметров адаптера» слева в центре управления сетями и общим доступом. Нас интересует вкладка безопасность. В моей текущей лабораторной среде, я выбираю следующие значения:

  • Тип VPN – PPTP;
  • Разрешить следующие протоколы – MS-CHAP v2;
  • Шифрование данных – в данном случае ни на что не влияет.

Теперь пробуем подключиться с указанием данных пользователя test. Домен можно не указывать.

Указываем учётную запись и пароль.

И вуаля – подключение прошло успешно.

Проверим какой адрес мы получили на клиентском ноутбуке и на Mikrotik.

Посмотрите на значение Encoding. Вы можете в дальнейшем подкручивать политики доступа к сети, создав максимально возможный уровень безопасности для вашей организации. Могу лишь добавить, что наиболее живучий в жизни VPN оказался SSTP/OpenVPN. На этом настройка интеграции AD Radius сервера и Микротика завершена.

Формат сообщения RADIUS:

Протокол RADIUS использует пакеты UDP для передачи сообщений.


Рис.: Структура сообщения RADIUS

Объяснение каждого поля следующее:

  • Код: длина 1 байт,Используется для описания типа пакета RADIUS。
  • Идентификатор: длиной 1 байт, используется для сопоставления сообщений запроса и сообщений ответа, а также для обнаружения сообщений запроса, которые повторно передаются в течение определенного периода времени. После того, как клиент отправит сообщение запроса, значение идентификатора в ответном сообщении, возвращенном сервером, должно быть таким же, как значение идентификатора в сообщении запроса.
  • Длина: длина составляет 2 байта, используется для указания длины пакета RADIUS. Байты, превышающие значение длины, будут игнорироваться как символы заполнения. Если фактическая длина полученного пакета меньше значения Length, пакет будет отклонен.
  • Аутентификатор: длина составляет 16 байтов, используется для проверки ответного сообщения сервера RADIUS, а также используется для шифрования пароля пользователя.
  • Атрибут: переменная длина, это основная часть сообщения, используемая для передачи специальной информации об аутентификации, авторизации и учете, а также для предоставления сведений о конфигурации сообщений запроса и ответа. Атрибут может включать несколько атрибутов, и каждый атрибут представлен тройной структурой (Тип, Длина, Значение).

Отладка авторизации

Услуги

Проверте, что у абонента подключена услуга с типом трафик. Если у абонента отсутствуют услуга трафика — авторизация может пройти, но будет выдан неверный набор атрибутов.

Отладка авторизации

  1. Запишите дамп трафика диалога авторизации в файл
    • Создайте каталог для храния дампа

      mkdir /app/base/var/log/tcpdump
      
    • Запустите сбор дампа трафика в фоновом режиме

      nohup tcpdump -pnni any -c 10000 -w /app/base/var/log/tcpdump/dump.pcap 2>/dev/null
      
    • Если нужно завершить сбор дампа завершите его по pid

      kill -9 27273
      
    • Загрузите файл на ПК и проанализируйте его в WireShark
  2. В настройках в файле включите опцию «Включить DEBUG для Radius демона»
  3. Перезапустите Radius сервер для вступления измений в силу:

    chroot /app/asr_billing/ service radiusd restart
    
  4. В терминале запустите мониторинг лога

    tail -f /app/asr_billing/var/log/radius/radius_debug.log
  5. Совершите авторизацию
  6. Дальше — по ситуации, но нужно помнить что для успешной авторизации в логе должны быть три SQL-запроса:
    • Первый возвращает радиусу информацию о наличии учётной записи

      SELECT ... FROM RAD6_CHECK ('CHECK'
    • Второй возвращает необходимые атрибуты, которые нужно отправить в Access-Accept

      SELECT ... FROM RAD6_CHECK ('REPLY'
    • Третий проводит дополнительные проверки. Должен вернуть «0»

      SELECT ... FROM RAD6_CHECK ('SIMUL'

Отладка команд отправляемых после авторизации

  • Например, для абонента ID 5473 и учётной записи ID 4809 следующей командой можно смотреть отправляемые команды:

    tail -f -n 1000 /app/asr_billing/var/log/abonents/5473/event_4809.log | grep auth_type | awk '{print $1,$2,$7}'

    Если нужно отслеживать какие-то определённые команды, то можно такой командой:

    tail -f -n 1000 /app/asr_billing/var/log/abonents/5473/event_4809.log | grep auth_type | awk '{print $1,$2,$7}'  | grep -E 'rad_acc_start|rad_acc_stop|user_disconnect'

Что такое FreeRADIUS и почему он связан с серверами RADIUS?

FreeRADIUS всегда связан с сервером RADIUS, потому что это программное обеспечение по преимуществу для установки сервера RADIUS. Если нам необходимо установить сервер RADIUS на любом компьютере (серверах, маршрутизаторах, NAS и т. Д.), Мы всегда будем прибегать к программному обеспечению FreeRADIUS, поскольку оно многоплатформенное, и все операционные системы совместимы с этим программным обеспечением. Это программное обеспечение поддерживает все распространенные протоколы аутентификации, такие как PAP, CHAP, EAP, EAP-TTLS, EAP-TLS и другие. Это программное обеспечение полностью модульное, бесплатное и обеспечивает отличную производительность для аутентификации клиентов.

Некоторые модули, которые мы можем включить в FreeRADIUS, должны обеспечить его совместимость с LDAP, MySQL, PostgreSQL и даже Oracle и другими базами данных, таким образом, мы можем иметь базу данных из тысяч клиентов без каких-либо проблем. Это программное обеспечение настраивается с помощью текстовых файлов конфигурации, однако, есть графические пользовательские интерфейсы для быстрой и простой настройки, как и в случае с pfSense, таким образом, это значительно облегчит настройку сервера RADIUS с помощью FreeRADIUS.

Программное обеспечение FreeRADIUS может быть дополнительно установлено в операционной системе pfSense, популярном межсетевом экране и маршрутизаторе, которые мы можем установить практически на любое оборудование. В этой операционной системе мы можем установить его в разделе пакетов, после установки мы можем ввести его конфигурацию в « Услуги / FreeRADIUS » раздел. В этом меню мы можем настроить этот сервер RADIUS расширенным способом, у нас будут разные вкладки для настройки различных разделов, а в меню «Просмотр конфигурации» мы можем увидеть необработанный файл конфигурации, который создается в результате конфигураций, которые мы сделали в остальных вкладках. Здесь мы также видим интеграцию с SQL и даже с LDAP.

NAS-серверы производителя QNAP также имеют встроенный RADIUS-сервер, гораздо более простой, чем у pfSense, где у нас есть все параметры конфигурации, но этот RADIUS-сервер на основе FreeRADIUS позволит нам выполнять типичные задачи, такие как аутентификация клиента через Wi-Fi. или по кабелю, все, что нам нужно сделать, это включить сервер RADIUS, зарегистрировать клиентов RADIUS (коммутаторы или точки доступа), а также пользователей RADIUS (конечные клиенты, которые будут подключаться).

Как вы видели, сервер RADIUS позволит нам выполнять большое количество аутентификаций и авторизации в другом программном обеспечении, например, у оператора, если используется PPPoE, в бизнес-сетях Wi-Fi с шифрованием WPA2 / WPA3-Enterprise и даже аутентификацией через 802.1 ИКС. FreeRADIUS — это программное обеспечение по преимуществу для настройки и запуска сервера RADIUS практически в любой операционной системе, по этой причине мы всегда говорим о сервере RADIUS или FreeRADIUS как синонимах.

8.1. Общие сведения о RADIUS

8.1.1. Общие сведения о AAA и RADIUS

AAA — сокращение от Authentication, Authorization and Accounting (Аутентификация, Авторизация, учёт) и используется при предоставлении доступа в сеть, к управлению оборудованием и управления этим доступом. RADIUS — это один из сетевых клиент-серверных протоколов, используемый для централизованного управления авторизацией, аутентификацией и учетов при запросе доступа пользователей к различным сетевым службам. Клиент RADIUS обычно используется на сетевом устройстве для реализации AAA совместно с протоколом 802.1x. Сервер RADIUS хранит базу данных для AAA и связывается с клиентом RADIUS через протокол RADIUS, который является наиболее распространенным протоколом в рамках AAA.

8.1.2. Общие сведения о AAA и RADIUS

Протокол RADIUS использует UDP для транспорта. Формат заголовка пакета показан ниже.

Рисунок 57.1 — Формат пакета RADIUS

Code – тип пакета RADIUS, возможные значения для данного поля:

1 — Access-Request2 — Access-Accept3 — Access-Reject4 — Accounting-Request5 — Accounting-Response11 — Access-Challenge

Identifier – идентификатор для пакетов запроса и ответа.Length – длина всего пакета RADIUS.Authenticator – поле используется для проверки пакетов, полученных от RADIUS-сервера, или для передачи зашифрованных паролей. Поле разделено на две части: аутентификатор запроса и аутентификатор ответа.Attribute – поле используется для передачи детальной информации о ААА. Значение поля формируется из значений полей Type, Length, и Value:Type field — тип атрибута, значение типов атрибутов определены в RFC 2865;Length field – длина атрибута;Value field – значение атрибута.

Основные понятия AAA

Прежде чем мы познакомимся с протоколами RADIUS и TACACS+, разберемся с основными понятиями механизма AAA. Для примера будем использовать процесс законного проникновения в помещение с контролем доступа.

Аутентификация (authentication) – определение личности того, кто пытается проникнуть в помещение. В нашем примере это может быть сканирование отпечатка пальца, ведь у каждого человека он уникален и может являться гарантом подтверждения личности. В сетевом мире стандартная аутентификация заключается в использовании логина и пароля, которые сгенерированы для каждого пользователя и позволяют ему подтвердить свою личность.

Авторизация (authorization) – следующий шаг после успешной аутентификации. Заключается в проверке прав доступа к помещению того человека, который прошел аутентификацию. Возможно, у человека есть право проникнуть в первое помещение, но запрещено прохождение дальше. На сетевых устройствах права доступа чаще всего определяют перечень команд, которые может выполнить пользователь, прошедший аутентификацию. Например, сетевому инженеру с 1-м уровнем доступа разрешен только просмотр конфигурации устройства с помощью команды show, а инженеру с 2-м уровнем доступно внесение изменений. На AAA-серверах операторов связи право доступа может определять принадлежность абонента к какому-либо тарифному плану.

Учет (аccounting) – параллельный с аутентификацией и авторизацией этап, который записывает в журнал успех или неудачу данных процессов, смог человек проникнуть в помещение или нет, получил ли пользователь доступ к сетевому устройству и, если да, то какие действия на нем совершал. Этот процесс важен с точки зрения безопасности и контроля доступа, так как позволяет определять потенциальные угрозы и искать «дыры» в системе.

На практике в сетях операторов связи AAA-процесс выглядит следующим образом:

  1. Абонент подключается к устройству доступа AGW (Access Gateway) или Network Access Server (NAS) и вводит свой логин и пароль.
  2. AGW (NAS) формирует и посылает запрос аутентификации к AAA-серверу и ожидает ответ.
  3. AAA-сервер обращается к DPI-системе или серверу биллинга по протоколу RADIUS для проверки логина абонента и пароля.
  4. AAA-сервер формирует ответ и отсылает его обратно на AGW (NAS).
  5. Если аутентификация пройдена, то AGW (NAS) пропускает абонента в сеть, но пока еще не предоставляет ему никаких услуг.
  6. Если пользователь пытается выйти в Интернет (вводит URL в строке браузера), AGW (NAS) формирует новый запрос AAA-серверу для авторизации.
  7. ААА-сервер вновь обращается к DPI-системе или серверу биллинга, чтобы получить информацию о тарифном плане и подключенных абоненту услугах.
  8. Получив положительный ответ от биллинга, ААА-сервер посылает ответ на AGW (NAS), и абонент получает доступ к Интернету в соответствии с настройками, установленными для тарифного плана.

О применении СКАТ DPI для тарификации и политик абонентов мы рассказывали в статье про реализацию L3 BRAS, но вскоре остановимся на этой функции подробнее.

RADIUS Client

This sub-menu allows to add/remove RADIUS clients.

Note: The order of added items in this list is significant.

Properties

Property Description
accounting-backup (yes | no; Default: no) Whether configuration is for backup RADIUS server
accounting-port (integer ; Default: 1813) RADIUS server port used for accounting
address (IPv4/IPv6 address; Default: 0.0.0.0) IPv4 or IPv6 address of RADIUS server.
authentication-port (integer ; Default: 1812) RADIUS server port used for authentication.
called-id (string; Default: ) Value depends on Point-to-Point protocol: PPPoE — service name, PPTP — server’s IP address, L2TP — server’s IP address.
certificate (string; Default: ) Certificate file to use for communicating with RADIUS Server with RadSec enabled.
comment (string; Default: )
disabled (yes | no; Default: no)
domain (string; Default: ) Microsoft Windows domain of client passed to RADIUS servers that require domain validation.
protocol (radsec | udp; Default: udp) Specifies the protocol to use when communicating with RADIUS Server.
realm (string; Default: ) Explicitly stated realm (user domain), so the users do not have to provide proper ISP domain name in user name.
secret (string; Default: ) Shared secret used to access the RADIUS server.
service (ppp|login|hotspot|wireless|dhcp; Default: ) Router services that will use this RADIUS server:
  • hotspot — HotSpot authentication service
  • login — router’s local user authentication
  • ppp — Point-to-Point clients authentication
  • wireless — wireless client authentication
  • dhcp — DHCP protocol client authentication (client’s MAC address is sent as User-Name)
src-address (ipv4/ipv6 address; Default: 0.0.0.0) Source IP/IPv6 address of the packets sent to RADIUS server
timeout (time; Default: 100ms) Timeout after which the request should be resend

Note: Microsoft Windows clients send their usernames in form domain\username

Note: When RADIUS server is authenticating user with CHAP, MS-CHAPv1, MS-CHAPv2, it is not using shared secret, secret is used only in authentication reply, and router is verifying it. So if you have wrong shared secret, RADIUS server will accept request, but router won’t accept reply. You can see that with /radius monitor command, «bad-replies» number should increase whenever somebody tries to connect.

Example

To setup a RADIUS Client for HotSpot and PPP services that will authenticate against a RADIUS Server (10.0.0.3), you need to do the following:

 > /radius add service=hotspot,ppp address=10.0.0.3 secret=ex
 > /radius print
Flags: X - disabled
  #   SERVICE         CALLED-ID     DOMAIN        ADDRESS         SECRET
  0   ppp,hotspot                                 10.0.0.3        ex

To setup a RADIUS Client with RadSec, you need to do the following:

 > /radius add service=hotspot,ppp address=10.0.0.3 secret=radsec protocol=radsec certificate=client.crt
 > /radius print
Flags: X - disabled
  #   SERVICE         CALLED-ID     DOMAIN        ADDRESS         SECRET
  0   ppp,hotspot                                 10.0.0.3        radsec

Note: Make sure the specified certificate is trusted.

To view RADIUS Client statistics, you need to do the following:

 > /radius monitor 0
             pending: 0
            requests: 10
             accepts: 4
             rejects: 1
             resends: 15
            timeouts: 5
         bad-replies: 0
    last-request-rtt: 0s

Make sure you enable RADIUS authentication for the desired services:

/ppp aaa set use-radius=yes
/ip hotspot profile set default use-radius=yes

Values for RADIUS Attribute 40, Acct-Status-Type

Registration Procedure(s)
Expert Review
Expert(s)
Bernard Aboba
Reference
Available Formats
Value Description Reference
1 Start
2 Stop
3 Interim-Update
4 Reserved
5 Reserved
6 Reserved
7 Accounting-On
8 Accounting-Off
9 Tunnel-Start
10 Tunnel-Stop
11 Tunnel-Reject
12 Tunnel-Link-Start
13 Tunnel-Link-Stop
14 Tunnel-Link-Reject
15 Failed
16 Unassigned
17 Reserved
18 Subsystem-On [https://freeradius.org/rfc/acct_status_type_subsystem.html][]
19 Subsystem-Off [https://freeradius.org/rfc/acct_status_type_subsystem.html][]
20-216 Unassigned
217 Reserved
218 Reserved
219 Reserved

Authentication and Authorization

The RADIUS server can support a variety of methods to authenticate a user. When it is provided with the username and original password given by the user, it can support PPP, PAP or CHAP, UNIX login, and other authentication mechanisms.

Typically, a user login consists of a query (Access-Request) from the NAS to the RADIUS server and a corresponding response (Access-Accept or Access-Reject) from the server. The Access-Request packet contains the username, encrypted password, NAS IP address, and port. The early deployment of RADIUS was done using UDP port number 1645, which conflicts with the «datametrics» service. Because of this conflict, RFC 2865 officially assigned port number 1812 for RADIUS. Most Cisco devices and applications offer support for either set of port numbers. The format of the request also provides information about the type of session that the user wants to initiate. For example, if the query is presented in character mode, the inference is «Service-Type = Exec-User,» but if the request is presented in PPP packet mode, the inference is «Service Type = Framed User» and «Framed Type = PPP.»

When the RADIUS server receives the Access-Request from the NAS, it searches a database for the username listed. If the username does not exist in the database, either a default profile is loaded or the RADIUS server immediately sends an Access-Reject message. This Access-Reject message can be accompanied by a text message indicating the reason for the refusal.

In RADIUS, authentication and authorization are coupled together. If the username is found and the password is correct, the RADIUS server returns an Access-Accept response, including a list of attribute-value pairs that describe the parameters to be used for this session. Typical parameters include service type (shell or framed), protocol type, IP address to assign the user (static or dynamic), access list to apply, or a static route to install in the NAS routing table. The configuration information in the RADIUS server defines what will be installed on the NAS. The figure below illustrates the RADIUS authentication and authorization sequence.

Установка и настройка Freeradius

Установка в CentOS выполняется командой:

dnf install freeradius freeradius-utils

* мы установим не только сам freeradius, но и утилиты для работы с ним.

Разрешим автозапуск сервиса и запустим его:

systemctl enable radiusd

systemctl start radiusd

Открываем файл:

vi /etc/raddb/users

… и в самый низ добавляем:

test Cleartext-Password := «test123»

* мы создали пользователя test с паролем test123.

Перечитываем конфиг radius:

systemctl reload radiusd

Делаем тестовый запрос:

radtest test test123 localhost 1218 testing123

* где:

  • test — учетная запись, которую мы проверяем.
  • test123 — пароль от учетной записи test.
  • localhost — сервер, к которому мы обращаемся (в нашем случае, локальный).
  • 1218 — порт, на котором слушает запросы freeradius.
  • testing123 — пароль для подключения клиентом к серверу radius. Данный пароль создается по умолчанию для локальных запросов.

Мы должны увидеть ответ на подобие:


Received Access-Accept Id 87 from 127.0.0.1:1812 to 127.0.0.1:56554 length 20

Access-Accept говорит нам о том, что пароль для пользователя test правильный. Сервер работает.

Запросы DM и CoA#

При необходимости изменения параметров сессии или ее разрыва UTM5 RADIUS может отправлять запросы DM (Disconnect Message) и CoA (Change of Authorization) в соответствии с RFC 5176. Для изменения параметров или разрыва каждой сессии UTM5 RADIUS отправляет отдельный запрос.

Запрос разрыва соединения (DM) и запрос изменения параметров сессии (CoA) имеют одинаковый формат и отправляются по умолчанию на UDP-порт 3799. Номер порта можно изменить в настройках NAS (см. ).

Запросы DM используются для разрыва сессии, если баланс лицевого счета пользователя становится отрицательным. Для идентификации сессии в запросе могут использоваться следующие атрибуты:

–User-Name

имя пользователя, ассоциированного с одной или более сессиями;

–NAS-Port

порт, используемый сессией, которую нужно разорвать;

–Framed-IP-Address

IPv4 адрес, ассоциированный с сессией;

–Vendor-Specific

один или более vendor-specific атрибутов;

–Called-Station-Id

идентификатор вызываемой стороны;

–Calling-Station-Id

идентификатор вызывающей стороны;

–Acct-Session-Id

идентификатор, позволяющий однозначно идентифицировать сессию на NAS.

Если NAS удается идентифицировать и разорвать сессию, он отвечает на запрос Disconnect-ACK, в противном случае — Disconnect-NAK.

Запросы CoA используются для изменения параметров шейпинга (регулирования пропускной способности канала) для текущей сессии (подробнее см. ). Как правило, эти параметры меняются в определенное время суток или по достижении определенного лимита трафика. Если NAS поддерживает запросы CoA и в интерфейсе администратора в настройках NAS выбрана соответствующая опция, то при наступлении любого из двух этих событий UTM5 RADIUS отправит NAS соответствующий запрос CoA.

Аналогично запросу DM, запрос CoA содержит атрибуты, позволяющие идентифицировать сессию, а также новые значения параметров RADIUS (см. ), которые необходимо применить. Если NAS удается идентифицировать сессию и применить новые параметры, он отвечает на запрос CoA-ACK, в противном случае — CoA-NAK.

Краткое описание схемы работы:

1.Соединение с ядром UTM5.

2.Получение от ядра UTM5 информации о необходимых для работы событиях.

3.Взаимодействие с NAS.

4.Передача данных о взаимодействии ядру UTM5.

При запуске UTM5 RADIUS подключается к ядру UTM5, авторизуется, используя соответствующие параметры конфигурационного файла, и устанавливает соединение по протоколу Stream.

После установления соединения ядро UTM5 направляет UTM5 RADIUS информацию обо всех необходимых объектах в соответствующих событиях.

UTM5 RADIUS поддерживает постоянное соединение с ядром по протоколу Stream. При создании, изменении или удалении объектов системы, параметры которых необходимы UTM5 RADIUS, ядро UTM5 отправляет определенное событие по протоколу Stream.

При получении соответствующего события UTM5 RADIUS создает, изменяет или удаляет во внутренних таблицах данные о следующих объектах:

–IP-группы;

–NAS;

–лицевые счета;

–временные диапазоны;

–услуги передачи трафика и телефонии;

–сервисные связки услуг коммутируемого доступа и телефонии;

–телефонные зоны;

–телефонные направления;

–именованные IP-пулы.

Настройка Mikrotik RADIUS Client

Описывать настройку VPN Server не буду, вы можете воспользоваться уже написанными, причём не важно какой будет туннель PPTP, L2TP, SSTP или OpenVPN (кликнув на ссылку можете посмотреть их настройку). Если последние 2, то не забывайте про сертификаты

В нашем примере я буду использовать PPTP.

Следующий этап, это настройка роутера в качестве клиента RADIUS. Открываем соответствующее меню слева, и добавляем правило.

  • Нас интересует сервис ppp;
  • Address – адрес сервера аутентификации;
  • Secret – тот самый общий ключ;
  • Src. Address – IP с которого Mikrotik Будет отправлять пакеты на NPS.

Не забываем про правила фаервола

Напоследок включаем заветную галочку в PPP, без которой Mikrotik не побежит на NPS сервер.

У вас может возникнуть вопрос:

Что если у меня уже есть учетки в Secrets по которым уже есть соединения от клиентов?

Тут вы можете пойти по пути переноса их в AD, хотя бы по причине того, что она более стойкая, по отношению к конфигу микротика. Единственное, я бы не делал этого для учеток Site-toSite VPN.

Рейтинг
( Пока оценок нет )
Editor
Editor/ автор статьи

Давно интересуюсь темой. Мне нравится писать о том, в чём разбираюсь.

Понравилась статья? Поделиться с друзьями:
Работатека
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: