Управление IPSec VPN

                                                             Вы   можете  устанвить  виртуальную  частную  сеть  (VPN),   используя   встроенные инструменты IPsec, OpenSSH и некоторые другие. Однако, с учётом относительно низкого уровня безопасности беспроводных сетей  в целом, вы,  вероятно, захотите настроить

некоторые дополнительные возможности безопасности.

SSH – если ваш VPN основан на SSH тунелях, базовый набор правил уже содержит всё что  вам  нужно.  Для  пакетного  фильтра,  ваш   туннелированный  трафик  не  будет отличаться от всего остального трафика SSH.

IPsec с UDP ключами обмена (IKE/ISAKMP) – несколько вариантов IPsec зависят от обмена ключами на порту 500 протокола UPD и используют порт 4500 протокола UDP для

NAT траверса (NAT-T). Вам необходимо разрешить прохождение этого трафика, для того,

чтобы установить потоки. Практически во всех реализациях есть критическая зависимость от разрешения трафика протокола ESP (протокол номер 50) между хостами:

pass proto esp from $source to $target

Фильтрация на интерфейсах инкапсуляции IPsec – при правильной настройке IPsec, вы можете настроить фильтрацию PF для интерфейса  инкапсуляции enc0 следующим образом4:

pass on enc0 proto ipencap from $source to $target keep state (if-bound)

Смотрите Приложение А для получения большей информации о данном вопросе.

На стороне клиента                                                                  Для  BSD  клиентов  настройка  очень  простая.  Этапы  подключения  BSD  машины  к беспроводной сети очень похожи на те, которые мы делали для настройки беспроводной точки   доступа.   На   OpenBSD   конфигурация   центрируется   на   файле   hostname.if беспроводного  интерфейса.  В  FreeBSD  в  основном  работают  с  rc.conf,  но  придётся

работать и с некоторыми другим файлами, в зависимости от конкретной конфигурации.

Установка клиента на OpenBSD                                              Начнём со случае OpenBSD. Для того, чтобы подключиться к созданной нами WEP точке доступа,    ваши    клиенты    должны    использовать    файл     hostname.if    (например

/etc/hostname.ral0) со следующим содержимым:

up media autoselect mode 11g chan 1 nwid unwiredbsd nwkey 0x1deadbeef9 dhcp

Первая строка устанавливает параметры канального уровня с рядом  требуемых  опций. Вообще обязательны только параметры up, nwid и nwkey. В большинстве случаев, драйвер будет ассоциировать с точкой доступа  соответствующий канал и лучший из доступных режимов. Вторая строка  вызывает конфигурирование DHCP, и на практике приводит к запуску команды dhclient для получания команды о конфигурации TCP/IP.

Если вы решили использовать конфигурацию WPA, файл должен выглядеть так:

up media autoselect mode 11g chan 1 nwid unwiredbsd wpa wpapsk `wpa-psk unwiredbsd 0x1deadbeef9` dhcp

И снова, первая строка устанавливает параметры канального уровня, где обязательными являются  выбор  сети  и  параметры  шифрования  nwid,  wpa   и   wpapsk.  Вы  можете попробовать  опустить  параметры  mode  и  chan;  в  большинстве  случаев  они  будут ассоциированы     автоматически.     Если      вы      хотите     попробовать     произвести конфигурирование    из    командной    строки    до    создания    файла    конфигурации

/etc/hostname.if, команды для установки клиента WEP сети должны выглядеть так:

$ sudo ifconfig ral0 up mode 11b chan 1 nwid unwiredbsd nwkey 0x1deadbeef9

Команда должна завершиться без какого либо вывода. Затем, вы можете использовать ifconfig для проверки настройки интерфейса. Вывод должен выглядеть примерно так:

$ ifconfig ral0

ral0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:25:9c:72:cf:60

priority: 4 groups: wlan

media: IEEE802.11 autoselect (OFDM54 mode 11g) status: active

ieee80211: nwid unwiredbsd chan 1 bssid 00:25:9c:72:cf:60 nwkey <not displayed> 100dBm inet6 fe80::225:9cff:fe72:cf60%ral0 prefixlen 64 scopeid 0x2

Обратите  внимание, что  строка  ieee80211 отображает имя  сети  и  канал,  а  так  же некотрые   дополнительные   параметры.   Информация    отображённая    здесь   должна соответствовать той которую вы ввели в предыдущей команде ifconfig.

Теперь рассмотрим команду для конфигурирования OpenBSD клиента на работу с сетью WPA:

$ sudo ifconfig ral0 nwid unwiredbsd wpa wpapsk `wpa-psk unwiredbsd 0x1deadbeef9`

