The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Защита wi-fi трафика в домашней сети с использованием IPSec (wireless wlan ipsec security freebsd crypt tunnel)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: wireless, wlan, ipsec, security, freebsd, crypt, tunnel,  (найти похожие документы)
From: Anton Karpov <toxa at cterra.ru> Newsgroups: email Date: Mon, 13 Sep 2004 14:31:37 +0000 (UTC) Subject: Защита wi-fi трафика в домашней сети с использованием IPSec Типичная картина - есть домашний роутер на FreeBSD, предоставляющий доступ в интернет машинам маленькой домашней локалки. Один из клиентов - лаптоп с wi-fi картой, получающий доступ в сеть через соедиенный с роутером Access Point. Не будем в сто первый раз упоминать про недостатки WEP, а также про то, что часто предлагаемая альтернатива - IPSec-туннель между беспроводным клиентом и шлюзом (роутером). Просто настроим все это. Пусть клиент имеет адрес 192.168.1.3, внутренний адрес нашего роутера a.k.a. шлюза в интернет - 192.168.1.1, адрес точки доступа (AP) не играет здесь никакой роли - для него все будет прозрачно. С учетом нашей ситуации (маленькая сеть, один-два беспроводных клиента), мы не будем использовать key exchange демоны (racoon, isakmpd), а пропишем ключевые фразы руками. Сервер: ------- ~# echo 'ipsec_enable="YES"' >> /etc/rc.conf ~# cat > /etc/ipsec.conf # flush previous SAD & SPD flush; spdflush; # Security Association Database # For ESP add 192.168.1.1 192.168.1.3 esp 1011 -E 3des-cbc "myveryverysecretpassphrase"; add 192.168.1.3 192.168.1.1 esp 1012 -E 3des-cbc "myveryverysecretpassphrase"; # For AH add 192.168.1.1 192.168.1.3 ah 1234 -A hmac-md5 "verysecrettoo"; add 192.168.1.3 192.168.1.1 ah 1235 -A hmac-md5 "verysecrettoo"; # Security Policy Database spdadd 192.168.1.3 0.0.0.0/0 any -P in ipsec esp/tunnel/192.168.1.3-192.168.1.1/require ah/tunnel/192.168.1.3-192.168.1.1/use; spdadd 0.0.0.0/0 192.168.1.3 any -P out ipsec esp/tunnel/192.168.1.1-192.168.1.3/require ah/tunnel/192.168.1.1-192.168.1.3/use; ^D Если у нас FreeBSD 4.x: ~# reboot Или, с учетом того, что ipsec стартует нехитро, как можно убедиться из rc.network: case ${ipsec_enable} in [Yy][Ee][Ss]) if [ -f ${ipsec_file} ]; then echo ' ipsec: enabled' setkey -f ${ipsec_file} else echo ' ipsec: file not found' fi ;; esac просто выполняем: ~# setkey -f /etc/ipsec.conf В случае FreeBSD 5.x/6.x вообще все просто: ~# /etc/rc.d/ipsec start Тем самым, мы загрузили правила, указывающие применять протоколы AH (Authention Header) и ESP (Encapsulated Security Payload) для всех пакетов, проходящих через нас от клиента или к нему. Файл состоит из двух частей - описания правил ассоциации (ЧТО использовать) и политики ассоциации (КАК использовать). В нашем случае видно, что использование ESP обязательно (require), тогда как AH - по желанию (use). Парольные фразы - ключи, на основе которых генерируются сессионные ключи для шифрования информации. Замечу, что если эти действия выполняются удаленно, например, по ssh, с того самого беспроводного клиента, то можно потерять с ним связь, так как он (клиент) еще не настроен. Be careful. Клиент: ------- В моем случае клиентом также является FreeBSD-машина, возможно, это не так интересно с точки зрения настройки (например, если вы предпочитаете узнать, как настроить Windows NT в качестве клиента), но увы - у меня FreeBSD и на лаптопах тоже. В этом случае конфигурация клиента будет отличаться только парой записей в ipsec.conf: # flush previous SA & SP flush; spdflush; # Security Association rules # For ESP add 192.168.1.1 192.168.1.3 esp 1011 -E 3des-cbc "myveryverysecretpassphrase"; add 192.168.1.3 192.168.1.1 esp 1012 -E 3des-cbc "myveryverysecretpassphrase"; # For AH add 192.168.1.1 192.168.1.3 ah 1234 -A hmac-md5 "verysecrettoo"; add 192.168.1.3 192.168.1.1 ah 1235 -A hmac-md5 "verysecrettoo"; # Security Policy rules spdadd 0.0.0.0/0 192.168.1.3 any -P in ipsec esp/tunnel/192.168.1.1-192.168.1.3/require ah/tunnel/192.168.1.1-192.168.1.3/use; spdadd 192.168.1.3 0.0.0.0/0 any -P out ipsec esp/tunnel/192.168.1.3-192.168.1.1/require ah/tunnel/192.168.1.3-192.168.1.1/use; Нетрудно заметить, что поменялось направление: 0.0.0.0/0 192.168.1.3 стало "IN" (т.е. это означает, что необходимо принимать трафик от всех как зашифрованный, что вполне логично - это будет трафик, отмаршрутизированный шлюзом), а 192.168.1.3 0.0.0.0/0 стало "OUT" (т.е. "шифровать все, что уходит на какой-либо хост от меня", т.к. согласно маршрутизации все пойдет на шлюз). Убедиться в том, что ни один пакет не остался "голым", можно с помощью tcpdump: 22:10:14.747551 IP 192.168.1.1 > 192.168.1.3: AH(spi=0x000004d2,seq=0x19d3): IP truncated-ip - 68 bytes missing! 192.168.1.1 > 192.168.1.3: ESP(spi=0x000003f3,seq=0x19d3) (ipip-proto-4) 22:10:14.815396 IP 192.168.1.1 > 192.168.1.3: ah 22:10:14.815707 IP 192.168.1.3 > 192.168.1.1: AH(spi=0x000004d3,seq=0x1b18): IP 192.168.1.3 > 192.168.1.1: ESP(spi=0x000003f4,seq=0x1b18) (ipip-proto-4) Честно говоря, я не до конца понимаю великий смысл строчек про truncated-ip, потери производительности или каких-либо других проблем я не заметил. Возможно, это связано с тем, что на лаптопе я использую -CURRENT.

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ RSS ]
  • 1, Админ (?), 17:12, 05/04/2007 [ответить]  
  • +/
    Эти русские - отъявленные ребята! А что, в лэптопах уже Ethernet-карт не делают? Надо обязательно светить свой трафик на весь окружающий район? И аутентификации не надо, да? А про атаку "Человек посередине" в wi-fi аффтар ничего не слышал? Ню-ню....
     
     
  • 2, Ice (?), 09:53, 14/08/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Да просто жуть какие отъявленные, даже страшно.
    И только потому что предпочитают свободу перемещения без шнура за собой :)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру