Архив рубрики: Network eqipment: Cisco

Настройка оборудования Cisco

Cisco ME 3400: Почему не ходит трафик между двумя портами

Кратко суть:

В цискосвитчах МЕ-серии (metro-ethernet) есть три типа портов: uni, nni и eni.

  • uni — user-network interface — для подключения конечных устройств (ПК, IP-телефоны)
  • nni — network node interface — для подключения роутеров и коммутаторов
  • eni — enhanced network interface — тоже для подключения роутеров и коммутаторов, но с дополнительными возможностями, такими, как: CDP, STP, LACP и т.д.

Так вот, по умолчанию, в 10/100-мегабитных портах установлен режим uni, а в аплинковых портах (SFP-шных 1G, например) — режим nni. И главная соль здесь вот где:

— uni порты могут передавать трафик только в nni.

Т.е. два устройства, включены в соседние 100М-порты одного коммутатора, находящиеся в одном влане не видят друг друга! и не могут обмениваться между собой информацией.

Решение проблемы:

установить два порта в режим nni (или комбинация uni+nni тоже будет работать)

Тут также стоит заметить, что если у вас на циске образ «metro base» или «metro access», то сконфигурить в качестве nni можно только 4 порта, для «metro IP access» таких ограничений нет.

Не судите строго, возможно, для кого-то такие заковырки в настройке (типа так реализовывается секьюрность) являются очевидными, но я с Метро-эзернет свичами сталкиваюсь впервые.

Cisco: L2TP-IPSEC на Cisco 2811

http://pro-voip.com.ua cisco

L2TP создает туннель между двумя точками — в нашем случае (Remote Access VPN) клиента и сервера — но не производит шифрование. Для обеспечения шифрования данных, передаваемых в туннеле L2TP, используем IPSec.

 

 

http://pro-voip.com.ua cisco l2tp ipsec

 

 

Настройка L2TP

Алгоритм поднятия L2TP-туннеля на Cisco почти такой же, как алгоритм поднятия PPTP-туннеля, отличается только сам протокол — вместо pptp, указываем l2tp, что вполне логично.

1. vpdn
— глобально включаем vpdn:

2. vpdn-group
— создаем и настраиваем vpdn-группу:

3. interface virtual-template
— создаем и настраиваем шаблон виртуального интерфейса:

4. ip local pool
— создаем пул адресов, которые будут выдаваться при поднятии туннеля:

5. username
— создаем пользователя:

 

Настройка IPSec

IPSec — это не протокол, а стандарт, состоящий из 3 протоколов:

  • ESP (Encapsulating Security Payload)  шифрует данные
  • AH (Authentication Header) отвечает за аутентификацию источника и проверку целостности данных
  • IKE (Internet Key Exchange protocol) используется для согласования параметров и создания защищенного туннеля

Процесс согласования параметров и создания туннеля происходит в 2 этапа — первая и вторая фаза IKE. В результате работы IKE создается 2 туннеля — ISAKMP-туннель и, собственно, защищенный туннель для передачи данных. ISAKMP-туннель после второй фазы IKE не разрывается, он служит для обновления ключей шифрования основного канала (ключи обновляются каждые N секунд, время обновления можно задать в настройках isakmp policy командой lifetime)

 

При первой фазе IKE стороны «меряются» ISAKMP-полисями, поэтому первым делом…

1. crypto isakmp policy
— создаем ISAKMP policy

ISAKMP policy используется для создания ISAKMP Tunnel при первой фазе IKE. Уже по ISAKMP туннелю стороны договариваются об SA (Security Association) основного шифрованого канала (метод шифрования, ключи). Создание второго туннеля уже для шифрования данных — это вторая фаза IKE.

Чем меньше номер policy, тем она приоритетнее. Если сторонам не удалось согласовать параметры для построения ISAKMP туннеля, используя политику, например, 10, то они переходят к согласованию, используя политику 20 и т.д.

  • номер политики — 10
  • алгоритм шифрования — 3des
  • метод аутентификации — pre-shared keys
  • задаем длину ключа — Diffie-Hellman (DH) группа 2 — 1024 bit
  • алгоритм хеширования — md5
  • время жизни ключа шифрования — 3600 сек — 1 час, после истечения lifetime ключ меняется

 

2. crypto isakmp key
— создаем pre-shared key, который используется для создания ISAKMP-туннеля:

