06.09.2013

Аутентификация в Cisco IOS

image

AAA (Authentication Authorization and Accounting) — система аутентификации авторизации и учета событий, встроенная в операционную систему Cisco IOS, служит для предоставления пользователям безопасного удаленного доступа к сетевому оборудованию Cisco. Она предлагает различные методы идентификации пользователя, авторизации, а также сбора и отправки информации на сервер.

Автор: Максим Хабрат, исследовательский центр Positive Research

AAA (Authentication Authorization and Accounting) — система аутентификации авторизации и учета событий, встроенная в операционную систему Cisco IOS, служит для предоставления пользователям безопасного удаленного доступа к сетевому оборудованию Cisco. Она предлагает различные методы идентификации пользователя, авторизации, а также сбора и отправки информации на сервер.

Однако мало того, что ааа по умолчанию выключена; конфигурация этой системы — дело довольно запутанное. Недочеты в конфигурации могут привести либо к нестабильному, небезопасному подключению, либо к отсутствию какого-либо соединения в принципе. В данной статье мы подробно разберем схему настройки аутентификации при помощи aaa.

В общем виде схема аутентификации выглядит так:



Рис. 1. Схема аутентификации (по клику открывается в полном размере)



Рис. 2. Схема аутентификации (продолжение, по клику открывается в полном размере)

Схема разделена на две части не случайно: в первой описывается основной путь прохождения от управляющих линий (vty или con) до методов аутентификации, во второй — сами способы аутентификации.

Но обо всем по порядку.

Отсутствие aaa new-model


В данном случае речь идет о правой части схемы (см. рис. 1).



Рис. 3. Схема аутентификации без aaa new-model

Как уже было сказано, по умолчанию сервис aaa new-model выключен. Подключение к устройству может быть выполнено либо физически, путем подключения через консольный порт (line console 0) без ввода каких-либо учетных данных, либо через протокол TELNET (line vty). Причем в последнем случае, даже если задать IP-адрес на Cisco, получить доступ к устройству не получится ввиду отсутствия пароля (способ аутентификации “line”, см. рис. 3). Если пароль на линии vty задан, то устройство потребует от вас только ввести пароль, что существенно снижает безопасность подключения, так как для входа не требуется вводить логин; впрочем, тут все, конечно, зависит также от сложности пароля, который вы настроили.

При выполнении команды “login local” устройство, установив соединение, будет требовать ввести логин и пароль для входа.

Итак: в случае отсутствия aaa new-model максимум, которого вы можете требовать от Cisco IOS, — это использование пароля (способ аутентификации “line”) и использование логина и пароля из локальной базы данных (способ аутентификации “local”).



Рис. 4. Способы аутентификации без aaa new-model

Конфигурация aaa new-model


Преимущество конфигурации aaa в том, что она содержит множество методов аутентификации (в отличие от предыдущего случая). Включение aaa происходит путем добавления команды aaa new-model в режиме глобальной конфигурации. Далее предстоит выбор методов аутентификации. Все методы организуются в списки, которым присваивается либо значениеdefault, либо конкретное имя списка (list-name). Таким образом, на разные типы линий (aux, vty, con...) можно «повесить» разные методы аутентификации, разграничив доступ между пользователями.

Пример настройки aaa new-model и списков аутентификации:

Router(config)#aaa new-model
Router(config)#aaa authentication login {default | list-name} method1 [method2…]
Router(config)#line {vty | aux | con…} line-numbers
Router(config-line)#login authentication {default | list-name}

Методы


Как было сказано ранее, методов аутентификации в aaa довольно много. Попробуем перечислить наиболее распространенные:

Local — база данных логинов и паролей храниться на самом сетевом устройстве. Требует username {password | secret}.
Local-case — тот же самый метод, что и local, но чувствительный к регистру при ввде логина.
Enable — для аутентификации требуется enable{password | secret}.
Line — для аутентификации требуется пароль line (см. рис. 4 способ аутентификации “line”).
None — аутентификация не требуется, доступ к устройству предоставляется без ввода логина и пароля.
Group {tacacs+ | radius} — подключение серверов с установленным Tacacs+ (http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scftplus.html#wp1000899) или Radius (http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scfrad.html#wp1000902)для расширения возможностей конфигурации aaa.
Group {group-name} — позволяет настроить группу серверов с установленным Tacacs+ или Radius или настроить частный сервер группы.

Наиболее интересным методом аутентификации является group: он довольно часто встречается в средних и крупных компаниях.

Ниже представлен пример настройки метода group, который обязательно должен реализовываться в совокупности со списками аутентификации.

Пример добавления группы серверов и частного сервера Radius:

Router(config)#aaa authentication login default group servradius1
Router(config)#aaa group server radius servradius1
Router(config-sg-radius)#server 192.168.1.1
Router(config-sg-radius)#server 192.168.1.2
Router(config-sg-radius)#server 192.168.1.3
Router(config-sg-radius)#server-private 192.168.1.10

На этом примере видно, что настроены три Radius-сервера. Но возникает вопрос: как они будут работать? Первое, что приходит в голову: скорее всего, они будут работать по очереди: при недоступности 192.168.1.1 идет обращение к 192.168.1.2 и т. д. Но это не так. В данном примере допущена ошибка: 192.168.1.1, 192.168.1.2, 192.168.1.3 настроены некорректно, а поэтому в аутентификации использоваться не будут. В данной конфигурации не хватает команды Router(config)#radius-server host для каждого из серверов. Более подробное описание настроек можно найти на ресурсах вендора (например: http://www.cisco.com/en/US/docs/ios/12_2/security/configuration/guide/scfrad.html). Схематично это можно представить следующим образом:



Рис. 5. Настройка аутентификации для метода group

Вот, собственно, и вся информация, которая поможет вам успешно настроить аутентификацию на вашем сетевом устройстве. Следуйте схеме, и если ваши настройки привели к “true”, значит будет счастье, а если к “false” — посмотрите на конфигурацию внимательно: возможно, где-то допущена ошибка или доступ к устройству возможен без ввода логина и пароля (способ аутентификации “none”). Надеюсь, статья оказалась полезной и помогла вам разобраться в нюансах конфигурации aaa.
Мы же, в свою очередь, всегда стараемся автоматизировать такие сложные проверки. Как пример — результат проверкиMaxPatrol относительно службы ААА:



Рис. 6. Статус требования



Рис. 7. Результаты требования относительно службы ААА

или введите имя

CAPTCHA
KOnst
07-09-2013 23:36:44
Ко всему сказанному хочетца добавить то, что при настройке aaa, в частности tacacs или radious IOS не могет почему та шифровать пароли по-нормальному, только в type 7 (типа tacacs-server key 7 113918160405041E007B и никак иначе...). Т.е. дамп трафика tacacs(radius) + конфа циски = полный доступ (конфу циски можно слить например с какого-нить (t)ftp-сервера, куда она возможно заливается периодически) И есчо... Если мне не изменяет память, пакеты tacacs (radius) шифруются через однократный md5, не как в IOS 1000хMD5, а именно однократно ! Т.е. дамп трафика+radeon HD699+Oclhashcat = перебор со скоростью 7 миллиардов пасс/сек или по словарю с очень удобной гибридкой. Вот такая вот, блин, аутентификация...
0 |
Потому что
09-09-2013 08:31:29
>не могет почему та шифровать пароли по-нормальному Пароль нужен в открытом виде для аутентификации на сервере radus/tacacs. Поэтому и нельзя шифровать. Разве что какой-то "мастер-ключ" вводить внешний от конфига.
0 |