Алгоритм привязки RADIUS-сервера к беспроводной сети коммерческого предприятия, настройка сервера и коммутатора при проектировании системы обработки информации
В общем случае алгоритм привязки RADIUS-сервера к беспроводной сети может быть реализован следующим образом:
1. Сетевой администратор дает команду RADIUS-серверу завести новую учетную карточку пользователя с занесением в нее имени пользователя, под которым он будет проходить аутентификацию, и его пароля.
2. Внесенный в базу RADIUS-сервера пользователь с помощью беспроводной связи подключается к точке доступа, чтобы проверить электронную почту.
3. Точка доступа запрашивает у пользователя его имя и пароль.
4. Точка доступа связывается с RADIUS-сервером и дает запрос на аутентификацию пользователя.
5. RADIUS-сервер находит валидное имя пользователя и пароль, разрешает новую сессию и заводит в журнале соответствующую запись о начале новой сессии.
6. Точка доступа предоставляет пользователю возможность работать с теми сервисами, которые ему предписаны.
7. По окончании сессии, которая может быть прервана либо самим пользователем, либо RADIUS-сервером (например, истек установленный по регламенту, или настроенный промежуток времени работы), RADIUS-сервер делает в журнале запись об окончании сеанса.
Процедура должна строго выполняться и быть реализована логически верно – т.к. относится к управлению доступом.
Команды настройки RADIUS сервера.
Поскольку в качестве операционной системы RADIUS сервера будет использоваться Debian, то приведем команды непосредственной настройки сервера FreeRADIUS для ОС Debian.
1) Инсталляция и настройка FreeRADIUS.
Запуск RADIUS-сервера в режиме отладки:
# radiusd -sfxxyz -l stdout
В версии, поставляющейся в debian, файл называется freeradius (/usr/sbin/freeradius), а запуск в отладочном режиме, согласно официальной документации [1] осуществляется опцией -X, т.е.
# freeradius -X
Проверка конфигурационного файла FreeRadius-сервера:
# radiusd -c
2) Конфигурационные файлы FreeRADIUS.
FreeRADIUS использует несколько конфигурационных файлов. У каждого файла есть свой man, который описывает формат файла и примеры конфигураций.
Radiusd.conf - главный конфигурационный файл в котором указываются пути к другим конфигурационным файлам, log файлы, устанавливаются различные параметры контролируемые администратором.
Dictionary - этот файл обычно статический и его не надо изменять. Он определяет все возможные атрибуты RADIUS использующиеся в других конфигурационных файлах.
Clients.conf - в файле содержится описание клиента. Синтаксис записей следующий:
client <hostname|ip-address|ip-network> { <attribute> = <value> }
Обязательные атрибуты secret и shortname, опционально можно задать атрибут nastype, который определяет тип клиента (все возможные типы описаны в man clients.conf)
Пример задания клиента:
client 192.168.0.0/16 {
secret = password
shortname = my-network
}
Hints -Определяет префикс/суффикс для пользовательских имен - атрибут user-name. Используется для отсечения префикса/суффикса в ситуациях когда:
1. Атрибут user-name перед авторизацией/тарификацией нужно избавить от имени домена и т.п., переданного клиентом, таким образом препроцессор трансформирует 'user@domain.com' в 'user'.
2. Необходимо одному и тому же пользователю предоставлять разные сервисы и/или использовать разные схемы авторизации/аутентификации. Тогда для пользователя 'user' при входе как 'user.ppp' или 'user.telnet' можем определить разные схемы авторизации и при входе как 'user.telnet' можем добавить проверку вхождения в группу telnet-пользователей.
Huntgroups - позволяет определить разные группы NAS, к сожалению критерий для включения в группу один - IP-адрес NAS (дополнительно можно указывать порт или диапазон портов). При разборе users файла конфигурации позволяет использовать различные схемы авторизации/аутентификации/учета исходя из значения атрибута Huntgroup-Name
Пример:
# CISCO group
ciscogrp NAS-IP-Address == 192.168.10.1
ciscogrp NAS-IP-Address == 192.168.10.2
ciscogrp NAS-IP-Address == 192.168.10.3
# Apache
apache NAS-IP-Address == 192.168.11.4
# HP group
hpgroup NAS-IP-Address == 192.168.12.1
hpgroup NAS-IP-Address == 192.168.12.2
3) Настройка атрибутов FreeRADIUS для динамического размещения порта коммутатора в VLAN'е по результатам аутентификации.
Для динамического размещения порта коммутатора в VLANе по результатам аутентификации используются туннельные атрибуты (tunnel attributes):
- Tunnel-Type=VLAN (type 13)
- Tunnel-Medium-Type=802 (type 6)
- Tunnel-Private-Group-ID=VLANID (или VLAN name)
RADIUS-сервер включает туннельные атрибуты в Access-Accept сообщение.
Это основные атрибуты, которые нужны для динамического размещения порта в VLAN'е по результатам аутентификации. Другие атрибуты RADIUS относящиеся к использованию 802.1x перечислены в RFC 3580.
Значения этих атрибутов для конкретного пользователя указываются в файле users (/etc/freeradius/users):
nata Cleartext-Password := "password"
Tunnel-Type = 13,
Tunnel-Medium-Type = 6,
Tunnel-Private-Group-Id = 30
4) Инсталляция и настройка dialupadmin.
Программа dialupadmin предназначена для администрирования RADIUS-сервера через Web.
В данный момент dialupadmin работает только с PHP4 для PHP5.
Команды настройки на стороне коммутатора Cisco.
1) Базовая настройка 802.1X на коммутаторе Cisco.
Для того чтобы выполнить базовую настройку коммутатора для работы по 802.1X необходимо:
- настроить параметры RADIUS-сервера;
- включить AAA и настроить аутентификацию 802.1X на коммутаторе;
- включить аутентификацию 802.1X глобально на коммутаторе;
- настроить аутентификацию 802.1X на интерфейсах коммутатора;
- (опционально) полезным будет также указать интерфейс коммутатора, адрес которого будет использоваться как адрес отправителя в сообщениях RADIUS-серверу.
Пример базовой настройки 802.1X на портах 1-12 и настройка параметров RADIUS-сервера:
!Настройка RADIUS-сервера:
radius-server host 192.168.1.3
radius-server key radiuskey
!Указание интерфейса коммутатора, адрес которого будет использоваться как адрес отправителя в сообщениях RADIUS-серверу:
ip radius source-interface Loopback0
!Включение ААА:
aaa new-model
!Настройка аутентификации:
aaa authentication dot1x default group radius
!Включение аутентификации 802.1X на коммутаторе:
dot1x system-auth-control
!Включение 802.1X на интерфейсах:
interface range FastEthernet0/1 - 12
dot1x port-control auto
2) Настройка параметров RADIUS-сервера.
Если используется аутентификация на RADIUS-сервере, то должны быть настроены адрес (или имя) сервера и пароль использующийся между сервером и аутентификатором:
Switch(config)# radius-server host [host name | IP address] auth-port [port] acct-port [port]
Switch(config)# radius-server key [string]
По умолчанию на коммутаторах Cisco для аутентификации используется порт 1645.
3) Настройка аутентификации 802.1X на коммутаторе.
Включение ААА:
Switch(config)# aaa new-model
Для аутентификации при доступе к порту коммутатора, необходимо указать методы аутентификации:
Switch(config)# aaa authentication dot1x <default|listname> method1 [method2 ...]
Возможные методы:
- group <group-name|radius|tacacs+> — использовать сервер аутентификации;
- enable — использовать пароль привилегированного режима enable;
- krb5 — использовать Kerberos 5 аутентификацию;
- line — использовать пароль line;
- local — использовать локальные имена и пароли;
- none — не выполнять аутентификацию.
4) Включение аутентификации 802.1X на коммутаторе.
Включить аутентификацию 802.1X на коммутаторе:
Switch(config)# dot1x system-auth-control
5) Настройка аутентификации 802.1X на интерфейсах.
Каждый порт коммутатора, на котором должна выполняться аутентификация необходимо настроить следующим образом (порт коммутатора должен быть в режиме access):
Switch(config-if)# dot1x port-control <force-autorized|force-unauthorized|auto>
Опции означают:
- orce-authorized — обязательно авторизовать клиента. Аутентификация не обязательна. Используется по умолчанию;
- force-unauthorized — не переводить порт в авторизованное состояние. Это означает, что трафик клиента через этот порт проходить не может;
- auto — использовать 802.1X для перехода из неавторизованного в авторизованное состояние.
При настройке работы RADIUS-сервера, не стоит путать понятия «аутентификация» и «авторизовать». Клиент может быть авторизованным для использования порта, но при этом даже не проходить аутентификацию.
К порту коммутатора, использующему 802.1X, обычно подключается один компьютер. Если к нему подключено несколько компьютеров, необходимо дать для этого порта команду:
Switch(config-if)# dot1x multi-hosts
6) Настройка динамического размещения порта коммутатора в VLAN'е по результатам аутентификации.
Поддержка протокола 802.1X позволяет коммутатору помещать порт в различные VLAN'ы в зависимости от результатов аутентификации клиента. Для этого необходимо:
1. Настроить RADIUS-сервер таким образом чтобы он передавал информацию и о принадлежности пользователя к VLANу (передается VLAN ID или имя VLAN);
2. Настроить пулы адресов на DHCP-сервере;
3. Настроить на коммутаторе авторизацию на RADIUS-сервере для присвоения номера VLAN'а;
4. Настроить на коммутаторе соответствующие VLAN'ы.
Настройка на коммутаторе авторизации на RADIUS-сервере для присвоения номера VLAN'а:
Switch(config)# aaa authorization network default group radius
Коммутаторы Cisco поддерживают следующие виды VLAN'ов:
– пользовательский VLAN — обычный VLAN созданный администратором;
– Guest VLAN — VLAN в который помещаются клиенты не поддерживающие 802.1X. Коммутатор помещает клиента в guest VLAN когда клиент не отправляет пакеты EAPOL или не отвечает на EAPOL Запрос/Identity;
– Restricted VLAN — в этот VLAN помещаются клиенты не прошедшие аутентификацию.
Настройка существующего VLAN'а в качестве guest VLAN'а на интерфейсе:
Switch(config-if)# dot1x guest-vlan {vlan-id}
Настройка существующего VLAN'а в качестве restricted VLAN'а на интерфейсе:
Switch(config-if)# dot1x auth-fail vlan {vlan-id}
7) Проверка работы 802.1X и RADIUS.
test aaa group <group-name | radius> username password new-code
Дата добавления: 2021-09-25; просмотров: 645;