Смотрим параметры новосозданной ISAKMP-полиси:

 

При второй фазе IKE для создания туннеля для шифрованых данных стороны «меряются» transform-set’ами

3. crypto ipsec transform-set
— cоздаем transform-set  — набор протоколов, которые поддерживает сторона для установления IPSEC. transform-set определяет, как будут шифроваться данные:

Есть два режима работы IPSec:

  • туннельный (он включен по умолчанию) — шифруются данные вместе с ip-заголовками
  • транспортный — шифруются только данные

Для работы совместо с L2TP нам нужен транспортный режим, что мы и задаем в настройка transform-set’a командой mode transport

 

4. crypto dynamic-map
— создаем динамическую карту шифрования, назовем ее, например, 3DES-MD5-DYNMAP, и к ней привязываем transform-set:

5. crypto-map

— создаем статическую карту шифрования, связываем динамическую карту шифрования со статической:

6. interface
— привязываем статическую карту шифрования к интерфейсу:

 

При подключении к L2TP/IPSec в VPN-клиенте помимо ip-адреса сервера, логина и пароля, нужно указать ключ (Shared Secret). Этот ключ мы задавали командой crypto isakmp key, в моем примере ключ cisco.

Cisco: PPTP-сервер на Cisco 2811

http://pro-voip.com.ua cisco

PPTP (Point-to-Point Tunneling Protocol) — туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети. (c) wiki

VPDN (Virtual Private Dialup Network)

Сценарий 1

Подключаемся к PPTP-серверу, получаем отдельный белый ip и с этим ip выходим в интернет.
Получается, что на каждое подключение — свой белый ip-адрес.
На стороне провайдера необходим маршрут в нашу сеть, которая выдается для PPTP.

 

 

cisco-pptp-scenario1

 

 

1. Включаем VPDN

2. Создаем VPDN-группу

Заходим в режим конфигурации VPDN-группы:

  • разрешаем входящие «dial-in» запросы
  • указываем протокол pptp
  • определяем шаблон, который будем использовать при создании виртуального интерфейса

3. Создаем virtual-template для VPDN-группы 

При подключении пользователя к PPTP-серверу создается Virtual-Access-интерфейс.  Virtual-Access-интерфейс клонируется с Virtual-Template-интерфейса (с шаблона).

Создаем шаблон virtual-template и настраиваем параметры будущего виртуального интерфейса:

  • задаем инкапсуляцию ppp
  • список адресов, назначаемых виртуальному интерфейсу выделяется динамически с пула VPN-POOL-1
  • задаем реальный интерфейс, который клонируем в виртуальный
  • отключаем keepalive
  • задаем параметры ppp — шифрование (encrypt) и перечисляем возможные методы аутентификации (authentication)

4. Создаем пул адресов VPN

5. Создаем пользователя

  • включаем aaa new-model (если еще не включена)
  • ppp аутентификация и авторизация будет производиться с использованием локальной базы пользователей
  • добавляем пользователя

 


 

Сценарий 2

Если нет отдельной сети белых ip-адресов для VPN-пула, можно использовать сеть серых адресов + NAT

Подключаемся к PPTP-серверу, серый ip, NAT’им «серый» ip в «белый» и с «белым» ip выходим в интернет.
В итоге на все подключения — 1 «белый» ip.

 

 

cisco-pptp-scenario2

 

 

1. Включаем VPDN

2. Создаем VPDN-группу

3. Создаем virtual-template для VPDN-группы 

+ NAT

! NAT включаем на Virtual-Template -интерфейсе, а не на реальном FastEthernet0/0:

4. Создаем пул адресов VPN

5. Создаем пользователя

6. Завершаем настройку NAT

+ NAT

nat inside — виртуальный интерфейс
nat outside — реальный интерфейс Fa0/1

C помощью стандартного access-list 1 указываем какую сеть натить и в какой интерфейс:

 


 

Дополнение

Если настроить на Cisco оба вышеописаных сценария, Cisco ругнется, что у нас две VPDN-группы с одинаковой конфигурацией:

— указан один и тот же протокол — pptp

И правильно ругнется —  когда пользователь будет подключаться по PPTP, как циске выбрать, к какой группе этого пользователя прилепить — VPN-1 или VPN-2 ? Работать PPTP-сервер в таком случае будет, но будет активной только одна VPDN-группа — та, которая была создана первой, т.е. VPN-1.

