Cisco asa ips настройка
Cisco ASA является аппаратным межсетевым экраном с инспектированием сессий с сохранением состояния (stateful inspection). ASA умеет работать в двух режимах: routed (режим маршрутизатора, по умолчанию) и transparent (прозрачный межсетевой экран, когда ASAработает как бридж с фильтрацией). Мы познакомимся с работой в первом режиме и далее везде будем его подразумевать, если явно не указан иной режим.
В режиме routed на каждом интерфейсе ASA настраивается ip адрес, маска, уровень безопасности (security-level), имя интерфейса, а также интерфейс надо принудительно «поднять», так как по умолчанию все интерфейсы находятся в состоянии «выключено администратором». (Исключения бывают: иногда АСАшки приходят уже преднастроенными. Это характерно для модели 5505. В этом случае, как правило, внутренний интерфейс с названием inside уже настроен как самый безопасный и поднят, на нем работает DHCP сервер, задан статический адрес из сети 192.168.1.0/24, внешний интерфейс с названием outside тоже поднят и сам получает адрес по DHCP и настроена трансляция адресов из сети за интерфейсом inside в адрес интерфейса outside. Получается такой plug-n-play :))
Параметр «уровень безопасности» (security level) – это число от 0 до 100, которое позволяет сравнить 2 интерфейса и определить, кто из них более «безопасен». Параметр используется качественно, а не количественно, т.е. важно только отношение «больше-меньше». По умолчанию трафик, идущий «наружу», т.е. с интерфейса с большим уровнем безопасности на интерфейс с меньшим уровнем безопасности, пропускается, сессия запоминается и обратно пропускаются только ответы по этим сессиям. Трафик же идущий «внутрь» по умолчанию запрещен.
Параметр «имя интерфейса» (nameif) в дальнейшем позволяет использовать в настройках не физическое наименование интерфейса, а его имя, которое можно выбрать «говорящим» (inside, outside, dmz, partner и т.д.). По идее, как утверждает сама cisco, имя не зависит от регистра, (не case sensitive), однако на практике ряд команд требует соблюдения регистра, что довольно неудобно. Характерный пример: применение crypto map на интерфейс требует точного написания названия интерфейса. Название интерфейса продолжается нажатием кнопки TAB, т.е. можно набрать начало названия и табулятором продолжить его до конца, если набранное начало однозначно идентифицирует интерфейс.
Такая настройка интерфейсов характерна для всех моделей ASA, кроме ASA 5505. В модели 5505 реализован встроенный 8мипортовый L2/L3 коммутатор. IP адреса в модели 5505 задаются на логических интерфейсах
Сами же физические интерфейсы L2 сопоставляются VLANам.
Таким образом, межсетевое экранирование возникает между логическими interface vlan.
Как правило, уровень безопасности интерфейсов подбирается таким образом, чтобы максимально соответствовать логической топологии сети. Сама топология представляет из себя зоны безопасности и правила взаимодействия между ними. Классической схемой считается присвоение разным интерфейсам разных уровней безопасности.
Никто не запрещает сделать уровень безопасности на разных интерфейсах одинаковым, однако по умолчанию обмен трафиком между такими интерфейсами запрещен. Такой трафик можно сознательно разрешить, дав команду
Однако надо понимать, что между интерфейсами с одинаковым уровнем безопасности не возникает межсетевого экранирования, а только маршрутизация. Поэтому такой подход применяется для интерфейсов, относящихся к одной и той же логической зоне безопасноcти (например, 2 локальные сети пользователей, объединяемые при помощи ASA)
Маршрутизация
Ну куда же без неё! Как у любого маршрутизатора (ASA тоже им является, т.к. использует таблицу маршрутизации для передачи пакетов) сети, настроенные на интерфейсах, автоматически попадают в таблицу маршрутизации с пометкой «Присоединенные» (connected), правда при условии, что сам интерфейс находится в состоянии «up». Маршрутизация пакетов между этими сетями производится автоматически.
Те сети, которые ASA сама не знает, надо описать. Это можно сделать вручную, используя команду
Указывается тот интерфейс, за которым надо искать next-hop, т.к. ASA сама не делает такого поиска (в отличие от обычного маршрутизатора cisco). Напоминаю, что в таблицу маршрутизации попадает только один маршрут в сеть назначения, в отличие от классическим маршрутизаторов, где может использоваться до 16 параллельных путей.
Маршрут по умолчанию задается таким же образом
Если ASA не имеет записи в таблице маршрутизации о сети назначения пакета, она пакет отбрасывает.
Если возникает задача сделать запасной статический маршрут, который будет работать только при пропадании основного, то это решается указанием так называемой Административной дистанции маршрута. Это такое число от 0 до 255, которое указывает, насколько хорош метод выбора маршрута. Например, статическим маршрутам по умолчанию сопоставлена AD 1, EIGRP – 90, OSPF – 110, RIP – 120. Можно явно указать AD для запасного маршрута больше, чем AD основного. Например:
Но в этой ситуации есть один важный вопрос: как заставить «пропасть» основной маршрут? Если физически упал интерфейс все очевидно – само получится, а если интерфейс поднят, а провайдер погиб? Это очень распространенная ситуация, учитывая, что на ASA сплошной ethernet, который физически падает крайне редко.
Для решения этой задачки используется технология SLA. Она весьма развита на классических маршрутизаторах, а на ASA с версии 7.2 внедрили только самый простой механизм: доступность некоторого хоста по протоколу icmp. Для этого создается такая «пинговалка» (sla monitor)
Далее, её необходимо запустить, указав время начала (есть возможность запустить «сейчас») и окончания работы (можно задать работу до бесконечности)
Но и это ещё не все. Надо создать «переключатель» (track) который будет отслеживать состояние «пинговалки».
Не спрашивайте, почему привязка пинговалки производится ключевым словом rtr – это ошметки несогласованности настроек на маршрутизаторах cisco. К слову, на самих маршрутизаторах такое несоответствие уже починили, а вот на ASA ещё нет.
И вот теперь все готово, чтобы применить эту конструкцию к статической маршрутизации
Теперь, пока пингуемый хост доступен, track будет в поднятом (чуть не написал в «приподнятом» :)) состоянии и основной маршрут будет в таблице маршрутизации, но как только связь пропадет, через заданное количество потерянных пакетов (по умолчанию пакеты посылаются раз в 10 секунд и ждем пропадания трех пакетов) track будет переведен в состояние down и основной маршрут пропадет из таблицы маршрутизации, а пакеты будут отправляться по запасному пути.
Приведу пример конфига двух дефолтных маршрутов через разных провайдеров с проверкой доступности основного провайдера:
Динамическая маршрутизация на ASA возможна по протоколам RIPv1,2, OSPF, EIGRP. Настройка этих протоколов на ASA очень похожа на настройку маршрутизаторов cisco. Пока динамической маршрутизации касаться в этих публикациях не буду, хотя если дойдут руки и будет интерес – напишу отдельную главу.
Удаленное управление
Понятно, что при нынешнем развитии сетей передачи данных было бы неразумно не внедрять удаленное управление межсетевыми экранами. Поэтому ASA, как и большинство устройств cisco, предоставляет несколько способов удаленного управления.
Самое простое и небезопасное – telnet. Чтобы предоставить доступ на ASA по телнету необходимо явно указать, с каких хостов и сетей и на каком интерфейсе разрешен доступ, а также необходимо задать пароль на телнет командой passwd:
В целях безопасности работа по телнету на самом небезопасном (с наименьшим уровнем безопасности в рамках данной ASA) интерфейсе заблокирована и обеспечить работу на этом интерфейсе по телнету можно только в том случае, если он приходит через IPSec туннель.
Более безопасный доступ к командной строке обеспечивается протоколом ssh. Однако, для обеспечения доступа по ssh кроме явного указания того, с каких хостов можно заходить для управления, необходимо также задать RSA ключи, необходимые для шифрования данных о пользователе. По умолчанию для подключения по ssh используется пользователь pix и пароль, задаваемый командой passwd (пароль на telnet).
Как правило, на ASA начиная с версии 7.2 имя домена уже задано (domain.invalid) и дефолтные ключи сгенерированы, однако как минимум это надо проверить
Наличие хотя бы каких то ключей RSA уже позволяет работать по ssh. Но можно дополнительно создать и недефолтовые ключевые пары. Для этого надо указать явно имя ключевой пары
Чтобы удалить ключевую пару (или все пары) используется команда
Совет: после любых действий с ключевыми парами (создание, удаление) обязательно сохраняйтесь. Для этого можно использовать стандартные команды cisco
или короткий вариант последней команды
Если больше ничего не настраивать, то доступ будет обеспечен без указания пользователя. Если же был указан пароль на привилегированный режим
то при подключении надо в качестве пароля указывать именно его, не указывая пользователя.
Надо проверить, что во флеше ASA лежит файл ASDM, соответствующий используемой ОС.
При работе с ASDM используется java и верно следующее: если вы используете ОС версии 7.Х, то ASDM нужен версии 5.Х и java 1.5. Если же используется ОС 8.Х, то ASDM нужен версии 6.Х и java версии 1.6. К чести разработчиков и радости настройщиков, ASDM версии 6 работает не в пример лучше и быстрее версии 5.Х. Чья тут заслуга: java или cisco или обоих – не знаю.
Возникает резонный вопрос: а если хочется использовать не дефолтовые правила доступа, а явно указывать, откуда брать пользователя? Для этого используются команды (console — ключевое слово)
Если используется только локальная база данных пользователей, то в правиле аутентификации можно указывать только LOCAL (проверьте, что хотя бы один пользователь создан, иначе можно себе заблокировать доступ), а если требуется использовать внешние базы, доступные по протоколам TACACS+, RADIUS или LDAP, то такие сервера надо предварительно настроить
Локальная база пользователей задается командой
Доступ по ASDM возможен только от имени пользователя с уровнем привилегий 15 (максимальный, означает, что пользователю можно все настраивать)
Также локальным пользователям можно задать ряд атрибутов, используя команду
Используя такие настройки вы разрешите пакетам ходить из непосредственно присоединенной сети за интерфейсом inside наружу. Снаружи будут приходить только ответы по сессиям (tcp и udp), открытым изнутри, т.к. напомню по умолчанию трафик идущий «внутрь» весь запрещен. Как его разрешить поговорим в следующей части.
1. Проверка модуля и сброс пароля
Для начала посмотрите общую информацию о модуле, его текущее состояние и версию ПО. Команды выполняются из командной строки Cisco ASA:
Логин/пароль по умолчанию: cisco/cisco. Ну а если не подходит, то его легко сбросить:
Обратите внимание, что на более старых версиях ПО (5.0 .. 6.0) параметра password-reset нет. И для восстановления пароля придётся делать сброс всего модуля (reset).
После сброса пароля мой модуль ушел в ребут, нужно немного подождать. Текущий статус загрузки модуля можно контролировать той же командой show module 1
Подключитесь к модулю:
При входе с паролем по умолчанию создайте новый пароль.
2. Первичная настройка, управление и лицензирование
3. Пропускаем весь трафик через IPS
Последняя строка может выдать ошибку, подобную вот этой:
ERROR: Policy map global_policy is already configured as a service policy
Это означает, что у Вас уже есть политика, которую вы применили глобально, на все интерфейсы. В моём случае эта политика называется global_policy. Решить проблему можно так:
1. Вместо создания новой политики policy-map my-ips-policy использовать ту, которая уже есть policy-map global_policy.
2. Использовать политику не глобально, а только для определённого интерфейса:
При назначении трафика AIP-SSM использовались два параметра: inline и fail-close.
Первый параметр указывает режим подключения IPS:
Второй параметр определяет поведение Cisco ASA при недоступности модуля IPS (отключение, перезагрузка, выход из строя):
Используя описанную здесь конфигурацию, вы перенаправляете весь трафик через IPS и в случае его недоступности весь трафик блокируется.
4. Выборочная проверка трафика
В предыдущем примере проверялся весь трафик. Где было указано что весь? В первой и последней строке. Первая строка добавляет в список доступа весь трафик, а последняя применяет политику на все интерфейсы (glogal).
Если вам не нужно проверять весь трафик, то нужно указать какой трафик проверять и на каких интерфейсах. В следующем примере на IPS передаётся весь трафик из сети 10.75.20.0/24 с интерфейса inside, кроме трафика, предназначенного сети 192.168.1.0/24.
5. Настройка действий IPS при событиях
Какие действия можно переопределять?
6. Проверка работы
Остаётся убедиться, что IPS задействован и проверяет трафик.
Для начала проверьте, что Cisco ASA прогоняет нужные пакеты через модуль IPS. Это можно сделать генерируя пакеты при помощи packet-tracer. Например, генерация пакета из внешней сети на внешний интерфейс для www-сервера в dmz (нужен любой пакет, который будет направлен через IPS, согласно вашим access-list):
а также статистику:
[0] Go to the command prompt without saving this config.
[1] Return to setup without saving this config.
[2] Save this configuration and exit setup.
[3] Continue to Advanced setup.
Enter your selection[3]: 2
Остальные настройки правьте по желанию – на работу модуля они не влияют.
Начальные настройки модуля приведены в разделе Configuration>Sensor Setup
В разделе Configuration>Interfaces>Bypass/CDP mode поставьте значения Bypass Mode Off/Drop CDP Packet соответственно. При этом модуль перейдёт в режим принудительного инспектирования траффика, и если он по каким-либо причинам отключён, то передача данных через ASA блокируется.
Для перенаправления траффика, подлежащего инспекции, на модуль IPS, используются карты политик, аналогичные QoS. В данному примере мы направляем на модуль весь траффик с внешнего Outside интерфейса.
access-list IPS extended permit ip any any
match access-list IPS
ips inline fail-close
service-policy IPS interface Outside
Проверьте, что карта политик отлавливает пакеты:
IPS: card status Up, mode inline fail-close
packet input 3651827, packet output 3651988, drop 0, reset-drop 0
В работе модуля используются четыре параметра, которые расположены в разделе Configuration>Policies:
Имя виртуального сенсора virtual-sensor, определения (список) сигнатур signature-definition, набор действия при обнаружении атак event-action-rules, а так же сервис обнаружения аномалий anomaly-detection-name. Всё это сделано с той целью, чтобы при многоконтекстной конфигурации можно было назначать на контексты различные наборы сигнатур и правила инспекции. В случае отсутствия контекстов, просто подредактируйте правила по умолчанию.
От вас лишь требуется подредактировать (включить для порядка все) список сигнатур в разделе signature-definition и уточнить действия при совпадении с ними в разделе event-action-rules:
Финальная конфигурация модуля:
! Current configuration last modified Thu Nov 01 06:14:03 2012 ! ------------------------------ ! Version 7.1(6) ! Host:
Желательно, чтобы на уровне организации как можно меньше людей знало о том, что эти устройства вообще есть в сети компании. В идеальном варианте об этом должны знать только те сотрудники, которые занимаются информационной безопасностью.
Также есть встроенные средства обеспечить безопасность модуля Cisco IPS, настройку которых мы и рассмотрим. Более детальную информацию о схеме cisco ips, cisco ips принцип работы вы сможете найти на сайте производителя или в официальной документации.
Настраиваем доступ пользователей
Настройка Cisco IPS предусматривает четыре пользовательских роли с разными правами доступа.
Создаем нового пользователя
Enter new login password : **********
Re-enter new login password : **********
Просмотр всего списка пользователей устройства включается командой:
Результат будет выглядеть примерно так:
CLI ID User Privilege
* 12528 admin administrator
Удаляем пользователя
Ненужный пользователь удаляется командой no username:
Обратите внимание, что аккаунт пользователя cisco (он встроен) удалить этой командой не получится, его можно только заблокировать командой no password, что мы и рекомендуем сделать:
Если пользователь заблокирован, при выводе списка пользователей show users all его логин будет показан в круглых скобках.
CLI ID User Privilege
* 12528 admin administrator
Меняем пользователю пароль
Используем команду password и имя пользователя. В примере задаем новый пароль для пользователя под именем test и подтверждаем его.
Enter new login password : *********
Re-enter new login password : *********
Настраиваем правила для паролей
Вы можете задать:
- минимальное число символов в пароле
- Сколько должно быть символов верхнего и нижнего регистра
- Сколько цифр и специальных символов
- Сколько будет запомнено старых паролей (чтобы предупреждать пользователей, что такие пароли уже использовали)
Настраиваются эти требования в отдельном режиме конфигурирования, специально для службы аутентификации:
Как прервать пользовательскую сессию, которая активна в текущий момент
Если пользователь в списке помечен “ * “, значит, у него сейчас активна сессия
CLI ID User Privilege
* 12528 admin administrator
12167 soc viewer
Настраиваем уровень доступа для пользователя
Если требуется изменить привилегии одному из пользователей:
Warning: The privilege change does not apply to current CLI sessions. It will be applied to subsequent logins.
Можно поменять уровень доступа даже пользователю cisco.
Внимание, если у пользователя, которому изменили права доступа, в это время активна сессия, изменения для него вступят в силу только после того как он завершит сессию и затем залогинится заново.
Конфигурируем узел в Cisco IPS
Настройки Cisco IPS позволяют перейти из global configuration mode непосредственно в режимы конфигурирования отдельных сервисов:
Ограничиваем доступ к защитному оборудованию по локальной сети
- Поместите IP-адрес интерфейса управления устройства в специально выделенную административную (management) виртуальную локальную сеть, в наибольшей степени закрытую файрволлами.
- Настраиваем для IPS его встроенный брандмауэр. Для начала переходим из режима настройки хоста в настройки сетевого доступа:
Просматриваем установки действующего в данный момент режима командой show settings. Пример ее работы:
host-ip: 10.0.1.50/24,10.0.1.1 default: 192.168.1.2/24,192.168.1.1
host-name: ids default: sensor
telnet-option: disabled default: disabled
access-list (min: 0, max: 512, current: 6)
ftp-timeout: 300 seconds <defaulted>
Если вы видите в нем подозрительные подсети или узлы, удалите их так:
Точно так же можете удалить и не подозрительные, принадлежащие к вашей сетевой инфраструктуре, которым просто не должен быть доступен управляющий интерфейс защитного устройства.
Задаем текст предупреждения при логине
Если вы хотите предупредить о чем-либо пользователей или потенциального взломщика (например, об криминальной ответственности), введите соответствующий текст:
Пользователь его увидит, когда попытается залогиниться.
Отключаем telnet
Этого требует безопасность и по умолчанию он отключен всегда, но если для каких-либо целей его все же включили, отключите его командой:
Автоматические обновления
Разберем это на примере update по SCP. Понадобится сервер обновлений на UNIX и на нем заблаговременно заведенная учетная запись для сенсора с максимально редуцированными правами.
Файрволы обеспечивают доступ по порту 22 от управляющих интерфейсов сенсора к update-серверу, в случае, если они находятся не в одной и той же подсети. Сотрудник ИТ-службы, которые непосредственно занимается администрированием IPS, скачиывает обновления и копирует файлы обновлений в назначенную папку, а IDS/IPS нужно настроить так, чтобы они через определенное время проверяли, есть ли обновления. Не забудьте на сервере обновлений включить поддержку SSHv1 в sshd_config.
Внимание! Во избежание трудностей не переименовывайте файлы, которые вы загрузили с сайта Cisco.
Не забудьте внести ssh-ключ сервера обновлений в список доверенных хостов сенсора, чтобы обновления по SCP работали без ошибок:
MD5 fingerprint is DE:0E:FE:AE:77:F9:4B:0D:69:49:D4:60:26:55:67:52
Bubble Babble is xulir-tyhoc-tehyb-dupez-byvat-tapiz-fepur-povok-sadem-luhyt-taxux
Would you like to add this to the known hosts table for this host?[yes]:
Теперь дело за непосредственной настройкой автообновления с сервера:
Дальше указываем папку с файлами обновлений, относительно пути /home/<username>, логин и пароль учетки Cisco IPS на сервере обновлений:
Задаем распорядок загрузки обновлений.
Вот в этом примере задано обновление каждые 24 часа:
Еще понадобится установить время обновления. К примеру, в 12 часов дня:
Если сенсоров несколько, желательно, чтобы они обновлялись каждый в свое время, а не все одновременно.
Если что-то пошло не так и требуется вернуться на прежнюю конфигурацию в CLI, в global configuration mode используйте команду downgrade:
Внимание! Согласно официальной документации Cisco, с помощью данной команды нельзя откатить до предыдущей Minor или Major версии.
Настраиваем время сенсора
Чтобы время Cisco IPS синхронизировалось с корпоративным NTP-сервером, выполните такие настройки:
Какая разница в минутах по отношению к Гринвичу:
Как официально называется ваш часовой пояс:
Задайте синхронизацию по NTP с сервером, на котором не нужна аутентификация:
А вот настройка автоперехода на летнее время и обратно:
Как сохранить изменения в конфигурации
Имейте в виду, что ваши изменения сохраняются не сразу, а только когда вы выходите из режима конфигурации узла в глобальную конфигурацию:
Настраиваем SNMP
В базовых настройках по умолчанию эта возможность деактивирована. Но этот протокол может понадобиться, чтобы промониторить и проанализировать работу устройства, поэтому рассмотрим, как его включить и применить.
Внимание! Доступ по SNMP-протоколу дается сразу не только для чтения, но и для записи, что небезопасно. К тому же, нет отдельного списка доступа, используются общие списки контроля доступа из настроек service host.
Обеспечивать безопасность предлагаем так:
Примерно вот так выглядит базовая настройка:
Настраиваем web-server
Есть два способа обеспечить его безопасность: включить tls (активно по умолчанию) и изменить порт с 443 по умолчанию на какой-то другой:
Настраиваем ведение логов
Каждое системное событие заносится в логи как warning, если оставить настройки по умолчанию.
Если необходимо разобраться в возникшей проблеме и получить логи, сконфигурируйте service logger. Только будеть аккуратны, чтобы не привести к перегрузке системы.
Надеемся, что статья о настройке возможностей Cisco IPS была для вас полезна.
В заключение хотим предупредить, что техподдержка Cisco Firepower IPS прекращается. Рекомендуем рассмотреть возможность перехода на новые ASA серии 5500-X.
обзоры сервисов раз в 2 недели.
Расскажем о своем опыте по администрированию и настройке DHCP Relay в Cisco, подключении Cisco IP phone в разрыв кабеля между коммуникатором и компьютером.
Пошаговые инструкции по установке и обновлению модуля Fire Power на Cisco ASA 5506-X для повышения надежности защиты информации.
Установка и настройка мониторинга Zabbix 2.2, 2.4, 3.0, 3.2 для Windows, Linux. Zabbix - возможность отслеживания состояние серверов, сетевого оборудования и различных сетевых сервисов, оперативное реагирование и устранение инцидентов, самым обеспечивая бесперебойность работы ИТ-инфраструктуры компании.
Поручив нам IT аутсорсинг обслуживания компьютерного и сетевого оборудования, вы получите в свое распоряжение действительно высококвалифицированных специалистов и при этом сократите затраты на ИТ, как минимум, на 30-40%
Читайте также: