The OpenNET Project / Index page

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

IpSec соединение между FreeBSD и Windows 2000 (ipsec vpn win freebsd security)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: ipsec, vpn, win, freebsd, security,  (найти похожие документы)
From: Станислав Лапшанский Subject: IpSec соединение между FreeBSD и Windows 2000 Защищенное соединение между FreeBSD и Windows 2000 Оригинал: http://slapsh.region.kostroma.net/forum/viewtopic.php?topic=45&forum=4&0 Предисловие переводчика Тема использования протокола IPSec для соединения узлов сети, использующих в качестве операционной системы FreeBSD, вызвала повышенный интерес, который даже стал для меня несколько неожиданным. Однако, немного поразмыслив и получив несколько писем от читателей, я пришел к выводу что тему обязательно следует продолжить следующим переводом, описывающим процесс создания защищенного соединения между Windows 2000 и FreeBSD (оригинал опубликован на сайте www.daemonews.org по адресу http://www.daemonnews.org/200101/ipsec-howto.html, авторами являются Josh Tiefenbach и Boris Koester). К недавно вышедшей Windows XP материал относится в полной мере (нюанс -- к Professional редакции, за Home Edition я ручаться не могу). Надеюсь теперь ваша информация станет менее доступной для любопытных глаз. Использование IPSec в среде Windows 2000 и FreeBSD Это возможно. Однако, в связи с тем, что установка ручного обмена ключами с Windows-машиной невозможна, вам обязательно придется использовать racoon для автоматического обмена. Вы должны иметь в виду, что реализация IPSec для Windows 2000 имеет ряд ограничений (меньше алгоритмов шифрования, короче максимальная длина ключей) по сравнению с реализацией FreeBSD и поэтому она обеспечивает не такую высокую степень защиты как FreeBSD (на мой взгляд это просто традиционный плевок в сторону Microsoft, так как для практических целей эти ограничения не так уж важны -- прим. переводчика). Для того что бы организовать такое соединение вы должны первым делом скачать <<High encryption pack for Windows 2000>>. Этот пакет необходим во многих странах для включения в Windows 2000 алгоритма шифрования 3DES. Если вы НЕ установите это дополнение, то вы не сможете подключиться к FreeBSD-серверу и единственным, чего вы добьетесь, будет таймаут. <<High encryption pack for Windows 2000>> можно бесплатно скачать с сайта Microsoft. Настройте FreeBSD как было рассказано в предыдущей статье, перекомпилируйте ядро включив туда IPSec, добавьте записи в таблицу SAD используя setkey, сконфигурируйте и запустите racoon. В начале вам следует сконфигурировать основные параметры соединения используя setkey и тогда уже можно запустить racoon. Вы не должны запускать racoon прежде чем проведете базовую конфигурацию. Теперь сосредоточимся на установке параметров, специфичных для соединения с Windows 2000. Посмотрим на конфигурационный файл, мы назовем его my-racoon.conf. Нам придется внести в него некоторые изменения по сравнению с оригинальным файлом racoon.conf. Мы должны еще раз подчеркнуть важность использования самой последней версии racoon. Racoon развивается очень быстро и между выпусками новых версий удаляется большое количество ошибок и недочетов. Пара слов относительно строки <<log debug4;>> (т.е. в системный журнале будет большое количество сообщений о процессе работы защищенного соединения -- прим. переводчика). Основной задачей этого руководства является получение работающего защищенного соединения. Если оно заработает, тогда мы можем начать оптимизацию конфигурации и поменять эту строку на менее многословный вариант (например <<log "info";>>). Итак файл my-racoon.conf: path pre_shared_key "/usr/local/etc/psk.txt" ; log debug4; { maximum_length 20; randomize off; strict_check off; exclusive_tail off; } { counter 5; # maximum trying count to send. interval 20 sec; # maximum interval to resend. persend 1; # the number of packets per a send. phase1 30 sec; phase2 15 sec; } remote anonymous { exchange_mode aggressive,main; doi ipsec_doi; situation identity_only; nonce_size 16; lifetime time 1 min; # sec, min, hour lifetime byte 5 MB; # B, KB, GB initial_contact on; support_mip6 on; proposal_check obey; # obey, strict or claim #Очень важно установить 3DES для шифрования и #MD5 для подсчета контрольной суммы proposal { encryption_algorithm 3des; hash_algorithm md5; authentication_method pre_shared_key ; dh_group 2 ; } } sainfo anonymous { pfs_group 1; lifetime time 36000 sec; lifetime byte 50000 KB; encryption_algorithm 3des,des,cast128,blowfish ; authentication_algorithm hmac_sha1,hmac_md5; compression_algorithm deflate ; } Одно слово относительно параметров <<времени жизни>> (lifetime). Меньшее <<время жизни>> улучшает защищенность вашего соединения. Это происходит от того, что ключи используемые для симметричного шифрования трафика меняются чаще. В результате этого уменьшается вероятность взлома защиты вашего соединения. Вот тут вступают в действие ограничения Windows 2000. Вы не сможете задать слишком маленькое <<время жизни>>. При задании параметра <<время жизни>> следует помнить, что чем оно меньше, тем больше служебной информации будет идти по вашему каналу и тем меньше будет его пропускная способность для данных пользователя, так же при этом нельзя забывать о излишней загрузке процессора, из-за обмена ключами. Не забудьте создать <<секретный файл>> с разделенными ключами (т.е. файл /usr/local/etc/racoon/psk.txt -- прим. переводчика). Преимуществами демона racoon являются снятие с пользователя забот о подсчете длины пароля, а так же возможность наличия у пользователя только одного ключа и для аутентификации, и для шифрации данных. Дело в том, что Windows 2000 не может использовать два разных ключа для этих процедур -- она не делает различия между аутентификационным и шифровальным ключом. Для целей отладки запустим racoon следующим образом: racoon -F -v -f my-racoon.conf Таким образом racoon не демонизируется и будет выдавать отладочную информацию прямо на экран, для того что бы мы могли быстро идентифицировать распространенные проблемы. На Windows-машине надо проделать следующие операции: o Запустить <<Start>> -> <<Run>>, там набрать <<mmc.exe>> и нажать <<Enter>>. Войти в меню <<Console>>, затем в <<Add/Remove Snap in>>. Добавить <<IP Security Policy Management snap-in>>. o Кликнуть на <<IP Security Policies>>, затем выбрать <<Action>>, в меню <<Create IP Security Policy>>. o Следуйте пунктам мастера. o Отключите галочку на <<Activate the default response rule>> o Поставьте галочку на <<Edit properties>> o Нажмите <<Add>>. Отвечайте на вопросы мастера. o Выберите <<The rule does not specify a tunnel>> o Выберите <<LAN>> o Выберите <<Use this string to protect the key exchange (preshared key). Впишите туда тот же ключ что и в psk.txt o Далее создайте новый <<IP Filter List>>, где <<target>> будет <<My computer>>, а <<destination>> -- IP-адрес FreeBSD машины. Выберите созданный список и нажмите <<Next>> o Выберите <<Require security>>. Нажмите <<Edit>>, затем удалите из списка пункты, где <<ESP Integrity>> равно <<SHA1>> и пункт <<ESP Confidentiality>> равен <<DES>>. Далее нажмите кнопку <<Edit>> и, далее, выберите пункт <<Custom>> и кнопку <<Settings>>, после чего убедитесь, что пункт <<Data and address for this custom security (AH)>> отключен, а галочка <<Data integrity and encryption (ESP)>>, в свою очередь поставлена. Для тестирования уберите галочки над пунктами <<Session key settings>>, по его окончании вы сможете их вернуть. Нажимая кнопку <<OK>> вернитесь в <<Security Rule Wizard>>. Нажмите <<Next>> и <<Finish>>, а затем кнопку <<Close>> o Перезапустите сервис <<IPSec policy agent>> в панели управления службами (<<Control Panel>> -> <<Administrative Tools>> -> <<Services>>). (Следует отметить что Windows 2000 SP2 не требует перезапуска службы -- прим. переводчика). o Щелкните на вновь созданной политике правой кнопкой мыши и в появившемся контекстном меню выберите <<Assign>> для активирования политики. o Запустите программу <<ipsecmon.exe>>. При помощи этого инструмента вы сможете отслеживать работу IPSec на Windows-машине. o Запустите сеанс командной строки и при помощи утилиты ping пошлите на FreeBSD-машину запрос. Первый запрос должен не выполниться по причине <<переговоров>> о безопасности (<<Negotiating IP Security>>). Следующие пакеты должны успешно дойти. Во время посылки запросов на терминале FreeBSD должно появиться большое количество отладочной информации. В данный момент весь трафик между FreeBSD и Windows 2000 шифруется (ура -- прим. переводчика). На Windows-машине вы можете убедиться в этом используя утилиту <<ipsecmon.exe>>, а на FreeBSD по большому количеству отладочной информации мелькающей на экране. На FreeBSD-машине вы можете попробовать запустить утилиту <<tcpdump>>: tcpdump -i ed0 -x -X -s 14400 Где ed0 это название сетевого интерфейса, который предполагается прослушивать. Вы сможете увидеть обмен IKE-ключами между Windows 2000 и racoon, а так же зашифрованные ESP-пакеты. Если у вас возникли проблемы с организацией IPSec соединения, попробуйте обратиться к соответствующим спискам рассылки, существующим на сайте www.freebsd.org. Там можно получить массу дельных советов.

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

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




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

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