Виртуальный межсетевой экран cisco asav: возможности, развертывание и настройка
Содержание:
- Download version
- BFD 1.x Specifications/Requirements
- Configure BFD for Application-Aware Routing
- BFD2 Specifications/Requirements
- Зоны
- Задержки
- Configuration¶
- Средства защиты
- Блокировка соц сетей на Mikrotik с помощью Address List и Firewall
- General Information
- Принципы
- Что такое Cisco DMVPN и зачем он нужен?
- Взаимодействие LAG и BFD
- Остальные мелочи
- Проблема Эн квадрат
- Что в итоге?
Download version
Are there any differences between the BFD2 boxed version and the download version?
The data in the download version has been reduced to 20-bit audio, whereas the boxed version contains 24-bit audio.
The download version is only supported on Windows 7 and Mac OSX 10.5.8 or later, and is only compatible with Intel processors on Mac.
Back To Top
How large is the download version?
The download size is approx 14GB — this is uncompressed during installation resulting in a maximum installed size of approx 52GB.
Back To Top
Why has the data been reduced to 20-bit for the download version?
20-bit audio offers a dynamic range of around 120dB. This is greater than the dynamic range of most professional-grade preamps/A-D converters, so there is no perceptible loss of audio quality. Any noise introduced due to the bit-reduction process is well below the analogue noise floor inherent in the recordings, and leads to much smaller downloads.
Back To Top
BFD 1.x Specifications/Requirements
Information about the BFD release
- BFD was available only as a boxed product — not as a download.
- It included approximately 9GB of audio data in total.
- 9 kicks, 15 snares, 6 hihats, 7 sets of toms, and 15 cymbals
- Additional kit-pieces for download upon registration — see downloads section
- Original BFD library is available as BFD Eldorado for use in BFD3/BFD Eco/BFD2
Back To Top
BFD 1.x minimum system requirements
- 1 GHz Pentium III or Athlon (Windows)
- Apple PowerMac G4, OSX 10.2.8 733 MHz (G4 1.2 GHz recommended) (MacOSX)
- 512 MB of RAM (1GB or more recommended)
- DVD drive(For installation)
- Windows 2000/XP or MacOSX 10.2.8
- 9 GB of free hard disk space (Separate drive recommended)
Back To Top
Configure BFD for Application-Aware Routing
To configure the BFD timers used by application-aware routing, click the Basic Configuration tab and configure the following parameters:
Parameter Name | Description |
---|---|
Multiplier | Specify the value by which to multiply the poll interval, to set how often application-aware routing acts on the data plane tunnel statistics to figure out the loss and latency and to calculate new tunnels if the loss and latency times do not meet configured SLAs.Range: 1 through 6Default: 6 |
Poll Interval | Specify how often BFD polls all data plane tunnels on a vEdge router to collect packet latency, loss, and other statistics used by application-aware routing.Range: 1 through 4,294,967,296 (232 – 1) millisecondsDefault: 600,000 milliseconds (10 minutes) |
To save the feature template, click Save.
CLI equivalent:
BFD2 Specifications/Requirements
Information about the BFD2 release
- BFD2 was available initially as a boxed product
- A 20-bit download version was released later
- It included approximately 55GB of audio data in total.
- 10 full kits, extra snares, cymbals, and more
Back To Top
BFD 2.x minimum system requirements
Required for boxed version up to v2.1.0.47:
- Windows XP SP1 or higher, Vista 32, P4 or better CPU (Windows)
- OSX 10.4, G5 or Intel CPU (Mac)
- 1 GB of RAM
- 7200rpm hard drive with 60GB free space
- DVD drive
- Internet connection for product authorisation
Recommended for best results:
- 2 GB of RAM or more
- Fast, multi-core modern Intel or AMD CPU
- Dedicated hard drive
- VST, RTAS or AU compatible plugin host
- Low latency audio interface
Required for v2.2, v2.3 and download version (64-bit compatible):
- Windows 7 (Windows)
- OSX 10.5.8 or later, Intel CPU (Mac)
Back To Top
Зоны
- Neighbor — нужна, например, для связи с CMS, CUCM или другим Expressway-C.
- Localzone — зона в которую входят устройства зарегистрированные на Expressway’ях.
- ENUM — для E.164-запросов.
- DNS — для DNS-запросов.
- Webex — нужна для сценариев, в которых вызовы, инициированные в корпоративной сети, через сеть компании поступают в Интернет, а затем в облако. Аналогично через Интернет происходит маршрутизация вызовов, инициированных в Webex во время совещания, которые в дальнейшем поступают в локальную систему маршрутизации.
- Traversal(Client, Server) — нужна для маршрутизации вызовов между Expressway-C и Expressway-E для обхода Firewall’a(отсюда и слово traversal(обходная)).
- UC Traversal — нужна вывода во внешний мир Jabber’a со всем его функционалом.
- Default — то, что не попало ни в одну зону, попадает в Default-зону, и работает согласно правилам Default-зоны, которую, вообще говоря, можно не заполнять правилами, и всё будет просто отклоняться.
Зона для CUCM
publisher’asubscriber’a(ов)SIP Trunk Security ProfileTrunkSIP Trunk Security ProfileTrunkSIP Trunk Security ProfileStandart SIP Profile For Cisco VCS
Зона UC Traversal на Expressway-E
Expressway-E обычно находится в демилитаризованной зоне и имеет интерфейс, к которому можно напрямую подключиться из Интернета (некоторых случаях этот адрес интерфейса находится за NAT’ом). Большинство политик Firewall’ов не разрешают подключения из DMZ во внутреннюю сеть. Однако большинство политик Firewall’ов позволяют подключаться из внутренней сети к сети DMZ и Интернету. Expressway-E настроен, как сервер обхода, где он может принимать соединения, инициированные от клиентов обхода firewall’a, таких как Expressway-C, которые находятся во внутренней сети. Это соединение затем используется для двунаправленной связи, позволяя отправлять сообщения с Expressway-E на Expressway-C.uctraversal
DNS Зона
Зона DNS сначала выполняет различные поиски DNS SRV-записей, пытаясь найти место назначения для вызываемого домена. Для SIP он ищет _sips._tcp. домен и/или _sip.tcp. домен в зависимости от настроек безопасности и шифрования. Если какой-либо из этих поисков SRV-записи дает сбой, Expressway можно настроить так, чтобы он также выполнял стандартные запросы записи A, чтобы найти пункт назначения звонка. Эти поиски позволяют Expressway направлять звонки в пункты назначения, которые не определены явно. Можно просто зарегистрировать эти записи DNS SRV на публичном DNS-сервере, а затем автоматически получать вызовы от внешних клиентов и/или звонить им, если у них сделано тоже самое. Это часто называют открытой федерацией или Business-to-Business(B2B) звонками.
TURN
Порт 5222 или порт 5223
Схема работы при работе через NAT
- serverAddress
- clientAddress
- username
- password
- type
type
- Маршрутизировать звонки на Cisco UCM.
- Маршрутизировать звонки на Cisco Expressway-C. (Предпочтительнее).
Маршрутизация на CMS
Business to Business звонки
Business to Business (B2B) звонки являются основной особенностью продукта Expressway. В2В позволяет пользователям осуществлять видеовызовы, отправлять и принимать вызовы от/к предприятий, внешних видеосервисов или клиентов через Интернет, при этом безопасным образом обходя корпоративные Firewall’ы.В основе B2B звонков лежит возможность маршрутизации вызовов через Expressway. Хотя тоже самое можно сделать на основе домена, CUCM и большинстве других объектов управления SIP-вызовами, Expressway также имеет понятие зоны DNS. Таким образом с помощью этой зоны не нужно явно определять удаленный пункт назначения вызова. Вместо этого Expressway DNS, чтобы найти пункт назначения вызова за пределами сети организации. DNS зона у нас уже настроена.Создаём правило поиска для входящих звонков на Expressway-E.meeting@example.rumeeting@example\.ru\.*meeting@example.ruСоздаём правило поиска для исходящих звонков на Expressway-E.(?!.*@%localdomains%.*$).*входящий@Transforms(.*)external.ru((:|;).*)?1\@internal.ruСоздаём правила поиска на Expressway-С
- .*@example.ru
- .*@example.ru
- .*@example.ru
- .*@(cucm-01\.|cucm-02\.)?example\.ru\.*
- .*@(cucm-01\.|cucm-02\.)?example\.ru\.*
- (?!.*@(cucm-01\.|cucm-02\.)?example\.ru\.*
Transforms
- Отрезаем «:5060» порт URI звонящего.
- Преобразуем алиас назначения к виду URI.
- Заменяем IP-адрес на доменное имя при звонках с CUCM-Publisher’a.
- Заменяем IP-адрес на доменное имя при звонках с CUCM-Subscriber’a.
Присоединямся через web в конференцию.Звоним снаружи.Звоним изнутриВходящий звонок на Expressway-EВходящий звонок на Expressway-СВходящий звонок на CMS
Задержки
- Задержка сериализации (Serialization Delay) — время, за которое узел разложит пакет в биты и поместит в линк к следующему узлу. Она определяется скоростью интерфейса. Так, например, передача пакета размером 1500 байтов через интерфейс 100Мб/с займёт 0,0001 с, а на 56 кб/с — 0,2 с.
- Задержка передачи сигнала в среде (Propagation Delay) — результат печально известного ограничения скорости распространения электромагнитных волн. Физика не позволяет добраться из Нью-Йорка до Томска по поверхности планеты быстрее чем за 30 мс (фактически порядка 70 мс).
- Задержки, вносимые QoS — это томление пакетов в очередях (Queuing Delay) и последствия шейпинга (Shaping Delay). Об этом мы сегодня будем говорить много и нудно в главе Управление скоростью.
- Задержка обработки пакетов (Processing Delay) — время на принятие решения, что делать с пакетом: lookup, ACL, NAT, DPI — и доставку его от входного интерфейса до выходного. Но в день, когда Juniper в своём M40 разделил Control и Data Plane, задержкой обработки стало можно пренебречь.
RTTRound Trip Time
Configuration¶
Before applying rules to integrated daemons (like BGPd), we must
create the corresponding peers inside the configuration node.
Here is an example of BFD configuration:
bfd peer 192.168.0.1 label home-peer no shutdown ! ! router bgp 65530 neighbor 192.168.0.1 remote-as 65531 neighbor 192.168.0.1 bfd neighbor 192.168.0.2 remote-as 65530 neighbor 192.168.0.2 bfd neighbor 192.168.0.3 remote-as 65532 neighbor 192.168.0.3 bfd !
Peers can be identified by its address (use when you need
to specify a multi hop peer) or can be specified manually by a label.
Here are the available peer configurations:
Средства защиты
- zero trust подход в дизайне
- высокий уровень защиты
- network visibility
- единая централизованная система аутентификации и авторизации
- проверка хоста (host checking)
Zero Trust
zero trust
- remote access VPN пользователей
- различные личные гаджеты, принесенные ноутбуки, подключаемые через офисный WiFi
- другие (branch) офисы
- интеграцию с облачной инфраструктурой
- это только L3/L4 фильтрация. Ничто не мешает злоумышленнику использовать разрешенные порты (например, TCP 80) для своего приложения (не http)
- сложный менеджмент ACL (трудно анализировать ACL)
- это не statefull фаервол, то есть вам нужно явно разрешать реверсный трафик
- в случае коммутаторов вы обычно довольно жестко ограничены размером TCAM, что в случае применения подхода «разрешать только то, что нужно» может быстро стать проблемой
Высокий уровень защиты
статье
- stateful firewalling (по умолчанию)
- ddos/dos protection
- application firewalling
- threat prevention (antivirus, anti-spyware, and vulnerability)
- URL filtering
- data filtering (content filtering)
- file blocking (file types blocking)
- application firewalling
- threat prevention (anti-virus, anti-spyware, and vulnerability)
- URL filtering
- data filtering (content filtering)
- file blocking (file types blocking)
Магического Квадранта Гартнера (Gartner Magic Quadrant) за 2018 год
- в данном случае появляется единая точка применения методов защиты, что улучшает visibility (см. следующую тему).
- если в вашей сети оказалось незащищенное устройство, то оно все равно попадает под «зонтик» защиты фаервола
- используя защиты на фаерволе совместно с защитой на конечных хостах, мы увеличиваем вероятность обнаружения вредоносного трафика. Например, использование threat prevention на локальных хостах и на фаерволе увеличивает вероятность обнаружения (при условии, конечно, что в основе этих решений лежат разные программные продукты)
Network visibility
Основная идеяГруппа первая:
- загрузка оборудования
- загрузка каналов
- использование памяти
- использование дисков
- изменение таблицы маршрутизации
- состояние линков
- доступность оборудования (или хостов)
- …
Группа вторая:
- различного рода статистика (например, по приложениям, по посещаемости URL, какие виды данных скачивались, данные по пользователям)
- что было заблокировано политиками безопасности и по какой причине, а именно
- запрещенное приложение
- запрещено на основе ip/protocol/port/flags/zones
- threat prevention
- url filtering
- data filtering
- file blocking
- …
- статистика по DOS/DDOS атакам
- неудачные попытки идентификации и авторизации
- статистика по всем вышеперечисленным событиям нарушения политик безопасности
- …
- статистику по сессиям можно собирать через netflow и потом использовать специальные утилиты для анализа информации и визуализации данных
- threat prevention – специальные программы (anti-virus, anti-spyware, firewall) на конечных хостах
- URL filtering, data filtering, file blocking – на proxy
- также можно анализировать tcpdump с помощью, например, snort
Блокировка соц сетей на Mikrotik с помощью Address List и Firewall
RouterOS есть функционал Address List. Он может содержать подсеть, конкретный адрес или доменное имя. Ниже я покажу как заблокировать vk.com. Есть условие, заблокировать доступ с 192.168.20.254 и 192.168.20.253. Открываем IP – Firewall – Address List. Создадим новые листы.Первый лист, будет содержать ip, с которых запрещено ходить на vk.com.
Вторым, vk.com. Задаем доменные имена.
После создания, роутер отрезолвит имя на тех серверах, что указаны в DNS и добавит в адрес лист. Далее простым правилом цепочки forward запрещаем пересылку из одного листа в другой. Чтобы пользователь не ждал долго, а получал отбойник что соединение разорвано укажем некоторые уточнения. Если новый транзитный TCP.
И пересылка происходит из одного листа в другой.
То говорим, что соединение было сброшено.
Не забываем поместить его выше разрешающего правила пересылки.
Теперь вы можете добавлять адреса и имена в листы, правило фаервола автоматически будет применять к ним действия. Самое главное в блокировке по доменному имени, чтобы DNS сервером для клиентов в вашей сети был Mikrotik. Если вы зададите DNS вручную на машине, допустим 8.8.8.8, то vk.com может изменить один из адресов и правило не сработает. Так же смотрите на TTL в кэше, его следует изменить на меньшее.
Может возникнуть вопрос, а не грузят ли ЦП эти ваши Address List? Ответ – Нет! Они работают аппаратно на специальных чипах (асиках), и тысячи листов с тысячами IP не будут грузить ЦП и устройство в целом.На этом все, желаю удачи!
General Information
Whatever you want it to 🙂 — but it’s certainly big and it’s certainly drums.
Back To Top
Yes — BFD’s Groove section supports standard MIDI files as exported by every sequencer known to man.
Back To Top
Can I use my own samples in BFD?
No — BFD’s samples were recorded with a carefully set-up multi channel process, and it would not be possible to recreate the mic positioning with «standard» samples. BFD is NOT a «drum sampler» — it is very much a sound library instrument.
Back To Top
How many different kits and kit pieces are there?
There are 7 full kits and an assortment of spare kit pieces. In total, you have 9 kicks, 15 snares, 6 hihats, 7 sets of toms, and 15 cyms to choose from.
Back To Top
Where can I get updated versions of BFD?
Updated product versions are available (DL page link) after your BFD serial has been registered to your FXpansion user account.
You will need to decompress the archives and then double-click the extracted contents in order to install the update.
Back To Top
Is there any latency built into BFD?
No. BFD loads the first part of every sample into RAM for immediate playback after which the remaining audio is played from disk. This means that hard drive access does not cause latency. Any latency you may experience is due to the size of the audio buffers used by your host application and sound card and inherent latencies involved with MIDI interface hardware/drivers.
Back To Top
Does BFD run at high sample rates?
The BFD plugin runs at any sample rate provided by the host — the audio is resampled (please be aware that resampling multiple channels of audio uses a significant amount of CPU power).
The standalone application provided with BFD runs at 44.1kHz only.
Back To Top
Принципы
«Protocol-Oriented Programming in Swift»
- «Don’t start with a class. Start with a protocol.». Это утверждение Dave Abrahams с вышеупомянутой сессии. Можно трактовать 2 способами:
- начинайте не с реализации, а с описания контракта (описание функциональности, которую объект будет обязан предоставить потребителям)
- описывайте переиспользуемую логику в протоколах, а не классах. Используйте протокол как единицу переиспользования кода, а класс — как место для уникальной логики. По другому можно описать этот принцип — encapsulate what varies.
Хорошим аналогом может стать паттерн «Шаблонный метод». Его идея — отделить общий алгоритм от деталей реализации. Базовый класс содержит общий алгоритм, а дочерние переопределяют определённые шаги алгоритма. В POP общий алгоритм будет содержаться в protocol extension, protocol будет определять шаги алгоритма и используемые типы, а реализация шагов — в классе.
- Композиция через расширения. Многие слышали фразу «предпочитайте композицию наследованию». В ООП, когда от объекта требуется разный набор функциональности (полиморфное поведение), эту функциональность можно либо разбить на части и организовать иерархию классов, где каждый класс наследует функциональность от предка и добавляет свою, либо разбить на несвязанные иерархией классы, экземпляры которых использовать в связующем классе. Используя возможность добавить соответствие протоколу через расширение мы можем использовать композицию не прибегая к созданию вспомогательных классов. Таким способом зачастую пользуются, когда добавляют viewController-у соответствие различным делегатам. Преимущество перед добавлением соответствия протоколам в самом классе — лучше организованный код:
- Вместо наследования используйте протоколы. Dave Abrahams сравнил протоколы с суперклассами, поскольку они позволяют достичь подобия множественного наследования.
Если ваш класс содержит много логики, стоит попытаться разбить его на отдельные наборы функциональности, которые вынести в протоколы.
Разумеется, в случае использования сторонних фреймворков, как Cocoa, наследования не избежать. - Используйте Retroactive modeling.
Интересный пример с всё той же сессии «Protocol-Oriented Programming in Swift». Вместо того, чтобы написать класс реализующий протокол Renderer для отрисовки с помощью CoreGraphics, классу CGContext через extension добавляется соответствие этому протоколу. Перед добавлением нового класса, реализующего протокол, стоит задуматься, есть ли тип (класс/структура/enum), который можно адаптировать к соответствию протокола? - Включайте в протоколы методы, которые можно переопределить (Requirements create customization points).
Если появилась необходимость переопределить общий метод, определённый в protocol extension, для конкретного класса, то перенесите сигнатуру этого метода в protocol requirements. Другие классы не придётся править, т.к. продолжат использовать метод из расширения. Различие будет в формулировке — теперь это «default implementation method» вместо «extension method».
Что такое Cisco DMVPN и зачем он нужен?
- IP маршрутизация
- Multipoint GRE туннели (mGRE)
- Next Hop Resolution Protocol (NHRP)
- IPSec Crypto профили
- Для создания межфилиальной сети возможно использовать любые каналы связи – подходит все, что способно обеспечить IP-связность между филиалами, при этом трафик будет и шифроваться (где надо) и балансироваться (где возможно)
- Автоматически формируется полно связная топология между филиалами. При этом между центральным и удаленным филиалами – статические туннели, а между удаленными филиалами – динамические туннели по требованию (при наличии трафика)
- На маршрутизаторах центрального и удаленного филиала однообразная конфигурация с точностью до IP-адресов интерфейсов. За счет использования mGRE нет необходимости в индивидуальной настройке десятков, сотен или даже тысяч туннелей. Как следствие, достойная масштабируемость при правильном дизайне.
Взаимодействие LAG и BFD
Сессии micro-BFD для определенного члена LAG должны запрашиваться, когда этот канал находится в состоянии Distributing или Standby. Сессии должны удаляться, когда состояние канала отличается от Distributing и Standby.
BFD используется для управления, если алгоритм распределения нагрузки способен выбирать отдельный канал в LAG. Иными словами, даже при использовании протокола LACP и готовности членов группы пересылать трафик балансировщику нагрузки недопустимо использовать канал, пока все сессии micro-BFD на этом канале не находятся в состоянии Up.
Если реализация имеет отдельные таблицы балансировки для IPv4 и IPv6 и на канале имеются сессии micro-BFD для IPv4 и IPv6, реализация может разрешить использование канала механизмом распределения нагрузки на основе сессии BFD для соответствующего семейства адресов.
Исключением являются сами пакеты BFD. Реализации могут принимать и передавать пакеты BFD через интерфейс MAC-сервиса агрегатора независимо от состояния сессии.
Остальные мелочи
DHCP Relay
Настраивается следующим образом:
При создании нового vlan необходимо добавлять его вручную в список vlan с DHCP Relay.
SSH + ACL для SSH
Ssh включается следующим образом:
Для ограничения доступа к ssh необходимо создать отдельный файл политики вида NAME.pol и повесить его на SSH.
Политика:
Команда для применения политики:
Description + display-string
Для удобства настройки и последующей эксплуатации можно задавать «имя» и «описание» интерфейса.
Описание интерфейса будет выводится только в командах вида:
Имя интерфейса заменит практически везде его номер в выводе команд. Имя не должно содержать пробела и ограничено длинной в 20 символов.
Проблема Эн квадрат
OSPFкаждомneighborRoute ReflectorConfederation
Route Reflectror
клиент RRне-клиент RRкластер
Правила работы RR
- Если RR получил маршрут от клиента, он отправляет его всем своим клиентам, не-клиентам-соседям и внешним (EBGP) соседям.
- Если RR получил маршрут от не-клиента, он отправляет его всем клиентам и EBGP-соседям. Не-клиентам маршруты НЕ отправляются (потому что они эти маршруты уже получили напрямую от исходного маршрутизатора).
- Если RR получил маршрут от EBGP-соседа, он отправляет его всем своим клиентам, не-клиентам-соседям и внешним соседям.
- Если клиент получил маршрут от RR, он его может отправить только EBGP-соседу.
разрушать деревни
Практика RR
R1
R2
R3
R4
neighbor AS64500 route-reflector-clientNext-Hop-selfКонфигурация устройств
Что в итоге?
решают в конечном итоге очень похожие задачина другой качественный уровень
- DMVPN/PfR в целом используют проверенные временем технологии построения наложенных VPN сетей и в части data-plane схожи с более современной SD-WAN технологией, при этом есть ряд ограничений в лице обязательной статической конфигурации маршрутизаторов и выбор топологий ограничен Hub-n-Spoke. С другой стороны, у DMVPN/PfR есть некоторые функциональные возможности, которые пока недоступны в рамках SD-WAN (речь о per-application BFD).
- В рамках control-plane технологии отличаются принципиально. С учетом централизованной обработки сигнальных протоколов SD-WAN позволяет, в частности, значительно сузить домены отказа и «развязать» процесс передачи пользовательского трафика от сигнального взаимодействия – временная недоступность контроллеров не влияет на возможность передачи пользовательского трафика. В то же время временная недоступность какого-либо филиала (в том числе центрального) никак не влияет возможность остальных филиалов взаимодействовать друг с другом и контроллерами.
- Архитектура формирования и применения политик управления трафиком в случае SD-WAN также превосходит таковую в DMVPN/PfR – значительно лучше реализовано гео-резервирование, нет привязки к Hub, больше возможностей по тонкой настройки политик, список реализуемых сценариев управления трафиком также значительно больше.
- Процесс оркестрации решения также значительно отличается. DMVPN предполагает наличие заранее известных параметров, которые должны быть каким-то образом отражены в конфигурации, что несколько ограничивает гибкость решения и возможность динамических изменений. В свою очередь SD-WAN исходит из парадигмы, что в начальный момент времени подключения маршрутизатор «не знает ничего» о своих контроллерах, но знает «у кого можно спросить» – этого достаточно не только для автоматического установления связи с контроллерами, но и для автоматического формирования полно связной data-plane топологии, которую затем можно гибко настроить/изменить с помощью политик.
- В части централизованного управления, автоматизации и мониторинга SD-WAN ожидаемо превосходит возможности DMVPN/PfR, которые стали результатом развития классических технологий и в большей степени полагаются на командную строку CLI и применение систем NMS на основе шаблонов.
- В SD-WAN по сравнению с DMVPN требования безопасности вышли на другой качественный уровень. Главные принципы – нулевое доверие, масштабируемость и двухфакторная аутентификация.
выбор определяется текущими потребностями и пониманием, что в любой момент на том же самом оборудовании можно начать двигаться в сторону более продвинутой технологии.