Этот, а также несколько следующих обзоров будут посвящены Интернет-файрволу D-Link DFL-210.
Содержание
- Общие сведения
- Вид изнутри
- Спецификация
- Конфигурация
- Тестирование производительности базовых функций
- Доступность
- Выводы (базовые настройки, производительность)
- IPSec VPN-сервер
- Тестирование производительности IPSec VPN-сервера
- PPTP VPN-сервер
- Тестирование производительности PPTP-сервера
- Тестирование производительности PPTP-клиента
- Выводы (IPSec VPN-сервер, PPTP VPN-сервер, PPTP VPN-клиент)
- L2TP VPN-сервер
- Тестирование производительности L2TP VPN-сервера
- Шейпинг трафика
- Тестирование возможностей шейпинга трафика
- IDS предотвращение вторжений
- Выводы (L2TP VPN-сервер, шейпинг трафика, IDS)
Функциональные возможности устройства: Интернет-маршрутизатор с 4-хпортовым коммутатором на LAN-интерфейсе, IPSec, PPTP и L2TP VPN серверами, механизмом обнаружения и предотвращения вторжений, возможностью шейпинга трафика. Так как устройство названо файрволом, оно имеет достаточно много возможностей безопасности, о которых будет более подробно рассказано в цикле статей, посвященных этому устройству.
На устройстве расположены следующие индикаторы:
- Индикатор питания
- Индикатор статуса
- Индикатор активности порта WAN
- Индикатор активности порта DMZ
- Индикатор активности на каждом из 4-х LAN-портов
Сзади на устройстве расположены:
- Консольный порт
- 4 порта LAN
- Порт DMZ
- Порт WAN
- Кнопка Reset — сброс параметров
- Разъем питания
Комплектация устройства:
- Сам файрвол
- 2 кабеля RJ-45 — RJ-45 длиной 2 метра
- Диск с инструкцией
- Консольный кабель для подключения к COM-порту
- Блок питания (длина провода около 2-х метров)
Вид изнутри
Устройство выполнено на базе процессора Intel IXP422 (266МГц, аппаратная поддержка алгоритмов SHA-1, MD5, DES/3DES, AES, 2 MII — интерфейса, поддержка 33/66 МГц PCI-шины, USB 1.1, низкое энергопотребление).
Блок-схема работы процессора представлена ниже
![](firewall/dlink-dfl-210/add/ixp422.png)
На плате установлено:
- Realtek 8100B — Fast Ethernet контроллер с возможностью Power Management
- Realtek 8305SB — 5-типортовый коммутатор Fast Ethernet
- Promise Technology PDC-20275 — ATA-контроллер — судя по всему, через него организован интерфейс к CompactFlash карточке, установленной на основной плате устройства
- 4 Мбайт Flash-памяти Intel TE28F320
- 128 Мбайт SDRAM-памяти (4 * Hynix HY57V561620CT-H, PC133)
Спецификация
корпус | пластиковый, допускается горизонтальная установка, а также подвес на стену | |||
исполнение | Indoor | |||
проводной сегмент | ||||
WAN | тип | Fast Ethernet | ||
количество портов | 1 | |||
auto MDI/MDI-X | да | |||
типы поддерживаемых соединений | фиксированный IP | да | ||
динамический IP | да | |||
PPPoE | да | |||
PPTP | да | |||
L2TP | да | |||
IPSec | да | |||
LAN | количество портов | 4 | ||
auto MDI/MDI-X | да | |||
ручное блокирование интерфейсов | нет | |||
возможность задания размера MTU вручную | нет | |||
основные возможности | ||||
конфигурирование устройства и настройка клиентов | администрирование | WEB-интерфейс | да | |
WEB-интерфейс через SSL | да | |||
собственная утилита | нет | |||
telnet | нет | |||
ssh | нет | |||
COM-порт | да | |||
SNMP | да | |||
возможность сохранения и загрузки конфигурации | да | |||
встроенный DHCP сервер | да | |||
поддержка UPnP | нет | |||
метод организации доступа в Интернет | Network Address Translation (NAT-технология) | да | ||
возможности NAT | one-to-many NAT (стандартный) | да | ||
one-to-one NAT | да | |||
возможность отключения NAT (работа в режиме роутера) | да | |||
Встроенные VPN-сервера | IPSec | да | ||
PPTP | да | |||
L2TP | да | |||
Traffic shaping (ограничение трафика) | да | |||
DNS | встроенный DNS-сервер (dns-relay) | да | ||
поддержка динамического DNS | да | |||
внутренние часы | присутствуют | |||
синхронизация часов | да, SNTP | |||
встроенные утилиты | ICMP ping | да | ||
traceroute | нет | |||
resolving | нет | |||
логирование событий | да, системные события, файрвол | |||
логирование исполнения правил файрвола | да | |||
способы хранения | внутри устройства | да | ||
на внешнем Syslog сервере | да | |||
отправка на email | да | |||
SNMP | поддержка SNMP Read | да | ||
поддержка SNMP Write | нет | |||
поддержка SNMP Traps | нет | |||
Роутинг | ||||
статический (задания записей вручную) | да | |||
динамический роутинг | нет | |||
возможности VPN | ||||
сервер IPSec | типы аутентификации | pre shared key | да | |
сертификаты | да | |||
алгоритмы хеширования | SHA1 | да | ||
MD5 | да | |||
алгоритмы шифрованияя | DES | да | ||
3DES | да | |||
AES | да | |||
сервер L2TP | да, более подробно о нем будет рассказано в следующих обзорах | |||
сервер PPTP | да, более подробно о нем будет рассказано в следующих обзорах | |||
возможности встроенных фильтров и файрвола | ||||
поддержка SPI (Stateful Packet Inspection) | да, в правилах возможно его отключение | |||
наличие фильтров/файрвола | да, широкие возможности настройки | |||
типы фильтров | по MAC адресу | нет | ||
по source IP адресу | да, в том числе по диапазону или подсети | |||
по destination IP адресу | да, в том числе по диапазону или подсети | |||
по протоколу | да, TCP/UDP/TCP&&UDP/ICMP ... | |||
по source порту | да, в том числе по диапазону | |||
по destionation порту | да, в том числе по диапазону | |||
привязка ко времени | да | |||
по URL-у | да | |||
по домену | да | |||
работа со службами списков URL для блокировки | нет | |||
тип действия | allow | да | ||
deny | да | |||
log | да | |||
поддержка спец.приложений (netmeeting, quicktime, etc) | H323, FTP | |||
виртуальные сервера | возможность создания | да | ||
задания различных public/private портов для виртуального сервера | да | |||
возможность задания DMZ | да | |||
traffic shaping | ||||
типы шейпинга | ограничение трафика по критериям | да | ||
критерии задания правила для ограничений | src interface lan/wan | да | ||
dst interface lan/wan | да | |||
src ip/range | да, в том числе по диапазону или подсети | |||
dst ip/range | да, в том числе по диапазону или подсети | |||
src protocol | TCP,UDP, TCP&UDP | |||
dst protocol | TCP,UDP, TCP&UDP | |||
src port/range | да, в том числе по диапазону | |||
dst port/range | да, в том числе по диапазону | |||
привязка ко времени | да | |||
Версия прошивки | 2.04.01 Nov 17 2005 | |||
питание | ||||
тип БП | внешний, 5VDC, 3A | |||
поддержка 802.1af (PoE) | нет |
По сути, устройство является обычным маршрутизатором, с расширенной настройкой безопасности, возможностями обнаружения вторжений и шейпинга трафика.
На момент написания обзора на сайте D-Link не было никакой информации о представленном устройстве, поэтому документацию на устройство можно найти здесь (~14 Мб).
Конфигурация
Конфигурацию устройства можно производить через консольный порт с использованием CLI (Command Line Interface, интерфейс командной строки) или через WEB-интерфейс (как с использованием SSL, так и без него).
Интерфейс настройки через командную строку достаточно сложен и имеет большое количество команд, но может пригодиться при первоначальной настройке устройства. Его основное предназначение — получение сведений, а не задание настроек (даже IP-адрес сменить нельзя). Зато сброс параметров и даже восстановление первоначальной версии прошивки осуществляется через него.
Основная настройка устройства осуществляется через WEB-интерфейс, который выполнен в стиле XP, что, несомненно, делает его более привлекательным, но, к сожалению, более легким он от этого не становится. На то, чтобы разобраться, как пользоваться интерфейсом настройки у меня ушло достаточно много времени, зато это "усложнение" позволило добиться большей гибкости настройки. Также можно сказать, что WEB-интерфейс устройства очень громоздкий (одних только скриншотов без подробностей настройки получилось более 150).
Скриншоты WEB-интерфейса настройки приведены здесь.
Список параметров SNMP приведен здесь.
Рассмотрим некоторые настройки WEB-интерфейса более подробно. Как говорилось выше, WEB-интерфейс устройства достаточно гибок и поэтому сложен (то есть простота принесена в жертву ради большей гибкости). Это заключается в задании большого количества мелких параметров, которые сами по себе не имеют смысла (например, отдельно создается список IP-адресов и отдельно создается список всевозможных сервисов, а затем адреса и сервисы из этих списков используются при создании списка правил фильтрации). Таким образом, получаются зависимости (наподобие тех, что возникают в базах данных), которые можно нарушить, удалив, например, из списка сервисов тот, который фигурирует в каком-либо правиле фильтрации. При этом устройство не позволит произвести сохранение конфигурации до избавления от подобных "потерянных" связей.
Наглядный пример вышесказанного — назначение IP-адресов различным интерфейсам. В устройстве присутствует список различных IP-адресов и подсетей, в который мы можем добавлять и удалять различные пункты
![](firewall/dlink-dfl-210/add/46.png)
рис. 1
То есть в список, представленный на рис. 1, мы можем добавлять пункты с любыми именами и адресами. Для того чтобы сменить IP-адрес интерфейса устройства, потребуется в другом пункте меню "связать" конкретный интерфейс с адресом из этого списка, а также задать подсеть и адрес шлюза для интерфейса (эти параметры также берутся из списка, представленного на рис. 1).
Для хранения логов, можно использовать внутреннюю память устройства, Syslog-сервер или отправлять логи по электронной почте. Адрес Syslog-сервера можно выбрать из списка, представленного на рис. 1 и рис. 2 (можно заметить, что списки на этих рисунках несколько различаются — это связано с тем, что они могут храниться в виртуальных каталогах, содержимое одного из которых представлено на рис. 1, а содержимое остальных прослеживается на рис. 2)
![](firewall/dlink-dfl-210/add/x1.png)
рис. 3
При создании DHCP-сервера, возможно задание большого количества дополнительных опций (использование данных опций происходит в том случае, если DHCP-клиент распознает соответствующие настройки и производит конфигурацию с их использованием). Примером такой дополнительной опции служит "Default IP TTL" (Time to Leave по умолчанию для IP-пакетов). Список этих параметров приведен здесь.
Устройство позволяет задать достаточно много различных параметров верификации, логирования и передачи трафика, однако эти настройки не имеют описания в документации. Пункт меню с этими настройками назван "Advanced Settings" (расширенные настройки). Среди этих настроек задается TTL IP пакетов устройства, что делать с IP-пакетами, имеющими адрес источника 0.*.*.*, что делать с TCP-пакетами, с одновременно установленными флагами SYN и FIN (иногда используются при сетевых атаках) и т.д. Как варианты действий — можно отбрасывать (в том числе с фиксацией в логах), либо пропускать (в том числе с фиксацией в логах). Полный список настроек этой группы можно увидеть здесь, здесь, здесь, здесь, здесь, здесь, здесь, здесь и здесь.
В разделе "Application Layer Gateways", помимо опций, позволяющих работать через NAT таким протоколам как FTP и H.323 (использование данных протоколов через обычную трансляцию адресов невозможно без дополнительных приемов, так как в самих пакетах передаются адреса источника и назначения пакетов), можно обнаружить пункт "HTTP ALG"
![](firewall/dlink-dfl-210/add/x2.png)
рис. 5
Данная возможность позволяет проводить фильтрацию WEB по URL WEB-страницы, а также блокировать ActiveX и JAVA-приложения, скрипты Javascript/VBScript и Cookies.
При задании правил файрвола, политик маршрутизации, настройке шейпинга трафика, а также при настройке некоторых других параметров, возможно использование расписания ("Schedule"). Это позволяет задать интервалы времени, в которые эти параметры будут применяться. Точность задания правил расписания — 1 час. Возможно задание времени начала и окончания действия расписания (день/месяц/год)
Настройка IPSec, PPTP и L2TP VPN-серверов будет вкратце рассмотрена в следующих частях обзора, посвященного этому устройству.
При создании правил фильтрации, возможно использование следующих действий:
- Drop (запрет на установку соединения)
- Reject (запрет на установку соединения с отправкой сообщения источнику пакета о невозможности его доставки)
- FwdFast (передача пакета без SPI (Stateful Packet Inspection))
- Allow (разрешает установление соединения)
- SAT (Static Address Translation — позволяет изменить адрес и порт источника или назначения)
- NAT (Network Address Translation — позволяет изменить адрес источника пакетов)
Обычно, при установлении соединения, файрвол создает специальную запись, которая позволяет не проводить проверку всех пакетов, а проверять только первые пакеты — то есть через список правил фильтрации проходят только пакеты, устанавливающие соединения, а остальные пакеты не подвергаются проверке (если соединение будет установлено, то все пакеты данного соединения будут пропускаться через файрвол). Этот механизм называется Stateful Packet Inspection (SPI). Действие FwdFast фильтра позволяет избежать создания таких записей — это может быть полезно, в случае если нам по каким-либо причинам нужно проверять каждый пакет (что существенно замедляет работу), либо если пакеты проходят настолько редко, что держать в памяти такую запись бессмысленно.
Механизм SPI может также работать с протоколами, которые сами по себе не устанавливают устойчивых соединений (например, UDP) — при этом такие записи в файрволе создаются при прохождении первого пакета через файрвол и удаляются по истечении какого-то определенного периода времени с момента прохождения последнего (данный интервал времени можно задать в разделе расширенных настроек — "Advanced Settings").
Использование пункта "ARP Table" позволяет производить статическое связывание MAC-адресов с IP-адресами, а также создавать дополнительные IP-адреса на интерфейсах устройства (LAN, WAN, DMZ) с различными MAC-адресами (однако как я не пытался "заглушить" MAC-адрес по умолчанию, сделать этого мне не удалось. Получается, что я могу создавать виртуальные интерфейсы с заданными мной MAC-адресами и присваивать им IP-адреса, но отключить или изменить аппаратный MAC-адрес интерфейса я не могу).
Устройство позволяет создавать политики маршрутизации — Policy Routing (наподобие тех, что можно создавать в Linux, используя iproute2). Для этого создаются собственные таблицы маршрутизации, состоящие из ряда маршрутов (которые в свою очередь определяют, куда будут посылаться пакеты, адрес назначения которых указанная сеть: интерфейс, адрес шлюза, адрес, который станет адресом источника пакетов в случае, если интерфейс имеет несколько IP-адресов)
и самих политик, которые могут направлять трафик в определенную таблицу маршрутизации в зависимости от адресов источника/назначения, протоколов и портов (в случае протокола TCP или UDP), расписания, а также адресов и интерфейсов источника и назначения пакетов.
Устройство имеет возможность обнаружения и предотвращения вторжений — в устройстве хранятся сигнатуры, позволяющие обнаруживать и предотвращать попытки вторжения. Данные сигнатуры можно обновлять (в том числе в автоматическом режиме). Возможности настройки данной возможности мы рассмотрим в следующих обзорах, посвященных данному устройству.
Также возможно создание внутренней базы данных пользователей иили использование внешнего сервера RADIUS для аутентификации (используется, например, как список пользователей, подключающихся к PPTP-серверу).
Возможности шейпинга трафика также будут рассмотрены в следующем обзоре.
Отображению различной статистики посвящен отдельный пункт меню, который содержит в себе следующие пункты:
- System
- Logging (логи устройства)
- Connections (текущие соединения — таблица SPI)
- Interfaces (отображает загрузку интерфейсов по времени, текущие IP-адреса)
- IPSec (загрузка IPSec VPN-соединений)
- UserAuth
- Routes
- DHCP Server (клиенты DHCP-сервера)
- IDS (статистика "обнаружения вторжений")
Именно из этой статистики было определено (напомню, что спецификации устройства пока нет на сайте компании D-Link), что устройство имеет 128 Мбайт оперативной памяти, поддерживает до 12000 одновременных соединений, позволяет устанавливать 100 IPSec-туннелей, 100 PPP-соединений и использовать до 500 правил фильтрации файрвола.
В заключение скажу, что применение настроек не происходит до момента их сохранения — то есть можно сначала внести все необходимые соединения, а затем включить новые настройки разом. Но сохранение конфигурации, как оказалось, является не очень простой задачей для неподготовленного пользователя. После выполнения "сохранения настроек" для их окончательного применения и запоминания необходимо зайти на WEB-интерфейс устройства в течение определенного промежутка времени (его также можно задать). Сделано это, судя по всему, для того, чтобы случайно не изменить настройки удаленного устройства так, что сам администратор потеряет к нему доступ. По истечении этого промежутка времени, в случае если администратор не зашел на интерфейс устройства, возвращаются первоначальные настройки.
Мне пришлось сразу сменить IP-адрес LAN-интерфейса устройства, но он не менялся до тех пор, пока я не менял адрес своего подключения и не заходил на WEB-интерфейс, причем сделать это было нужно в течение ограниченного промежутка времени (по умолчанию 30 с. — этого явно может не хватить на то, чтобы сменить IP-адрес соединения и снова зайти на WEB-интерфейс).
Тестирование производительности
Тестирование проводного сегмента
Тестирование проводилось по этой методике
Максимальная скорость: 67,90 Мбит/с — достаточно высокий показатель. В полнодуплексном режиме скорость трафика несколько снижается, а скорость в направлении WAN->LAN становится существенно ниже скорости в направлении LAN->WAN.
Посмотрим, как ведет себя трафик при уменьшении размера пакетов:
Тестирование NetPIPE
Максимальная скорость: 76,45 Мбит/с. При увеличении размера передаваемого блока данных, скорость сначала возрастает, некоторое время держится максимума, а затем заметно падает (с ~70 Мбит/с до ~40 Мбит/с) — аномальное поведение.
Доступность
Средняя розничная цена на рассматриваемое в статье устройство на последний момент: Н/Д(0)
Выводы
Рассмотренное устройство имеет достаточно широкие функциональные возможности, часть которых (VPN-сервер, шейпинг трафика и др.) будет рассмотрена в следующих обзорах.
Устройство является достаточно новым — на сайте D-Link его описание пока отсутствует.
По своей функциональности устройство является маршрутизатором с более широкими возможностями настройки (если сравнивать его с "обычными" NAT-маршрутизаторами). Настройка устройства может осуществляться только через WEB-интерфейс, который позволяет производить достаточно гибкую настройку устройства, но за счет этого достаточно сложен — на то, чтобы привыкнуть к работе с ним может потребоваться немало времени.
При проверке работы WEB-интерфейса в различных браузерах, было обнаружено, что в Opera браузер работает некорректно. В InternetExplorer и Mozilla FireFox проблем с интерфейсом настройки не возникало.
Консольный интерфейс устройства не позволяет производить настройку устройства — через него возможен только сбор информации и сброс настроек.
При увеличении блока передаваемых данных, скорость трафика заметно снижается, что является аномальным поведением.
Плюсы:
- Гибкость интерфейса настройки
- Широкие возможности настройки файрвола
- Возможность работы с политиками маршрутизации
- Наличие в устройстве 3-х VPN-серверов (IPSec, PPTP, L2TP)
- Возможность обнаружения и предотвращения вторжений
- Возможность шейпинга трафика
Минусы:
- Невозможность отключения аппаратного MAC-адреса на интерфейсах устройства
- Сложность WEB-интерфейса
- Невозможность настройки через консольный интерфейс
- Заметное снижение производительности при увеличении блоков передаваемых данных
- Отсутствие описания расширенных настроек ("Advanced Settings") в документации