VPN
Главными достоинствами создания VPN на
основе vtun являются простота в установке, гибкость настройки и
отличная документация. Vtun достаточно хорошо защищает передаваемые
данные от атак основанных на действиях злоумышленника находящегося
между двумя конечными машинами туннеля. Этот тип атак обычно называют MIM (Men In the Middle)
или "человек посредине". Чаще всего злоумышленник пытается выполнить
одно или комплекс из следующих действий - измененить содержимого
передаваемых пакетов, повторно проиграть записанную последовательность
пакетов, выдать себя за одну из сторон участвуюших в передаче данных.
Поддерживаются разнообразные типы VPN туннелей IP, Ethernet, PPP, SLIP.
В качестве туннеля можно использовать даже pipe и TTY
.

Для шифрования потока данных используется OpenSSL. Доступны
криптографические алгоритмы blowfish с ключом в 128 бит или MD5 с
ключом той же длины. Компрессия потока передаваемых данных (data flow
compression) производится с помощью библиотек LZO или zlib. Следует
отметить, что zlib работает только с tcp туннелями. Если в Вашей
операционной системе нет библиотек zlib или LZO, и Вы не смогли
установить их самостоятельно, значит прийдется отключить компрессию.
Это снизит скорость передачи данных, но все же не окажет решающего
влияния на работу vtun.
Официально vtun работает на многих
Unix системмах. Документально подтверждено беспроблемное
функционирование на следующих операционных системах: Linux, Solaris,
FreeBSD, NetBSD, OpenBSD и другие BSD клоны. В принципе, vtun должен
работать на любой платформе, для которой есть универсальный драйвер
tun/tap. Но несмотря на то что tun/tap драйвер есть и для Windows
запустить на этой платформе пока еще не удалось.
Устройство tun
используется для туннелирования IP фреймов, а tap соответственно для
Ethernet фреймов. С помощью tun/tap пользовательские программы получают
возможность самостоятельно обрабатывать IP пакеты. Для некоторых
операционных систем необходимо перекомпилировать ядро с поддержкой
tun/tap устройств. Vtun работает на основе клиент-серверной модели.
Соответственно, для создания туннеля на одном из хостов, демон vtun
должен быть запущен как сервер, а на другом как клиент. Если между
клиентом и сервером находится брандмауэр (firewall), значит необходимо
разрешить прохождение пакетов, адресованных на порт 5000.