Интернет Windows Android

Openvpn технология. TAP-Windows Adapter V9 что это такое и как удалить? Развертывание OpenVPN на Mikrotik



Последнее время всех будоражит вопрос настройки VPN. Если раньше о существовании VPN (Virtual Privat Network) знали системные администраторы, программисты и продвинутые пользователи, то сейчас эта аббревиатура у всех на устах. Каждый хочет настроить его, использовать для доступа к заблокированным сервисам или социальным сетям. А некоторым просто интересно, что это за зверь такой. Что же на самом деле собой представляет этот загадочный VPN? Если в двух словах, то с помощью VPN создается учacтoк ceти к кoтopoму имeeтe дocтуп тoлькo вы. Вся информация проходит через провайдера или какую-либо другую третью точку доступа, но в зашифрованном виде по специально созданному между сервером и вашим компьютером виртуальному каналу. Потом уже сервер от имени пользователя начинает путешествовать по интернету.

Таким образом, создается "тоннель" между компьютером и сервером, в котором вся информация зашифрована, и провайдер не понимает, на какой сайт переходит пользователь. Хакеры не смогут украсть ваши данные даже при подключении к публичному Wi-Fi, а история посещения сайтов будет доступна только вам.

Для чего нужен VPN

Прежде всего он необходим для анонимных действий в Интернете, для сокрытия вашего реального IP-адреса. Мне, например, не нравится, что любой системный администратор моего провайдера может при желании узнать, какие сайты посещаю, что покупаю и главное - как и чем расплачиваюсь. Также каждого беспокоит безопасность и конфиденциальность файлов. VPN-протоколы используют несколько протоколов шифрования (MD5-HMAC, RSA) и 2048-битные ключи позволяют осуществить параноидальное шифрование всех данных.

VPN-сервисы можно использовать для обхода блокировки провайдером или системным администратором на работе различных сайтов и социальных сетей. Некоторые сервисы ограничивают доступ в вашей стране или предоставляют скидки/привилегии/бонусы только в конкретных странах. VPN-соединение поможет вам стать резидентом этой страны и пользоваться сервисом в своё удовольствие. Но больше всего меня радует возможность эффективного сжатия трафика, которое позволяет компенсировать потери, а иногда даже ускорить соединение.

Почему я выбрал OpenVPN?

Когда стал вопрос о том, что мне необходим платный протокол VPN-соединения, то решил почитать немного о такой услуге, походил по сайтам и форумам, поспрашивал друзей, знакомых, системных администраторов. Большинство из них хвалили именно OpenVPN.

За почти 2 года использования я убедился, что они были правы. Протокол VPN-соединения работает без сбоев, стабильно и безопасно. Важным плюсом является наличие мобильных приложений клиента для Android, iOS, Windows 10 Mobile. Есть даже возможность использовать его без установки клиента, используя стандартные настройки VPN в Windows 10. Самое главное - шифрование моих файлов. Еще ни разу OpenVPN не подводил меня. А при наличии домашнего сервера - это один из главных плюсов при выборе VPN-клиента. Да и цена вполне приемлема. Высокое качество технической поддержки.

Настройка OpenVPN-клиента для Windows 10

Нам понадобится установочный файл клиента, который легко найти по .

Важно выбрать установщик с вашей разрядностью системы.

После того, как ваш ПК загрузит установщик, запустите его и следуйте простым указанием. Сама установка очень проста и понятна. Достаточно начальных знаний английского языка.

На Рабочем столе вашего устройства появится ярлык программы. Кликаете по нему правой кнопкой мыши и перейдите в раздел Свойства. А там нажмите на опцию Дополнительно. Нам необходимо разрешить клиенту запускаться от имени администратора. Пару манипуляций и все готово.

Теперь необходимо зайти в Проводник. Пройдя путь C:\ Program Files\ OpenVPN, откройте папку config и извлеките из полученного на почту при покупке подписки, либо скачанного из личного кабинета архива файлы с расширением .ovpn

Теперь останется только запустить снова клиент OpenVPN и подключится к нужному серверу. Несколько секунд и у вас появится VPN-соединение к примеру с местоположением в Люксембурге.

Как видите, ничего сложного. Но многие задали наверно себе вопросы: «Где брать файлы? Как их купить? Это же дорого?»

Для этого вам необходимо зарегистрироваться на сайте, которую пройти очень легко и просто.

Затем следует зайти в раздел Мои лицензии

и совершить покупку. Правда, сможете купить не меньше 10 клиентов OPenVPN, которые обойдутся вам в год всего лишь 150 долларов. Согласитесь, не так уж и дорого.

Стоит заметить, что существует и бесплатная версия OpenVPN. Заходите по ссылке freeopenvpn.org/ .

Выбираете из списка понравившийся вам VPN-сервер, скачиваете его в формате .ovpn. Запускаете клиент OpenVPN и подключаетесь к выбранному вами серверу. Только будьте готовы к тому, что бесплатный VPN-сервер-это реклама, незащищенность и нет никакого шифрования.

Какие есть альтернативы OpenVPN?

Последнее время на рынке очень много VPN-решений как платных, так и бесплатных. До OpenVPN я использовал Hotspot Shield , у которого есть также бесплатная версия и расширение для браузера Google Chrome. Бесплатная версия мне не понравилась, потому что вечно доставала меня сообщениями, что у них есть Elite версия, которая якобы лучшая в мире и т.д. Хотя из личного опыта скажу, что часто в работе данный VPN-сервис подтормаживал, защиты очень мало и плохое шифрование. База доступных IP-адресов незначительная.

Следует также обратить свое внимание и на NordVPN . У него достаточно высокая скорость и безопасность. NordVPN работает в юрисдикции Панамы, его сеть включает в себя 559 серверов, расположенных в 49 странах мира. Серверы поддерживают ряд настроек для шифрования и особого использования - например, для обмена файлами или трансляции потокового медиа-контента. Cервис поддерживает до 6 одновременных подключений, так что вы можете подключить все ваши устройства сразу.

Довольно популярный в кругу продвинутых пользователей VPN-сервис Zenmate , имеющий немецкое происхождение. Довольно качественный, быстрый в платной версии, удобная защита и шифрование. Есть бесплатное расширение для браузеров, но там всего 5 свободных каналов. Поэтому пользоваться им неудобно. Плюс он требует регистрации, а потом достает рассылкой с рекламой и предложениями купить коммерческую версию.

Наверно многие в последние дни слышали и читали о VPN-сервисе TunnelBear с логотипом прикольного медвежонка. Он тоже имеет бесплатную версию, правда с ограниченным трафиком всего 500 МБ в месяц. Очень простой в управлении, легко включить и выключить одним нажатием. Но у знакомого стоит платная версия TunnelBear и он вечно жалуется, что сильно падает скорость соединения, иногда в 5 и более раз. Обращался в центр поддержки, где ответили, что это из-за защиты, которую они обеспечивают.

В сухом остатке

Как видите на рынке довольно много VPN-сервисов. Если вам необходимо как-то скрывать свой IP-адрес, чтобы использовать запрещенные или ограниченные в доступе у нас сервисы, то смело покупайте VPN-протокол. Все зависит от вашего желания и финансовых возможностей. По поводу бесплатных VPN помните, что за все нужно платить. Как говорит мой один знакомый: «Бесплатно - не значит даром».

Чем больше государства пытаются контролировать интернет и устанавливать там свою цензуру, тем больше набирают популярности различные сервисы обхода. Одно из свободных решений для организации частных виртуальных систем - это OpenVPN. Вы можете использовать один из уже развернутых в сети серверов или же развернуть программное обеспечение в своей системе.

В одной из предыдущих статей мы рассматривали . В этой же статье более подробно остановимся на настройке подключения к серверу с помощью различных программ в Linux и Android, а также попытаемся понять как работает эта служба.

Вы уже знаете что программа организовывает виртуальную сеть между компьютерами и все данные в этой сети шифруются и недоступны для пользователей вне нее. Для достижения этой цели программа создает в системе виртуальное устройство tun0. Это такой же интерфейс, как и eth0 или wlan0, он имеет свой ip адрес. Весь трафик, который передается на этот интерфейс шифруется и передается в виртуальную сеть.

