Давайте рассмотрим устройство Cisco и вспомним, как мы входили в такое устройство. Каждый раз для того, чтобы залогиниться в устройстве Cisco, мы настраивали пароль на линии VTY, которые предоставляют доступ к устройству через Telnet. Это означает, что по умолчанию IOS включает команду login и начинает искать пароль line VTY.
Если ввести login local, система начнет искать локальный пароль, настроенный на имя пользователя. Так что если вы войдете в режим глобальной конфигурации и наберете имя пользователя «Имран» и пароль «Имран», а затем зайдете в line VTY и наберете login local, система будет искать локальный пароль, то есть имя пользователя и пароль, который вы установили.
Проблема состоит в том, что обе эти конфигурации настраиваются на устройстве локально, и если у вас в организации тысяча пользователей, каждое из таких устройств должно будет помнить тысячу имен пользователей и паролей. Если у вас 1000 устройств, то каждое из них будет иметь 1000 имен пользователей и 1000 паролей. Представьте, что значит установить такое количество паролей на тысяче или даже на сотне устройств.
Критерии безопасности требуют, чтобы пароли часто менялись. Если вы должны поменять пароль для 1000 пользователей, вам нужно зайти в каждое из сотни или тысячи устройств и проделать это вручную. Это невообразимо огромный объем работы.
Существует оптимальный способ централизованной настройки устройств Cisco. Это семейство протоколов ААА (Authentication, Authorization, Accounting), обеспечивающее выполнение 3-х функций — аутентификацию, авторизацию и учет.
Предположим, у нас имеется центральный сервер, на котором расположена база данных имен пользователей и паролей, и ваш свитч Cisco. Когда пользователь пытается залогиниться на устройстве Cisco, свитч не ищет эти данные в своей памяти, а пытается соединиться с ААА-сервером. Найдя там данные пользователя, он разрешает ему вход в систему.
Если у нас имеется тысяча таких устройств, доступ к ним настраивается через ААА-сервер, и независимо от того, откуда вы собираетесь войти в такое устройство, оно всегда будет проверять ваше имя пользователя и пароль на этом сервере. Если вам нужно изменить пароль, вы входите на сервер, выполняете настройку, и её параметры применяются ко всем устройствам вашей сети.
ААА в основном использует два протокола – RADIUS и TACACS+.
RADIUS – это протокол удаленной аутентификации и авторизации пользователей, описанный рабочими предложениями RFC 2865-2866. Рабочие предложения собираются под эгидой открытой организации «Общество интернета», когда каждый человек может внести свои предложения по улучшению работы какого-либо программного продукта. Это достаточно старый протокол, разработанный ещё в 1991 году. Он в основном используется для аутентификации сетевых пользователей и использует UDP-порты 1645/1646, а у более новых устройств — порты 1812/1813.
RADIUS поддерживает 3 функции: аутентификацию, исполнительную авторизацию EXEC Authorization и исполнительный учет EXEC Accounting. Аутентификация дает вам возможность получить или не получить доступ к устройству, а авторизация позволяет или запрещает совершать определенные действия, например, вводить на устройстве определенные команды. Она зависит от уровня предоставленных вам привилегий, то есть определяет, что вы можете делать после того, как получите доступ к устройству. Учет означает запись всех команд, введенных вами на устройстве, благодаря чему контролируется соблюдение предоставленных вам полномочий.
TACACS+ — это сеансовый протокол, по которому центральный ААА-сервер принимает решение, разрешать или не разрешать пользователю подключаться к сети. Это усовершенствованная версия проприетарного протокола Cisco TACACS, являющаяся открытым, общедоступным стандартом. Он в большей степени используется для управления устройствами пользователей, например, можете ли вы подключиться к принтеру и что сможете делать с этим принтером.
Этот протокол использует TCP и порт 49. Если у вас между устройством и ААА-сервером имеется файрвол, соответствующий порт RADIUS или TACACS+ нужно поместить в исключения, то есть открыть к нему доступ UDP или TCP трафика. Поэтому очень важно знать номер порта для обеспечения работы этих протоколов.
TACACS+ поддерживает больше функций, чем RADIUS, например, командную авторизацию. В исполнительной авторизации EXEC Authorization сначала нужно указать уровень привилегий пользователя, например Priv 15 или Priv10, то есть указать, например, какие команды может использовать пользователь, авторизированный уровнем Priv 10. В TACACS+ используется более детальный уровень авторизации, то есть имеете возможность указать конкретные команды, которые может или не может применять пользователь, например, установить, что пользователь Priv 15 не может использовать команды управления протоколом маршрутизации. То есть на уровне Command Authorization можно задать, какие именно команды может использовать пользователь и какие команды ему запрещено использовать.
Аналогичная ситуация с функцией Command Accounting – можно точно настроить, какие команды пользователя нужно записывать в логе, а какие игнорировать.
Рассмотрим типичный свитч. Женщина на картинке работает с ноутбуком, подключенным к сетевой розетке. Если вы помните, в одном из видеоуроков ICND1 мы обсуждали PortSecurity, который блокирует порт в зависимости от MAC-адреса устройства.
Например, если для конкретного порта указан конкретный MAC-адрес, то при подключении к этому порту устройства с другим MAC-адресом порт будет заблокирован. Это бывает не слишком удобно, потому что на практике иногда нужно предоставить доступ пользователю, MAC-адрес устройства которого не имеет права работать с данным портом, а каждый раз настраивать разрешенные MAC-адреса слишком сложно. Вы не хотите, чтобы люди злоупотребляли этим портом, но в то же время не хотите запрещать доступ всем подряд. В этом случае нужно применить протокол EAP стандарта 802.1Х – это фреймворк аутентификации в сетях p2p.
Если у вас имеется физический порт свитча, предположим, сетевая розетка соединена патч-кордом с 48-портовым свитчем, то вы можете настроить каждый из этих портов на работу с 802.1Х.
Когда вы это проделаете, любой трафик DHCP, TFTP, HTTP и т.д. будет блокироваться, кроме трафика по специальному протоколу EAPoL, или Extensible authentication protocol over LAN. Этот трафик поступит на ААА-сервер, и если имя пользователя и пароль соответствуют уровню доступа, порт свитча будет открыт. После этого весь запрещенный до этого трафик DHCP, TFTP, KRB5, HTTP будет разрешен для отправки адресату. Если же имя пользователя и пароль не соответствуют условиям доступа, ничего не изменится – весь трафик, кроме трафика EAPoL, будет по прежнему запрещен для данного порта. Это самое простое объяснение того, что делает стандарт 802.1Х. Давайте рассмотрим процесс работы этого стандарта, который состоит из 3-х компонентов.
Первый компонент – это аппликант, пользователь, которому нужно пройти сетевую аутентификацию. Обычно под Supplicant подразумевают специальное программное обеспечение, которое имеется в составе многих современных ОС. Если ваша ОС его не содержит, вам понадобится установить такую программу. Она позволяет осуществить подключение к доступному порту свитча по протоколу 802.1Х. Свитч является вторым компонентом под названием «аутентификатор». Он расположен между аппликантом и третьим компонентом – сервером аутентификации. Сначала весь трафик пользователя блокируется портом свитча, потому что устройство даже не имеет IP-адреса, ведь все общение с аутентификатором осуществляется только по протоколу EAPoL.
Программное обеспечение Supplicant создает EAPoL – фрейм и отправляет его аутентификатору. Тот создает новый IP-пакет. Если используется RADIUS, то это будет UDP-пакет, если TACACS+, то TCP-пакет, в который помещается EAPoL – фрейм. Пакет отправляется серверу аутентификации, тот проверяет правильность логина и пароля и разрешает или запрещает работу данного пользователя.
Рассмотрим процесс более подробно. Все начинается со стартового сообщения устройства, однако не все устройства его отправляют. Но даже если устройство пользователя подсоединяется к порту без такого сообщения, аутентификатор все равно отправляет ему запрос идентификации Identify Request. В зависимости от настроек аутентификатор Cisco отправляет такой запрос каждые несколько минут или секунд. Если же устройство отправляет Start message, идентификационный запрос свитча будет отправлен немедленно. Далее устройство пользователя отправляет идентификационный ответ Identify Response, который содержит имя пользователя, например, Имран, и этот фрейм поступает к аутентификатору. Тот берет имя «Имран», вкладывает его в IP-пакет и отправляет его серверу аутентификации. Это сообщение называется Access Request, или запрос доступа. Сервер говорит: «Отлично, я получил имя пользователя «Имран», пришлите мне теперь его пароль», и отсылает соответствующее требование доступа Access Challenge аутентификатору.
Не беспокойтесь по поводу углубленного изучения данного процесса, потому что тематика стандарта 802.1Х в курсе ICND2 носит описательный характер.
Аутентификатор отсылает соответствующий запрос аппликанту, и тот высылает ему пароль. Здесь имеются нюансы: пользователь не может отослать серверу пароль в виде простого текстового сообщения, здесь необходимо туннелирование с использованием шифрования. В данном случае Supplicant должен использовать TLS или PIP – Protected IP, либо протокол проверки подлинности MS-CHAP.
Итак, устройство пользователя отсылает пароль по зашифрованному туннелю, и он поступает серверу аутентификации внутри запроса доступа Access Request. Если пароль правильный, сервер отсылает обратно разрешение доступа Access Accept. Если проверка прошла успешно, аутентификатор отсылает пользователю сообщение Success, после чего порт открывается для пропуска трафика. Таков процесс перевода порта из состояния фильтрации, или shutdown, в состояние open по протоколам стандарта сетевой аутентификации 802.1Х. Можно сказать, что данный фреймворк предоставляет вам более высокий уровень безопасности доступа к сети, чем стандартный PortSecurity.
Данный стандарт широко используется для беспроводных устройств доступа, когда несколько ноутбуков подсоединяются к такому устройству для доступа к сети. Беспроводное устройство, или точка доступа, соединяется с сервером аутентификации и организует сетевой доступ пользователей.
В зависимости от используемого протокола, RADIUS или TACACS+, устройствам пользователя разрешается работать с определенной VLAN. Например, после аутентификации ноутбук 1 может использовать для связи VLAN 100, а ноутбук 2 – VLAN 200. Все эти параметры можно настроить с помощью упомянутых протоколов аутентификации по стандарту 802.1Х.
Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас:Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).
Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?
Комментариев нет:
Отправить комментарий