VPN просто

VPN просто

В настоящее время у нас есть несколько вариантов создания VPN. Мы можем использовать проприетарный VPN (например, от Cisco ), мы можем использовать IPSec (либо напрямую из ядра 2.6, либо FreeS / WAN) или какой-нибудь открытый VPN, который не использует IPSec.

Проприетарные решения обычно относительно дороги и больше подходят для более крупных развертываний. IPSec, с другой стороны, значительно дешевле, но его настройка непроста, и у него есть проблемы с использованием NAT.

Проект OpenVPN принадлежит к группе VPN с открытым исходным кодом, которая не использует IPSec. Вместо этого используется SSL / TLS. К его основным достоинствам можно отнести:

  • Поддержка многих платформ — Linux, Solaris, OpenBSD, FreeBSD, NetBSD, Mac OS X и Windows 2000 / XP.
  • Вся программа работает в пользовательском режиме, поэтому нет необходимости исправлять ядро ​​(при условии, что у вас включена поддержка устройств TUN / TAP)
  • Поддержка 1: 1 (туннель) или N: 1 (режим клиент / сервер)
  • Возможность использовать общий ключ и / или SSL-сертификаты
  • Простая настройка и отличные журналы
  • Безопасность
  • Белый IP адрес
  • Высокая стойкость при использовании на некачественных стропах
  • Дополнительное сжатие
  • Поддержка прокси HTTP и SOCKS. Это особенно выгодно для режима RoadWarrior, так что клиент может подключиться практически из любого места.
  • и многое другое…

Когда дело доходит до безопасности, OpenVPN может многое. Поддерживаются режимы общего ключа или использование SSL / TLS с сертификатами X.509. Для каждого направления связи можно использовать разные клавиши. Также можно установить размер окна воспроизведения, что снижает вероятность взлома при воспроизведении отправленных данных. Разумеется, использование любых алгоритмов шифрования, поддерживаемых используемой библиотекой SSL.

OpenVPN по умолчанию использует протокол UDP, но также можно использовать TCP (включая упомянутое использование прокси HTTP и SOCKS). Все коммуникации происходят через один порт, поэтому вы можете легко настроить брандмауэр, чтобы разрешать только пакеты на этот порт. Пакеты также могут проходить через различные NAT и маскарады.

Весь демон OpenVPN работает в пользовательском режиме и взаимодействует через интерфейс TAP или TUN. Созданные таким образом интерфейсы передают все полученные данные непосредственно пользовательскому процессу, который, таким образом, может действовать как сетевая карта. Это избавляет от необходимости перекомпилировать ядро ​​(поддержка устройств TUN и TAP доступна в большинстве дистрибутивов), уменьшая при этом зависимость от платформы.

Установить OpenVPN очень просто. Загрузите пакет tgz с веб-сайта проекта, распакуйте и используйте трио ./configure, make и make install. Если мы хотим использовать сжатие, у нас должна быть установлена библиотека LZO . Пакет также включает сценарий запуска sample-scripts / openvpn.init, который можно загрузить в /etc/init.da и добавить с помощью chkconfig –add openvpn. Затем этот сценарий проходит через каталог / etc / openvpn при запуске и запускает демон OpenVPN для всех найденных файлов conf. Для работы OpenVPN желательно создать собственного пользователя. OpenVPN также может быть заблокирован.

Также кратко упомяну об установке в Windows. Это также очень просто, просто скачайте нужный пакет (для версии 2.0beta я рекомендую beta7, более новые иногда меня раздражают) и запустите его. Установка добавит сетевое устройство Virtual TAP (я рекомендую переименовать его соответствующим образом) и добавит службу OpenVPN. На этом установка завершена, и после создания файла конфигурации вы можете с радостью открытьVPNkk 🙂 При желании вместо службы Windows вы также можете установить программу с графическим интерфейсом OpenVPN GUI , которая находится в области уведомлений, чтобы пользователь мог лучше видеть все запущенные и неработающий VPN.

Сначала мы покажем вам, как создать простой туннель между двумя машинами Linux с использованием общего ключа. Это сценарий, аналогичный описанному в  этой статье . У нас есть две машины Linux (с обязательным IP 1.2.3.4 и 5.6.7.8), между которыми нормально работает IP-связь. Мы хотим создать зашифрованный и сжатый туннель с общим ключом между этими машинами. Туннель может быть даже не зашифрован.

Сначала мы используем openvpn –genkey –secret /etc/openvpn/secret.key для генерации общего ключа. Затем мы перенесем его на другой компьютер безопасным способом. Затем создайте следующий файл конфигурации /etc/openvpn/vpn.conf на компьютере 5.6.7.8:

удаленный 1.2.3.4
ifconfig 10.0.0.2 255.255.255.0
порт 5001
поэтому udp
dev tap0
секрет /etc/openvpn/secret.key
пинг 10
comp-lzo
глагол 5
немой 10
пользователь openvpn
группа openvpn

Мы отправим этот файл конфигурации (желательно снова безопасным способом) на компьютер 1.2.3.4, изменим в нем строки remote и ifconfig

удаленный 5.6.7.8
ifconfig 10.0.0.1 255.255.255.0

и запустите /etc/rc.d/init.d/openvpn start на обоих компьютерах. Другие устройства tap0 с выбранными IP-адресами появятся в системах. Вся связь между ними затем прозрачно шифруется и / или сжимается. Да, это действительно так просто 🙂

Хотя настройки очевидны и каждый, безусловно, любит выводить все для своей домашней работы, я кратко опишу отдельные параметры. Параметр remote указывает другую сторону VPN, адрес ifconfig и сетевую маску виртуального сетевого интерфейса. Порт и поэтому пожалуй действительно в комментариях не нуждаются. Параметр dev указывает тип и номер виртуального интерфейса,

секрет Имя файла общего ключа. Для этого файла должны быть
установлены права, чтобы только пользователь, под которым
работает OpenVPN, мог получить к нему доступ. Опция ping определяет интервалы
проверки активности ping, comp-lzo включает сжатие, а параметры verb и
mute определяют ведение журнала. И наконец пользователь и группа

они определяют, с какими эффективными правами должен работать демон. Более подробное описание параметров вы найдете в документации.

Мы можем перенаправить любой сетевой трафик в созданный таким образом туннель. OpenVPN автоматически восстанавливает неудачное соединение, поэтому нет необходимости перезапускать все после отказа линии. При тестировании OpenVPN показал очень достойные результаты. При создании VPN между двумя компьютерами в локальной сети 100 Мбит скорость передачи достигла почти тех же значений, что и без использования VPN. Кроме того, все сервисы работали полностью без проблем (включая совместное использование файлов MS, что для подобных сетевых заклинаний довольно сложно).

Adblock
detector