Ответ:
Рассмотрим процесс работы ААА на примере RADIUS-сервера на основе пакета freeradius (рассмотрим минимальные настройки).
В простейшей конфигурации после установки пакета freeradius вносим следующие изменения в конфигурационные файлы:
1. Вraddb/clients.conf (для коммутатора):
client 192.168.0.1 {
secret = testing
shortname = switch
}
2. В конфигурационный файл /etc/raddb/dictionary добавляем следующую строчку:
$INCLUDE /etc/raddb/dictionary.dlink
3. Соответственно, создаем файл /etc/raddb/dictionary.dlink со следующим содержимым:
VENDOR dlink 171
BEGIN-VENDOR dlink
ATTRIBUTE dlink-Privelege-Level 1 integer
END-VENDOR dlink
4. В raddb/users добавляются следующие строки. Так как на некоторых коммутаторах существует четыре уровня прав доступа, создадим соответственно четырех пользователей user, puser, oper, admin, operator_dlink и enable. operator_dlink используется в DES-3526 для команды "enable operator", enable необходим для получения прав администратора при выполнении команды enable admin (во всех перечисленных сериях коммутаторов). Для серии DGS-3100 для получения администраторских прав необходимо также создать пользователя $enab15$:
Пользователь user при успешной авторизации получит права user, puser — power_user, oper — operator, admin будет сразу авторизован с правами администратора (такая возможность имеется не на всех сериях коммутаторов).
P.S. На тех коммутаторах, где существует два уровня прав, пользователи user, puser и oper будут авторизованы с правами user. На тех коммутаторах, где существует три уровня прав, пользователи user и puser будут авторизованы с правами user, а пользователь oper с правами operator.
Сразу авторизоваться с правами администратора на данный момент можно на следующих сериях коммутаторов:
DES-3000 Series (F/W: 4.30.B12 и выше), DES-3526 (проверено на прошивках 6.00.B57 и 6.10.B24),
DES-3528 (проверено на прошивке 2.63.B035), DES-3028 (проверено на прошивке 2.80.B10), DES-3200 Series (проверено на прошивке 1.52.B004), DGS-3120 Series (проверено на прошивке 2.00.B011), DES-3828,
DGS-3400 Series, DGS-3600 Series.
Далее приведем примеры настроек на коммутаторах различных серий. В них RADIUS авторизация будет производиться при подключении к коммутатору по Telnet.
# DES-3000 Series (F/W: 4.30.B12 ивыше), DES-3526, DES-3828 (для получения прав# администратора использовать команду «enable admin»)
create authen server_host 192.168.0.221 protocol radius port 1812 key "testing" timeout 5 retransmit 2
config authen server_group radius delete server_host 192.168.0.221 protocol radius
config authen server_group radius add server_host 192.168.0.221 protocol radius
config authen_login default method local
create authen_login method_list_name rad_ext
config authen_login method_list_name rad_ext method radius
config authen_enable default method local_enable
create authen_enable method_list_name rad_ext_ena
config authen_enable method_list_name rad_ext_ena method radius
config authen application console login default
config authen application console enable default
config authen application telnet login method_list_name rad_ext
config authen application telnet enable method_list_name rad_ext_ena
config authen application ssh login default
config authen application ssh enable default
config authen application http login default
config authen application http enable default
config authen parameter response_timeout 0
config authen parameter attempt 3
config authen enable_admin all state enable
enable authen_policy
*Пояснения:
IP адрес управляющего интерфейса коммутатора должен соответствовать записи в raddb/clients.conf
create authen server_host 192.168.0.221 protocol radius port 1812 key "testing" timeout 5 retransmit 2
Создаем на коммутаторе запись о Radius-сервере, ключ должен совпадать с записью в raddb/clients.conf
create authen_login method_list_name rad_ext
config authen_login method_list_name rad_ext method radius
Создаем метод авторизации rad_ext, в котором предпочитаемым будет RADIUS.
create authen_enable method_list_name rad_ext_ena
config authen_enable method_list_name rad_ext_ena method radius
Создаем метод авторизации rad_ext_ena для получения прав администратора, в котором предпочитаемым будет RADIUS.
config authen application console login default
config authen application console enable default
config authen application telnet login method_list_name rad_ext
config authen application telnet enable method_list_name rad_ext_ena
config authen application ssh login default
config authen application ssh enable default
config authen application http login default
config authen application http enable default
В качестве примера применяем созданные нами методы авторизации для Telnet (в том числе для получения прав администратора). Для авторизации при доступе к коммутатору по консоли, SSH и HTTP оставляем параметры по умолчанию.
config authen parameter attempt 3
Задаем максимальное количество попыток авторизации
config authen enable_admin all state enable
Разрешаем повышение прав до admin для всех типов аутентификации
enable authen_policy
Глобально разрешаем использование политик аутентификации
Приведем аналогичные примеры и для других серий:
# DES-1228/ME, DES-3028, DES-3528, DES-3200 Series, DGS-3120 Series, DGS-3200 Series, DGS-3400 Series,
# DGS-3600 Series (для получения прав администратора использовать команду «enable admin»)
create authen server_host 192.168.0.221 protocol radius port 1812 key "testing" timeout 5 retransmit 2
config authen server_group radius delete server_host 192.168.0.221 protocol radius
config authen server_group radius add server_host 192.168.0.221 protocol radius
config authen_login default method local
create authen_login method_list_name rad_ext
config authen_login method_list_name rad_ext method radius
config authen_enable default method local_enable
create authen_enable method_list_name rad_ext_ena
config authen_enable method_list_name rad_ext_ena method radius
config authen application console login default
config authen application console enable default
config authen application telnet login method_list_name rad_ext
config authen application telnet enable method_list_name rad_ext_ena
config authen application ssh login default
config authen application ssh enable default
config authen application http login default
config authen application http enable default
config authen parameter response_timeout 0
config authen parameter attempt 3
enable authen_policy
# DGS-3100 Series ( для получения правадминистратора local_enable admin)
create authen_login method_list_name rad_ext
config authen_login method_list_name rad_ext method radius
create authen_enable method_list_name rad_ext_ena
config authen_enable method_list_name rad_ext_ena method radius
config authen application telnet login rad_ext
config authen application telnet enable rad_ext_ena
create authen server_host 192.168.0.221 protocol radius port 1812 key testing timeout 5 priority first
Рассмотрим процесс работы ААА на примере TACACS+ сервера на основе пакета tac_plus (рассмотрим минимальные настройки):
Простейший конфигурационный файл tac_plus выглядит следующим образом:
host = 192.168.0.1 {
key = "testing"
}
accounting file = /var/log/tac.log
group = users {
enable = cleartext enable_users
service = exec {
priv-lvl = 3
}
}
group = pusers {
enable = cleartext enable_pusers
service = exec {
priv-lvl = 6
}
}
group = opers {
enable = cleartext enable_opers
service = exec {
priv-lvl = 4
}
}
group = admins {
enable = cleartext enable_admins
service = exec {
priv-lvl = 5
}
}
user = user {
member = users
login = cleartext user
}
user = puser {
member = pusers
login = cleartext puser
}
user = oper {
member = opers
login = cleartext oper
}
user = admin {
member = admins
login = cleartext admin
}
user = $enab15$ {
default service = permit
login = cleartext test123
}
Созданы группы users, pusers, opers, admins, каждой из которых можно задать свой пароль для повышения уровня прав. Также созданы пользователи user, puser, oper, admin и $enab15$ . Последний используется для получения прав администратора на DGS-3100 Series.
Учетная запись для коммутатора задается в секции host.
Пользователь user при успешной авторизации получит права user, puser — power_user, oper — operator, admin будет сразу авторизован с правами администратора (такая возможность имеется не на всех сериях коммутаторов).
P.S. На тех коммутаторах, где существует два уровня прав, пользователи user, puser и oper будут авторизованы с правами user. На тех коммутаторах, где существует три уровня прав, пользователи user и puser будут авторизованы с правами user, а пользователь oper с правами operator.
Сразу авторизоваться с правами администратора на данный момент можно на следующих сериях коммутаторов: DES-3028 (проверено на прошивке 2.80.B10), DES-3200 Series (проверено на прошивке 1.52.B004), DGS-3120 (проверено на прошивке 2.00.B011),
Конфигурация коммутаторов для TACACS+ авторизации при telnet доступе:
# DGS-3100 Series (для получения прав администратора local_enable admin)
create authen_login method_list_name tac_plus
config authen_login method_list_name tac_plus method tacacs+
create authen_enable method_list_name tac_plus_ena
config authen_enable method_list_name tac_plus_ena method tacacs+
config authen application telnet login tac_plus
config authen application telnet enable tac_plus_ena
create authen server_host 192.168.0.221 protocol tacacs+ port 49 key testing timeout 5 priority first
# DES-1228/ME, DES-3028, DES-3528, DES-3200 Series, DGS-3120 Series, DGS-3200 Series, DGS-3400 Series,
# DGS-3600 Series (для получения прав администратора enable admin)
create authen server_host 192.168.0.221 protocol tacacs+ port 49 key "testing" timeout 5 retransmit 2
config authen server_group tacacs+ delete server_host 192.168.0.221 protocol tacacs+
config authen server_group tacacs+ add server_host 192.168.0.221 protocol tacacs+
config authen_login default method local
create authen_login method_list_name tac_plus
config authen_login method_list_name tac_plus method tacacs+
config authen_enable default method local_enable
create authen_enable method_list_name tac_plus_ena
config authen_enable method_list_name tac_plus_ena method tacacs+
config authen application console login default
config authen application console enable default
config authen application telnet login method_list_name tac_plus
config authen application telnet enable method_list_name tac_plus_ena
config authen application ssh login default
config authen application ssh enable default
config authen application http login default
config authen application http enable default
config authen parameter response_timeout 30
config authen parameter attempt 3
enable authen_policy
# DES-3000 Series (F/W: 4.30.B12 и выше), DES-3526, DES-3828 (для получения прав
# администратораe nable admin)
create authen server_host 192.168.0.221 protocol tacacs+ port 49 key "testing" timeout 5 retransmit 2
config authen server_group tacacs+ delete server_host 192.168.0.221 protocol tacacs+
config authen server_group tacacs+ add server_host 192.168.0.221 protocol tacacs+
config authen_login default method local
create authen_login method_list_name tac_plus
config authen_login method_list_name tac_plus method tacacs+
config authen_enable default method local_enable
create authen_enable method_list_name tac_plus_ena
config authen_enable method_list_name tac_plus_ena method tacacs+
config authen application console login default
config authen application console enable default
config authen application telnet login method_list_name tac_plus
config authen application telnet enable method_list_name tac_plus_ena
config authen application ssh login default
config authen application ssh enable default
config authen application http login default
config authen application http enable default
config authen parameter response_timeout 0
config authen parameter attempt 3
config authen enable_admin all state enable
enable authen_policy