RADIUS - протокол для реализации аутентификации, авторизации и сбора сведений об использованных ресурсах, разработанный для передачи сведений между центральной платформой и оборудованием.
С помощью протокола RADIUS можно организовать централизованную систему авторизации и аутентификации сотрудников, которым для проведения диагностики или настройки оборудования необходим доступ на коммутаторы. Таким образом значительно упрощается сопровождение большого количества коммутаторов и постоянно обновляющегося списка пользователей.
Данный функционал поддерживается всеми управляемыми коммутаторами SNR.
Рассмотрим стандартную настройку функционала, которая идентична для всех коммутаторов SNR:
Для начала необходимо настроить RADIUS-сервер и включить AAA глобально:
radius-server authentication host {ip_addr} [key {key}] aaa enable |
Если в качестве адреса коммутатора указывается loopback интерфейс, то необходимо применить следующую команду:
radius nas-ipv4 {ip_addr} |
Затем настраиваем аутентификацию пользователей через RADIUS-сервер, при доступе через консольный порт (console), через удаленный терминал (vty ), и через WEB:
authentication line console login radius local authentication line vty login radius local authentication line web login radius local |
Необходимо добавить local после radius, иначе при недоступности RADIUS-сервера аутентификация будет невозможной даже при наличии локальных учетных записей! |
Аутентификация включена, теперь при вводе логина и пароля для доступа на коммутатор, данные отправляются на RADIUS-сервер, который отвечает либо подтверждением доступа, либо запретом. Если RADIUS-сервер не отвечает - используется следующий метод аутентификации (в нашей конфигурации локальный).
В такой конфигурации, после прохождения аутентификации, пользователь попадает на коммутатор в непривилегированном режим.
Для серий S2962, S2965, S2982G, S2985G, S2995G и S3850G управление уровнем доступа осуществляется с помощью vendor-specific атрибута, поэтому, в случае если этот атрибут не указан, пользователь попадает в привилегированный режим. |
Если необходимо попадать сразу в режим enable, необходимо включить авторизацию командой:
authorization line vty exec radius local |
А RADIUS-сервер настроить так, чтобы в ответе access-accept приходил аттрибут service-type со значением 6.
Также можно настроить проверку пароля enable через RADIUS-сервер. Это делается командой:
authentication enable radius local |
В этом случае на RADIUS-сервере необходимо создать пользователя с логином $enab15$.
Как мы узнали выше, для серий S2962, S2965, S2982G, S2985G, S2989G, S2995G и S3850G поддерживается управление уровнем доступа (level 1-15) с помощью vendor-specific атрибута.
Рассмотрим настройку данного функционала на примере RADIUS-сервера на основе пакета freeradius:
В директории freeradius создаем файл (словарь) /usr/share/freeradius/dictionary.snr со следующим содержимым:
VENDOR SNR 40418 BEGIN-VENDOR SNR ATTRIBUTE SNR-User-Priv 240 integer END-VENDOR SNR |
В конфигурационный файл /usr/share/freeradius/dictionary добавляем созданный нами словарь:
$INCLUDE /usr/share/freeradius/dictionary.snr |
В файле /etc/freeradius/users создаем пользователя с необходимым уровнем привилегий (1-15):
user Cleartext-Password := "password" SNR-User-Priv = 1 |
В данном случае пользователь 'user' будет авторизован с уровнем привилегий - 1.
Для использования данного функционала версия ПО для серий S2962, S2965, S2982G, S2985G должна быть не ниже 7.0.3.5(R0241.0290), а для серий S2995G и S3850G - не ниже 7.5.3.2(R0004.0152). |