Если все-таки нужно несколько групп, можно поступить следующим образом: для подключения к разным VPDN-группам нужно использовать разные ip-адреса интерфейсов cisco для pptp-сервера:

 

Cisco: Настройка привилегий пользователя

 

http://pro-voip.com.ua cisco

Здесь я хочу оставить заметку о том, как в Cisco добавить пользователя, который может выполнять только определенные (явно разрешенные) команды конфигурации. Словами Cisco — наделить пользователя определенными привилегиями.

 

Для начала немного о CLI Command Mode

 

CLI (Command Line Interface) Cisco имеет несколько режимов работы:

  • User EXEC — пользовательский режим; сюда мы попадаем, когда логинимся на Cisco; по дефолту имеет «1» уровень привилегий;

Дефолтный уровень привилегий пользователя можно менять — установить, например «15» — и пользователь при логине на Cisco попадает сразу в привилегированый режим.

  • Privileged EXEC — привилегированый режим; переходим в него из User EXEC режима с помощью команды enable; имеет наивысший — «15» уровень привилегий, соответственно, и полный контроль над железкой

  • Global configuration — режим глобальной конфигурации; переходим в него из Privileged EXEC режима с помощью команды configure terminal

  • Далее из режима глобальной конфигурации можем переходить в режим конфигурации интерфейса, линии, вланов и т.д.

Режимы работы Cisco CLI, как видим, иерархичны: для того, чтобы поднять какой-нибудь 100-мегабитный порт #17, нужно пройти цепочку Login -> (User EXEC) -> enable -> (Privileged Exec) -> configure terminal -> (Global configuration) -> interface Fa0/17 -> (Interface configuration) -> no shutdown

Т.е. для того, чтобы просто поднять порт, пользователю нужны полные права? По умолчанию, да. Для тех, кого такое положение вещей не устраивает, Cisco предусмотрела  механизм управления привилегиями пользователей через уровни привилегирования (privileges level). О них пойдет речь ниже…

 

Cisco privileges level

 

У Cisco всего есть 16 уровней привилегий — по нумерации от 0 до 15. Уровень «1» — дефолтный пользовательский, уровень «15» — высший привилегированный (полные права доступа). Почему дефолтный пользовательский не «0»? — не знаю.

В итоге у нас остается еще 14 уровней привилегий, которые можно настроить под определенные команды.

Переход между уровнями привилегий осуществляется через команду enable <номер уровня>. Просто enable попытается закинуть в самый привилегированный уровень 15:

Попасть в привилегированный режим третьего уровня:

Из любого уровня в уровень ниже можно попасть уже без пароля:

Выйти из привилегированного режима — disable:

 

Настройка привилегий 

 

Задача: создать уровень привилегий 3 и позволить пользователям, имеющим к нему доступ, настраивать порты (description, switchport mode, shutdown/no shutdown), смотреть running-config портов и сохранять конфигурацию.

1. Устанавливаем привилегии

Установка привилегий имеет следующий вид:

privilege <режим CLI> level <номер уровня> <разрешенная команда>

2. Даем пользователям доступ к этим привилегиям

Эту задачу можно решить несколькими способами:

— создать пароль на доступ к уровню через команду enable:

тогда доступ к привилегированному уровню 3 будут иметь пользователи, знающите пароль (и пользователи с уровнем привилегий выше (4…15).

— создать пользователя, который при логине на Cisco сразу попадает в привилегированный режим уровня 3:

тогда доступ к привилегированному уровню будет иметь только этот пользователь (ну и пользователи с уровнем привилегий выше (4…15).

Проверим:

Если это не работает, и при логине пользователь попадает все равно в Exec mode level 1, делаем следующее:

 

Удаление привилегий

 

Казалось бы, следуя логике конфигурированию Cisco, чтобы удалить те или иные настройки, следует использовать слово no перед командой. И если мы делаем:

то ожидаем в конфиге эту строку больше не видеть. Но работает это не везде. Например, на WS-C3750-48TS-S Version 12.2(55)SE4 команда no работает. А на ME-3400-24FS-A Version 12.2(40r)SE1 получим вот такое:

Тогда нужно использовать команду сброса (reset) привилегий:

Ну вот пока что, в принципе, и все.