Поэтому для передачи трафика через OpenVPN будет достаточно добавить в несколько правил, которые будут заставлять трафик идти через интерфейс tun0.

Как пользоваться OpenVPN в Linux

Сначала рассмотрим как подключиться к OpenVPN из Ubuntu или любого другого Linux дистрибутива через терминал. Допустим, вы скачали файл конфигурации сервера.ovpn и хотите подключиться к этой сети. Для этого нужно установить клиент openvpn:

sudo openvpn ~/Загрузки/config.ovpn

После этого окно терминала закрывать нельзя и если OpenVPN сервер был настроен правильно, то он уже передал на машину правильные маршруты и ваш трафик идет через виртуальную сеть. Давайте посмотрим маршруты:

Здесь стоит обратить внимание на две строки:

0.0.0.0/1 via 192.168.243.1 dev tun0
169.254.0.0/16 dev enp2s0 scope link metric 1000

Первая направляет весь трафик системы на интерфейс tun0, а вторая более интересная, она разворачивает трафик ip сети 169.254.0.0 на реальный интерфейс. Если ее не будет, то весь трафик будет идти на tun0, в том числе и трафик от программы OpenVPN, который уже прошел этот интерфейс и получиться петля. Чтобы разорвать подключение в таком варианте достаточно нажать Ctrl+C в терминале, где вы запустили openvpn.

Второй способ использовать OpenVPN в Linux - это установить плагин openvpn для NetworkManager и подключатся с помощью него. Для установки этого пакета в Ubuntu выполните такую команду:

sudo apt-get install network-manager-openvpn

Теперь откройте апплет Network Manager, разверните "Соединение VPN" и выберите "Настроить соединение" :

В открывшемся окне нажмите кнопку "+" :

Затем выберите надпись "VPN" .

Снова смотрим таблицу маршрутизации:

В целом, NetworkManager создает другие правила, но они работают так же. Настройка клиента openvpn на ubuntu завершена.

Использование OpenVPN в Android

Вы можете пользоваться OpenVPN на любой платформе, в том числе и на Android. Для устройств было выпущено официальное приложение OpenVPN Connect. С помощью него вы можете подключиться к сети, как и в предыдущем варианте, с помощью ovpn файла. Вы можете установить это приложение из Google Play:

Откройте приложение, нажмите на кнопку меню, затем выберите "Import" -> "Import profile from SDCard" :

Выберите нужный файл и нажмите "Select" :

Затем осталось нажать "Connect" для подключения к сети:

Настройка клиента openvpn включает только импорт конфигурационного файла, больше ничего не нужно. Дальше ваш трафик будет направлен через VPN, здесь тоже вы можете посмотреть таблицу маршрутизации, если установлен эмулятор терминала:

Правда, здесь мы не увидим такой ситуации, как в Linux, маршрутизация на VPN в Android осуществляется немного по-другому.

Как пользоваться OpenVPN в Windows

Нельзя было не рассказать в этой статье как пользоваться OpenVPN GUI в Windows, тем более что это ненамного сложнее чем в Android. Нам нужно установить клиент OpenVPN. Вы можете скачать его на официальном сайте:

После загрузки запустите программу от имени администратора и пройдите все шаги мастера:





В сущности, Open vpn представляет собой весьма интересную программу, работающую под Virtual Private Network разновидности точка-точка, причем, менять FireWall-настройки для её использования не требуется. Это программа приходит на помощь, когда необходимо подключиться к приватной виртуальной сети, например, присоединиться к домашней сети или офисной VPN.

Данная программа нередко выступает в роли универсального клиента, который дает возможность без проблем замаскировать свое пребывание в интернете, в два счета установив связь со сторонним сервером «мимо» вашего провайдера. Именно это делает open vpn популярной в среде анонимных VPN сервисов.

Что можно отнести к базовым преимуществам подобной модели?

  • Экономия траффика: все качественно сжимается lzo.
  • Легкость настройки: на все про всё уходит меньше часа, а разобраться сможет даже новичок или человек без специальных знаний.
  • Впечатляющая безопасность: шифруется весь траффик без исключения, при этом каждый клиент обособлен.
  • Клиент не нуждается в установке дополнительного оборудования.
  • Наконец, стабильность работы и достаточно приличная скорость.

Что примечательно, программа поставляется совершенно бесплатно, т.е. ее исходный код открыт для всех желающих. Хотите узнать больше? Заходите сюда и вы найдете исчерпывающую информацию.

Что представляет собой подключение через открытый VPN?

Для того чтобы гарантировать соединению и вашим данным полную безопасность, применяется библиотека OpenSSL. Это открывает программе максимальный доступ к имеющимся в сборке шифровочным алгоритмам. Дополнительно может применяться HMAC - это обеспечивает усиленное шифрование данных в тот момент, когда информация обрабатывается или передается.

  • В каких операционных системах может использоваться OpenVPN клиент? Во всех основных ОС, к числу которых принадлежит Windows, MAC OS, FreeBSD.
  • Через какие порты OpenVPN производит все сетевые операции и перемещения? UDP или TCP, более того, возможна работа через HTTP, NAT и др.

Так что, если вы собираетесь приобрести доступ к vpn server, думается, технология open vpn определенно вас заинтересует. Десятки исследований и попыток скрупулезно сравнить OpenVPN и PPTP выстроили четкую картину: улучшенные алгоритмы шифрования данных делают клиента в разы более эффективным в вопросах безопасности. Легкость обслуживания вносит дополнительные баллы в его пользу. Удачной вам работы!

OpenVPN – технология позволяющая на базе открытого исходного кода выстраивать сеть VPN между клиентом и сервером, сайтом и сайтом, поверх самого интернета. Созданный Джеймсом Йонаном 10 апреля 2002 года OpenVPN до сих пор широко применяется юзерами с целью шифрования трафика и безопасного использования всемирной паутины. Более того, популярность технологи растет из года в год.

Работая через TCP/UDP порты и SSL/TLS протоколы OpenVPN обладает исключительной легкостью и простотой в плане настройки и установки. Кроссплатформенность дает возможность инсталлировать клиент на любые версии Windows (включая 2000 и XP), Linux, Mac OS, Solaris, Open, Net и FreeBSD без принципиальных изменений в конфигурации и архитектуре.

Принципы работы OpenVPN:

  • Использование архитектуры клиент/сервер, где OpenVPN устанавливается на каждый узел виртуальной частной сети при условии того, что один из узлов является сервером, остальные – клиентами
  • Шифрование трафика, который проходит через туннель, созданный при участии одного из TCP или UDP портов
  • Три вида аутентификации – статические ключи, сертификация, логин/пароль

Первый вариант в настройке довольно простой, но подразумевает, что единственный ключ будет шифровать и расшифровывать трафик. А значит, в случае потери ключа злоумышленник сможет легко дешифровать данные. В случае с сертификацией и логином/паролем для защиты информации используется встроенная в OpenVPN технология SSL. Сложнее в настройке и чуть медленнее в работе, т.к. сервер ждет подтверждения при передаче пакетов, зато предельно надежно.

Использование VPN в среде частных пользователей облегчает специальный OpenVPN GUI клиент. Что такое OpenVPN GUI? Это графический интерфейс, средство позволяющее работать с VPN на персональном устройстве. GUI клиент представляет из себя устанавливаемую программу малых размеров, с помощью которой пользователь может выбрать сервер для подключения, установить соединение с виртуальной частной сетью, увидеть лог подключения и т.д. Во время работы GUI скрывается в трее и совершенно не грузит систему.

Еще немного об OpenVPN, SSL и IPSec

До появления SSL протокол IPSec являлся единственным средством, с помощью которого можно было шифровать данные в сетях типа сайт-сайт и клиент-сервер. К счастью, в 90-х монополия исчезла, т.к. кампания Netscape презентовала первую версию протокола SSL, современную версию которого чаще называют TLS. С его помощью юзерам представилась возможность шифровать данные при участии упомянутых выше открытых ключей (аутентификация или логин\пароль). И сегодня можно точно сказать, что благодаря относительной простоте OpenVPN SSL протокол используется не только для защиты данных по HTTP, но и для построения VPN типа клиент-сервер.


Что такое VPN вкратце? Это виртуальная частная сеть, представляющая из себя туннель между двумя устройствами (клиент-сервер или точка-точка) и работающая поверх еще одной сети (например, сеть Интернет). Определяющими факторами для безопасного VPN является конфиденциальность и шифрование, целостность передаваемой информации, а также аутентификация – объекты должны быть уверены в подлинности друг друга до начала передачи трафика. Именно за шифрование и аутентификацию отвечают библиотеки IPSec и SSL. Однако, не смотря на схожие задачи, протоколы имеют принципиально разные пути решения проблем.

  • В операционных системах OpenVPN и SSL ведут себя как стандартные приложения, что облегчает настройку. IPSec требует обновления ядра ОС, что приводит к очевидным трудностям – для работы с протоколом необходимо дорабатывать операционные системы на каждом используемом устройстве
  • Так как IPSec тесно связан с ядром сбой в работе или программный взлом могут привести к тяжелейшим последствиям. Система может получить критические повреждения, а взломавший злоумышленник – права администратора. С OpenVPN это невозможно, т.к. клиент работает в пространстве юзера и не затрагивает операционную систему
  • С SSL намного проще работать в плане FireWall. IPSec требует изменений правил фильтрации и решения множества иных проблем
  • OpenVPN легко перенести – во многих случаях достаточно обычного копирования, чего нельзя сказать про усложненный IPSec

Все это давно привело к тому, что в сегменте VPN сервисов типа клиент-сервер OpenVPN окончательно вытеснил протокол IPSec. Можно сказать, что IPSec является одним из этапов развития VPN технологий и на данный момент на порядок уступает более безопасному, современному и удобному OpenVPN. В сухом остатке никаких существенных преймуществ у IPSec на данный момент по сравнению с OpenVPN попросту нет. Настройка OpenVPN клиента занимает не более минуты, а создание подключений и вовсе считанные секунды – необходимо лишь скачать клиентские конфиги и разместить их в соответствующей папке программы. К тому же при использовании OpenVPN не требуется настраивать антивирусные программы и сетевые экраны для стабильного обмена трафиком с VPN сервером, чего не скажешь про IPSec. Все пользователи, обеспокоенные конфиденциальностью своих данных должны понимать это и отдавать предпочтение более надежным решениям.

И ещё чуть-чуть про OpenVPN и PPTP

Следующим за OpenVPN можно назвать технологию, разработанную компанией Microsoft в 1999 году - PPTP, что переводится как “Протокол Туннелирования Точка-Точка”. Это ещё один тип VPN-соединения, доступный из всех представленных на сегодняшний день. Однако сразу стоит отметить, что технология считается уязвимой и более нестабильной по сравнению с OpenVPN:

  • PPTP имеет 128-битный ключ, а OpenVPN от 1024 до 2048
  • PPTP требует поддержки протокола GRE47, а OpenVPN работает с любым интернет-соединением
  • PPTP, как и IPSec, для стабильной работы требует настройки сетевых экранов, антивирусов и firewall-ов.
  • PPTP через GRE некорректно работает под NAT-ом, а OpenVPN работает без нареканий

Многих прельщает тот факт, что для PPTP в среде Windows не требуется дополнительного программного обеспечения, но по факту из-за работы через GRE-соединение стабильность подключения намного ниже, чем в случае с OpenVPN. Причина тому заключается в NAT-е. GRE – это протокол сетевого уровня, из-за чего межсетевые экраны блокируют большую часть соединений, что вынуждает использовать такие примочки, как PPTP Passthrough посредством так называемого Port Forwarding-а, или проброса портов. Как выше уже упоминалось PPTP – технология устаревшая и изначально не рассчитывалась на использование под NAT-ом, тогда как в OpenVPN эти нюансы учтены и проблем не возникает. По итогу пользователю может потребоваться производить настройки маршрутизатора и в конечном счете времени уйдет больше, чем на установку OpenVPN клиента.

Учитывая вышеизложенное очевидно, что OpenVPN многократно превосходит “конкурирующие” решения в VPN, поскольку он разрабатывается не компаниями, а людьми для людей посредством OpenSource, в связи с чем достоин особого внимания со стороны пользователей. То, что вам мешало в других случаях здесь, наверняка, уже решено.

Примем за основу то, что наш сервер распологается в удаленном датацентре. Т.е. попадать на него мы будет через интернет.

После установки шифрованного туннеля между клиентом и сервером, сервер будет NAT-ить все наши пакеты в Интернет. Также, сервер будет обслуживать DNS и являться firewall-ом для виртуальной локальной сети.

Внешний IP нашего сервера (того, который будет openVPN): 212.212.212.212
Внутренний IP сервера (видимый из туннеля): 10.10.0.1
Пул внутренних адресов openVPN: 10.10.0.2 - 10.10.0.128
Название нашей сети: vpnet
Имя сервера: vpsrv
Имя клиента: vpclient

Зачем нужен внешний IP, думаю, понятно. Внутренний IP нужен для соединения с сервером после поднятия туннеля. Пул адресов - это адреса, которые сервер выдает подключившимся клиентам.
Название сети - это имена конф. файлов и имя сервера в этих конф. файлах. Имена клиента и сервера = имена файлов ключей.

На сервере установлен Gentoo Linux 2008.0, обновленный до последних версий. Ядро - 2.6.29. Вся настройка будет выполняться по SSH.

Настройка ядра.

Замечу сразу, на этом этапе нужно быть крайне осторожным и внимательным. Если кто забыл.

Ядро должно содержать опции ниже на сервере. На клиенте нужны только TUN и ipv4.

В ядре нам понадобится следующий функционал, привожу выдержку из конфига:

CONFIG_NF_NAT=m
CONFIG_NF_NAT_PPTP=m
CONFIG_NETFILTER=y
CONFIG_TUN=m

Ну и разумеется поддержка ipv4, сетевой карты и прочего железа. Собираем и устанавливаем ядро. Можно воспользоваться genkernel . Перезагружаемся.

Настройка сервера.

Установка ПО.
Если:) сервер вернулся из ребута, перейдем к установке ПО.

Emerge --sync
emerge openvpn bind bind-tools iptables

Ждем, иногда долго. После установки переходим в /etc/init.d/ и выполняем:

Ln -s openvpn openvpn.vpnet
rc-update add openvpn.vpnet default
rc-update add named default
rc-update iptables default
./iptables save

Создав symlink на самого себя, мы указали openvpn, что нужно использовать конфигурацию vpnet . В будущем запускаем его только так:

/etc/init.d/openvpn.vpnet start

Сейчас запускать не нужно, ибо запускать пока нечего. :)
Помимо этого мы добавили iptables, named и openvpn в автозагрузку.

Создадим нужные каталоги и файлы:

Mkdir /etc/openvpn/vpnet/
mkdir /etc/openvpn/vpnet/keys
touch /var/log/openvpn.log
touch /etc/openvpn/vpnet.conf

Генерация ключей.

Перейдем в /usr/share/openvpn/easy-rsa/ . Откроем файл vars и впишем настроим параметры:

Export EASY_RSA="/usr/share/openvpn/easy-rsa/" #Путь к easy-rsa.
export KEY_CONFIG="$EASY_RSA/openssl.cnf" #Конфиг OpenSSL
export KEY_DIR="/etc/openvpn/vpnet/keys" #Каталог, в котором мы будем держать ключи.
export KEY_SIZE=1024 # Размер ключа
export CA_EXPIRE=3650 # Срок действия CA
export KEY_EXPIRE=3650 # Срок действия ключа
export KEY_COUNTRY="RU" # Двухбуквенный код страны
export KEY_PROVINCE="XX" # Province, не актуально
export KEY_CITY="Town" # Город
export KEY_ORG="Companyname" # Компания
export KEY_EMAIL="[email protected]" # Email

Естественно, значения (компания, путь к ключам и easy-rsa, email) нужно поменять на подходящие вам.

Имопртируем переменные: source ./vars

Теперь создадим ключи.

./clean-all # Убиваем старые ключи, если они были.
openvpn --genkey --secret ta.key # Ключ TLS-auth
./build-dh #Ключ Диффи-Хеллмана.
./pkitool --initca # Certificate Authority для сервера.
./pkitool --server vpsrv # Сертификат сервера.
./pkitool vpclient # Сертификат клиента.

И перенесем остатки в нужное место:

Mv ./ta.key /etc/openvpn/vpnet/keys

Все, ключи готовы.

Настройка сервера.

Переходим в /etc/openvpn/ , открываем vpnet.conf и пишем туда:

Mode server
tls-server
proto tcp-server
dev tap
port 5555 # Порт
daemon
tls-auth /etc/openvpn/vpnet/keys/ta.key 0
ca /etc/openvpn/vpnet/keys/ca.crt
cert /etc/openvpn/vpnet/keys/vpsrv.crt
key /etc/openvpn/vpnet/keys/vpsrv.key
dh /etc/openvpn/vpnet/keys/dh1024.pem
ifconfig 10.10.0.1 255.255.255.0 # Внутренний IP сервера
ifconfig-pool 10.10.0.2 10.10.0.128 # Пул адресов.
push "redirect-gateway def1" # Перенаправлять default gateway на vpn-сервер. Если не нужно - закомментировать.
push "route-gateway 10.10.0.1"
duplicate-cn
verb 3
cipher DES-EDE3-CBC # Тип шифрования.
persist-key
log-append /var/log/openvpn.log # Лог-файл.
persist-tun
comp-lzo

Все опции, в принципе, понятны. Особо важные я отметил комментариями. Пути и названия, адреса - нужно подправить под себя.

Теперь сервер можно запустить командой /etc/init.d/openvpn.vpnet start
Если возникнут проблемы, подробности можно прочитать в log-файле.

Чтобы сервер выпускал наши пакеты во внешнюю сеть нам нужно настроить NAT. Это просто.

Готовим и запускаем iptables:

/etc/init.d/iptables save
/etc/init.d/iptables start

Включаем поддержку IP forwarding:

Sysctl net.ipv4.ip_forward=1
echo "sysctl net.ipv4.ip_forward = 1" >> /etc/sysctl.conf

Добавляем правило firewall:

Iptables -v -t nat -A POSTROUTING -o EXTERNAL_IF -s VPN_NET/24 -j SNAT --to-source SERVER_IP

EXTERNAL_IF, VPN_NET и SERVER_IP заменить на внешний интерфейс, сеть VPN и внешний (!) IP сервера соответственно.

Снова делаем /etc/init.d/iptables save , чтобы правило применялось при загрузке системы.

Все, можно работать.

Настройка клиента.

Устанавливаем ПО, создаем пути:

Emerge openvpn
cd /etc/init.d/
ln -s openvpn openvpn.vpnet-client
rc-update add openvpn.vpnet-client default

Mkdir /etc/openvpn/vpnet
mkdir /etc/openvpn/vpnet/client_keys
touch /etc/openvpn/vpnet-client.conf

Берем с сервера файлы:

ca.crt
vpclient.crt
vpclient.key
ta.key

И закидываем их в /etc/openvpn/vpnet/client_keys/ на клиенте.

Редактируем /etc/openvpn/vpnet-client.conf :

Tls-client
proto tcp-client
remote 212.212.212.212
dev tap
port 5555
cd /etc/openvpn/vpnet
pull
tls-auth /etc/openvpn/vpnet/client_keys/ta.key 1
ca /etc/openvpn/vpnet/client_keys/ca.crt
cert /etc/openvpn/vpnet/client_keys/vpclient.crt
key /etc/openvpn/vpnet/client_keys/vpclient.key
cipher DES-EDE3-CBC
log-append /var/log/openvpn.log
comp-lzo

Опции шифрования и компрессии на клиенте и сервере должны совпадать .

Запускаем клиент. Автоматически установится соединение с сервером, создастся туннель, default gateway - сервер VPN. Если все сделано правильно, то можно ходить в интернет.

Настройка закончена.

Могу ответить на вопросы в комментариях.