4.   В OpenBSD 4.8 интерфейс инкапсуляции стал клонируемым интерфейсом, и вы можете настроить  несколько отдельных интерфейсов enc. Все интерфейсы enc становятся членами группы интерфейсов enc

Команда, так же должна завершиться без вывода. Если вы снова используете ifconfig для проверки статуса интерфейсов, вывод должен быть похож на следующий:

$ ifconfig ral0

ral0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 lladdr 00:25:9c:72:cf:60

priority: 4 groups: wlan

media: IEEE802.11 autoselect (OFDM54 mode 11g) status: active

ieee80211: nwid unwiredbsd chan 1 bssid 00:25:9c:72:cf:60 wpapsk <not displayed> wpaprotos wpa1,wpa2 wpaakms psk wpaciphers tkip,ccmp wpagroupcipher tkip 100dBm inet6 fe80::225:9cff:fe72:cf60%ral0 prefixlen 64 scopeid 0x2

Проверьте, что строка ieee80211 отображает корректное имя сети и параметры WPA.

Когда ваши  интерфейсы удовлетворительно сконфигурированы на  канальном  уровне, используйте команду dhclient для конфигурирования TCP/IP, примерно так:

$ sudo dhclient ral0

Команда  dhclient  должна  вывести  итоговый  диалог  с  DHCP  сервером   примерно следующего вида:

DHCPREQUEST on ral0 to 255.255.255.255 port 67

DHCPREQUEST on ral0 to 255.255.255.255 port 67

DHCPACK from 10.50.90.1 (00:25:9c:72:cf:60) bound to 10.50.90.11 — renewal in 1800 seconds.

Настройка FreeBSD                                                                   На FreeBSD, вам может понадобиться сделать немного больше работы чем на OpenBSD. В зависимости    от    конфигурации    ядра,    вам    может    быть    необходимо    добавить соответствующие  строки   в   /boot/loader.conf.  На   одной   из   моих   тестовых  систем

/boot/loader.conf выглядел так:

if_rum_load="YES" wlan_scan_ap_load="YES" wlan_scan_sta_load="YES" wlan_wep_load="YES" wlan_ccmp_load="YES" wlan_tkip_load="YES"

После   загрузки   необходимых   модулей,   вы   можете   подключиться   к   WEP   сети сконфигурированной ранее используя следующую команду:

$ sudo ifconfig wlan create wlandev rum0 ssid unwiredbsd wepmode on wepkey 0x1deadbeef9 up

Затем выполнить:

$ sudo dhclient wlan0

Для  более  удобной  конфигурации  создайте  файл  start_if.rum0  (замените  rum0  на соответствующее имя физического интерфейса) с примерно следующим содержимым:

wlans_rum0="wlan0"

create_args_wlan0="wlandev rum0 ssid unwiredbsd wepmode on wepkey 0x1deadbeef9 up" ifconfig_wlan0="DHCP"

Если  вы  подключаетесь  к  WPA  сети,  вам  необходимо  установить  wpa_supplicant  и соответственно изменить настройки вашего интерфейса. Для соединения с точкой доступа WPA используйте следующую конфигурацию файла start_if.rum0:

wlans_rum0="wlan0" create_args_wlan0="wlandev rum0" ifconfig_wlan0="WPA"

Вам так же необходим файл /etc/wpa_supplicant.conf следующего содержимого:

network={ ssid="unwiredbsd" psk="0x1deadbeef9"

}

Наконец, добавьте строку ifconfig_wlan0 в rc.conf для корректного запуска dgclient.

ifconfig_wlan0="DHCP"

Другие  сети  WPA  могут  потребовать  дополнительных  опций.  После   завершения конфигурации вывод ifconfig должен выглядеть примерно так:

rum0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 2290 ether 00:24:1d:9a:bf:67

media: IEEE 802.11 Wireless Ethernet autoselect mode 11g status: associated

wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether 00:24:1d:9a:bf:67

inet 10.50.90.16 netmask 0xffffff00 broadcast 10.50.90.255 media: IEEE 802.11 Wireless Ethernet OFDM/36Mbps mode 11g status: associated

ssid unwiredbsd channel 1 (2412 Mhz 11g) bssid 00:25:9c:72:cf:60 country US authmode WPA2/802.11i privacy ON deftxkey UNDEF

TKIP 2:128-bit txpower 0 bmiss 7 scanvalid 450 bgscan bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS roaming MANUAL

Источник: Книга о PF, by Peter N.M. Hansteen, Перевод выполнил Михайлов Алексей aka iboxjo

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий