Как настроить свой собственный VPN-сервер. Как создать свой VPN сервер. VPN для windows, android, ios

Интернет прочно вошел в нашу жизнь, и если ранее, в годы господства аналоговых модемов, для выхода в Интернет приходилось учитывать и объем трафика, и время соединения, то сегодня нормой стало безлимитное подключение к Интернету. То есть если Интернета нет в любое время и в любом «объеме», то это уже что-то из ряда вон выходящее. Причем если раньше наличие безлимитного Интернета считалось стандартом де-факто для корпоративных сетей, то сегодня это уже стало нормой для конечных пользователей. Вместе с развитием Интернета меняется и концептуальная модель его использования. Появляются все новые сервисы, например видео по запросу и VoIP, развиваются пиринговые файлообменные сети (BitTorrent) и пр. В последнее время очень популярной стала организация виртуальных частных сетей (VPN) через Интернет с возможностью организации удаленного доступа к любому компьютеру в составе этой сети. О том, как это можно сделать, и пойдет речь в настоящей статье.

Зачем это нужно

Организация VPN-сетей через Интернет или внутри локальной сети имеет много сценариев использования: сетевые игры в Интернете в обход игровых серверов (точно так же, как игры по локальной сети), создание закрытой от посторонних сети для передачи конфиденциальной информации, возможность удаленного и безопасного управления компьютерами (полный контроль над удаленным ПК), организация защищенного доступа для сотрудников, находящихся в командировке, к ресурсам корпоративной сети, связь по виртуальной сети отдельных офисов (локальных сетей).

Традиционный подход к развертыванию такой виртуальной частной сети заключается в том, что в корпоративной сети поднимается и конфигурируется VPN-сервер (обычно на базе ОС Linux) и удаленные пользователи заходят в корпоративную сеть по VPN-соединениям.

Однако такой подход неприменим в случае, когда пользователю необходимо получить удаленный доступ к своему домашнему компьютеру. Вряд ли ситуацию, когда дома поднимается отдельный VPN-сервер, можно считать обычной. Впрочем, не стоит отчаиваться. Задача создания VPN-сети решаема и под силу даже начинающему пользователю. Для этой цели существует специальная программа Hamachi, которую можно свободно скачать из Интернета (http://www.hamachi.cc/download/list.php). Что особенно радует, так это наличие ее русифицированной версии, так что освоить программу сможет любой пользователь.

Hamachi 1.0.2.2

Итак, Hamachi (текущая версия - 1.0.2.2) - это программа, позволяющая создать виртуальную частную сеть (VPN) через Интернет и объединить в ней несколько компьютеров. После создания такой сети пользователи могут устанавливать VPN-сессии между собой и работать в этой сети точно так же, как в обычной локальной (LAN) сети с возможностью обмена файлами, удаленного администрирования компьютеров и т.д. Преимущество VPN-сети заключается в том, что она полностью защищена от несанкционированного вмешательства и невидима из Интернета, хотя и существует в нем.

Программа Hamachi должна быть установлена на всех компьютерах, которые предполагается объединить в виртуальную частную сеть.

Виртуальная сеть создается с помощью специализированного сервера Hamachi в Интернете. Для соединения с этим сервером используются порты 12975 и 32976. Первый порт (12975) применяется только для установки соединения, а второй - во время работы. Впрочем, обычным пользователям вряд ли потребуется столь подробная информация.

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

Установка программы

Программа Hamachi устанавливается на компьютеры с операционной системой Windows 2000/XP/2003/Vista. Существуют также консольные версии программы для Linux и Mac OS X. Далее мы рассмотрим установку и настройку программы на примере операционной системы Windows XP.

Установка программы Hamachi достаточно проста и не вызывает проблем (особенно учитывая, что интерфейс запускаемого мастера установки русский). После начала установки программы на компьютере запускается мастер установки, который предложит согласиться с лицензионным соглашением, выбрать папку для установки программы (рис. 1), создать иконку на рабочем столе и т.д.

Среди полезных опциональных возможностей, которые можно активировать в процессе установки программы, - автоматический запуск Hamachi при загрузке компьютера и блокирование уязвимых служб для соединений Hamachi (рис. 2). В последнем случае будет заблокирована служба Windows File Sharing для виртуального сетевого адаптера Hamachi. В результате другие пользователи VPN-сети не получат доступа к имеющимся в вашем компьютере файлам и папкам, открытым для совместного использования. При этом данные файлы и папки останутся доступными для обычных пользователей локальной сети, для соединения с которыми не применяется VPN-соединение.

Рис. 1. Мастер установки программы Hamachi позволяет указать папку
для размещения программы, создать иконку на рабочем столе
и выбрать опциональную возможность автоматического запуска программы
при загрузке компьютера

Кроме блокирования службы Windows File Sharing, блокирование уязвимых служб для соединений Hamachi также приводит к блокированию удаленного доступа к определенным службам Windows, которые часто подвергаются атакам. Соответственно если вы используете программу Hamachi для соединения с надежными клиентами, которым вы доверяете, то опцию блокирования уязвимых служб лучше отключить.

Рис. 2. Мастер установки программы Hamachi позволяет заблокировать
уязвимые службы для соединений Hamachi

На последнем этапе мастер установки предложит выбрать, какой вариант программы установить: базовую версию или Premium. Программа Hamachi существует в двух версиях. Базовая версия является бесплатной, а версия Premium, обладающая более широкими возможностями, - платной. Отметим, что для большинства пользователей вполне достаточно бесплатной базовой версии программы (о детальных отличиях базовой версии от версии Premium мы расскажем чуть позже), но стандартный поход следующий: сначала устанавливается Premium-версия на 45 дней (бесплатно), а по истечении этого периода автоматически происходит переход к базовой версии.

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

Первый запуск программы

При первом запуске программы будет создана ваша учетная запись. На этом этапе необходимо задать имя компьютера, под которым он будет виден другим пользователям VPN-сети (рис. 3).

Рис. 3. Задание имени компьютера, под которым
он будет виден другим пользователям VPN-сети

Когда имя компьютера задано, программа устанавливает соединение с сервером базы данных Hamachi и запрашивает IP-адрес, который будет присвоен виртуальному сетевому адаптеру Hamachi и будет использоваться в дальнейшем для установления VPN-соединения. Каждому клиенту Hamachi присваивается IP-адрес из диапазона 5.0.0.0/8 (маска подсети 255.0.0.0), который в принципе не относится к зарезервированным для применения в Интернете диапазонам адресов. К таким зарезервированным для частного использования в локальных сетях относятся следующие диапазоны: 10.0.0.0/8 (диапазон от 10.0.0.0 до 10.255.255.254), 172.16.0.0/12 (диапазон от 172.16.0.0 до 172.31.255.254) и 192.168.0.0/16 (диапазон от 192.168.0.0 до 192.168.255.254). Однако диапазон 5.0.0.0/8 на протяжении уже более 10 лет зарезервирован организацией IANA (Internet Assigned Numbers Authority - американская организация, управляющая пространствами IP-адресов) и не используется в качестве публичных (внешних) адресов Интернета. Таким образом, диапазон 5.0.0.0/8, с одной стороны, относится к диапазону внешних (публичных) адресов Интернета, то есть исключена вероятность, что присвоенный вам IP-адрес уже применяется в вашей локальной сети (в локальных сетях используются только зарезервированные для частного применения IP-адреса), а с другой - эти адреса еще никем не заняты.

После присвоения вам IP-адреса из диапазона 5.0.0.0/8 он становится своеобразным идентификатором вашего компьютера в виртуальной частной сети. Этот IP-адрес присваивается виртуальному сетевому адаптеру Hamachi. Так, если набрать в командной строке команду ipconfig/all, то кроме настроек сетевого интерфейса реального сетевого адаптера (который физически присутствует в вашем ПК) можно обнаружить, что появился еще один виртуальный Ethernet-адаптер Hamachi с присвоенными ему MAC-адресом, IP-адресом, маской подсети, IP-адресом шлюза и т.д. (рис. 4).

Рис. 4. После первого запуска программы виртуальному сетевому адаптеру
Hamachi присваивается IP-адрес из диапазона 5.0.0.0/8 и производится настройка
сетевого интерфейса

Итак, после того как программа Hamachi сконфигурировала виртуальный сетевой адаптер, можно приступать к работе с программой.

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

Работа с программой

Интерфейс программы очень прост (рис. 5). Имеется всего три функциональных кнопки: «включить/выключить», кнопка сетевого меню и кнопка системного меню.

Рис. 5. Интерфейс программы
Hamachi очень простой -
всего три функциональные кнопки

Для создания новой VPN-сети или присоединения компьютера к уже существующей нажмите на кнопку сетевого меню и выберите соответствующий пункт (рис. 6).

Рис. 6. Кнопка сетевого меню позволяет
создать новую VPN-сеть или присоединить
компьютер к уже существующей

Присоединение ПК к существующей виртуальной сети и выход из нее

Если требуется подсоединить компьютер к уже существующей виртуальной сети и известно ее название и пароль (в случае, если он используется), то в сетевом меню выберите пункт Войти в существующую сеть… Далее откроется окно, в котором необходимо задать имя сети и пароль (рис. 7).

Рис. 7. Добавление компьютера
в существующую виртуальную сеть

После этого в окне программы появятся название сети и список присоединенных к ней компьютеров (кроме вашего) - рис. 8.

Рис. 8. После присоединения компьютера
к виртуальной сети в окне программы
отображается список присоединенных
к ней компьютеров

Если рядом с названием компьютера стоит зеленая точка или звезда, то это означает, что связь с компьютером установлена. Мигание зеленой точки свидетельствует о том, что связь находится в процессе установки. Светлый круг вокруг зеленой точки указывает на то, что с данным компьютером идет обмен информацией.

Хуже всего, когда рядом с названием компьютера стоит желтая точка - это означает, что прямое соединение с ним по каким-то причинам установить не удалось. Если желтым цветом отображается название компьютера, то это означает, что связь с ним потеряна.

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

Если название компьютера и точка около его имени отображаются серым цветом, то это означает, что компьютер хотя и присоединен к данной виртуальной сети, но недоступен (например, ПК выключен, нет соединения с Интернетом или не запущена программа Hamachi).

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

Создание новой сети и удаление созданной сети

Если требуется создать новую виртуальную сеть, то в сетевом меню выберите пункт Создать новую сеть… Откроется окно, в котором необходимо задать имя создаваемой сети и пароль, который будут использовать другие пользователи для присоединения к этой сети (рис. 9).

Рис. 9. Создание новой VPN-сети

После создания новой сети к ней можно присоединять компьютеры пользователей. Если сеть создана вами, то вы являетесь ее администратором и получаете полный контроль над нею, которого лишены другие пользователи. При этом важно помнить, что управлять созданной сетью можно только с того компьютера, на котором она была создана. Если точнее, то управлять сетью можно только с компьютера, которому присвоен точно такой же виртуальный IP-адрес, как тот, что использовался при создании виртуальной сети. Почему это замечание так важно? Представьте себе ситуацию: вы установили программу Hamachi и создали новую VPN-сеть. Потом вы полностью удалили (включая все конфигурационные файлы) программу Hamachi и через некоторое время установили ее вновь. Вам будет присвоен новый виртуальный IP-адрес, но, используя его, вы уже не сможете контролировать созданную вами ранее VPN-сеть.

Если вы являетесь администратором сети, то можете удалить ее. Для этого щелкните правой кнопкой мыши по названию сети и в ниспадающем списке выберите пункт Удалить . Отметим, что при удалении сети полностью уничтожаются все связи между другими ее пользователями.

Другие действия с компьютерами сети

Если вы присоединились к сети, то можете совершать над присоединенными к ней компьютерами следующие действия:

  • проверка доступности;
  • просмотр папок;
  • отправка сообщения;
  • копирование адреса;
  • блокирование;
  • установка метки.

Для того чтобы выполнить одно из них, щелкните на имени компьютера правой кнопкой мыши и в ниспадающем меню выберите соответствующий пункт (рис. 10).

Рис. 10. Список возможных действий
с выбранным компьютером сети

При выборе пункта Проверить доступность будет выполнена обычная команда ping по адресу соответствующего компьютера.

Пункт Просмотреть папки позволяет получить доступ к открытым для совместного доступа (Sharing) папкам на компьютере.

Пункт Отправить сообщение дает возможность обмениваться сообщениями между отдельными компьютерами сети наподобие тому, как это делается в ICQ.

Пункт Копировать адрес вставляет в буфер обмена IP-адрес выбранного компьютера, что удобно, если требуется использовать этот адрес в других программах (например, удаленного администрирования).

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

Пункт Установить метку позволяет выбрать формат отображения атрибутов компьютера в сети. По умолчанию отображается IP-адрес компьютера и его название. Можно задать отображение только имени компьютера или только IP-адреса.

Настройка программы

Для того чтобы получить доступ к настройке программы, необходимо нажать на кнопку системного меню и выбрать пункт Установки… (рис. 11).

Рис. 11. Получение доступа к настройкам
программы

После этого откроется окно Статус и конфигурация , позволяющее произвести детальную настройку программы (рис. 12).

Рис. 12. Окно детальной конфигурации программы

Собственно, здесь все достаточно просто, и вряд ли нужны подробные комментарии, поэтому просто перечислим возможности, которые можно реализовать в окне конфигурации. Итак, в этом окне можно изменить имя компьютера, произвести детальную настройку соединения, задать тип запуска программы, заблокировать или разблокировать уязвимые службы Windows, заблокировать новых членов сети и реализовать другие, менее значимые опции. Среди важных возможностей отметим отключение шифрования при передаче данных между отдельными компьютерами сети. Для того чтобы сделать это, необходимо нажать на иконку Окно и в группе Внешний вид отметить пункт Show «Advanced…» per menu item (рис. 13).

Рис. 13. Добавление пункта Advanced…
в ниспадающее меню

После этого, если на имени компьютера, присоединенного к сети, щелкнуть правой кнопкой мыши, в ниспадающем меню появится пункт Advanced… Если выбрать его, то откроется окно Tunnel Configuration , позволяющее изменить настройки VPN-туннеля. Для отключения шифрования в пункте Encryption необходимо выбрать значение Оff . В этом случае данные с вашего компьютера будут передаваться на выбранный ПК в незашифрованном виде. Однако в обратном направлении данные будут передаваться зашифрованными. Для того чтобы полностью отключить шифрование для VPN-туннеля между двумя компьютерами, его нужно отключить на обоих компьютерах.

Отметим, что отключать шифрование следует только в исключительных случаях, поскольку сама процедура шифрования вряд ли отразится на трафике. Дело в том, что трафик будет определяться пропускной способностью вашего интернет-канала, а отнюдь не применением или отсутствием шифрования. Только в том случае, если VPN-туннель образуется между компьютерами в пределах одной локальной сети и его пропускная способность составляет порядка 100 Мбит/с, использование шифрования может немного снизить максимальную скорость передачи (до 70-80 Мбит/с).

Заключение

Программа Hamachi - это мощный инструмент, позволяющий очень быстро создавать VPN-сети. Отметим, что изначально она была создана для того, чтобы пользователи могли играть в сетевые игры в обход игровых серверов. Однако возможные сценарии применения этой программы значительно шире. Так, создав виртуальную сеть и присоединив к ней компьютеры, можно, воспользовавшись стандартными программами удаленного администрирования, получить удаленный доступ к любому компьютеру виртуальной сети, поскольку каждый компьютер такой сети имеет свой выделенный IP-адрес.

В то же время нужно отметить, что далеко не всегда удается установить прямое соединение между отдельными компьютерами. И несмотря на то, что на сайте производителя утверждается, что программа легко «пробивает» маршрутизаторы и NAT-устройства, на самом деле все не столь оптимистично. В документации к программе утверждается, что в 5% случаев прямое соединение между отдельными компьютерами установить не удается, однако, как нам кажется, эта цифра явно занижена. Реальная ситуация такова: если речь идет о соединении двух компьютеров, которым присваивается динамический или статический публичный IP-адрес, то проблем не возникает. То есть если у вас дома имеется всего один компьютер с выходом в Интернет и вам нужно соединиться с пользователем, у которого также один компьютер с выходом в Интернет, то никаких проблем не будет. Как показывает практика, не возникает проблем установления соединения и между компьютером пользователя с присвоенным ему динамическим или статическим публичным IP-адресом и компьютером в составе локальной сети, защищенной маршрутизатором. Однако если связь устанавливается между двумя компьютерами, принадлежащими разным локальным сетям, защищенным маршрутизаторами, то возможны проблемы и не факт, что прямое соединение будет установлено. То есть соединение может быть установлено, но с большой вероятностью оно будет не прямое, а через сервер Hamachi. Соответственно скорость такого канала связи окажется очень низкой и проку от такого соединения будет не много. К примеру, у вас дома выход в Интернет реализован с использованием беспроводного маршрутизатора, то есть ваш компьютер находится в составе домашней локальной сети и ему присваивается IP-адрес из диапазона зарезервированных для частного применения адресов, а публичный адрес присваивается WAN-порту маршрутизатора, через который вы выходите в Интернет. Если вы пытаетесь установить соединение с другим компьютером, который также находится в составе локальной сети (например, с рабочим компьютером в офисе или с компьютером пользователя, у которого дома развернута локальная сеть и используется маршрутизатор), то в большинстве случаев появляются проблемы.

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

На сегодняшний день частными виртуальными сетями, обозначаемыми как VPN, что в расшифровке означает , никого не удивишь. Однако далеко не каждый пользователь той же «семерки» знает, как это все работает. Давайте посмотрим, что собой представляет VPN-сервер на Windows 7, как его установить и настроить при помощи собственных средств и сторонних программ.

Что такое VPN?

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

А виртуальный сервер - это именно то средство, которое позволяет создавать независимые частные сети на основе подключения к интернету, как если бы несколько компьютерных терминалов, ноутбуков или даже мобильных устройств были объединены между собой посредством кабелей. Но только в данном случае речь идет о кабелях виртуальных.

Для чего нужен VPN-сервер?

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

К тому же при использовании VPN-подключения пользователь получает возможность обмена данными между отдельными терминалами, которые разбросаны по всему миру. Да-да! Технология подключения VPN-сервера такова, что в виртуальную сеть можно объединить компьютеры или мобильные девайсы, независимо от их географического положения.

Ну а для геймеров это вообще находка. Представьте себе, что после создания VPN-сервера можно будет запросто пройти какую-нибудь командную «бродилку» по типу Counter Strike в команде с игроками, например, из Бразилии. А ведь для того, чтобы это стало возможным, и потребуются теоретические знания о Теперь разберемся, что собой представляет создание и Windows 7, более подробно.

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

VPN-сервер на Windows 7: на что стоит обратить внимание?

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

В принципе, как вариант, можно использовать установку специального (но неофициального) патча, который поможет устранить проблему. С другой стороны, если подходить к решению вопроса создания нормального работоспособного VPN-сервера с точки зрения лицензирования Windows, то лучше использовать «семерку» именно серверной версии (Windows Server). Мало кто знает, но именно для Windows 7 такая версия тоже есть.

Создание VPN-сервера средствами Windows: настройки роутера

Теперь, после описания всех начальных понятий и вопросов, можно приступать к созданию сервера непосредственно. В качестве примера рассмотрим начальную настройку, которую требуют устройства Zyxel Keenetic. VPN-сервер в случае использования таких устройств достаточно сильно отличается своими настройками (особенно в случае без предустановленной микропрограммы NDMS).

Тут загвоздка в том, что основной для всех систем протокол PPTE в данном случае представлен в измененном виде MPTE, что делает невозможным одновременный доступ к серверу несколькими пользователями. Микропрограмма позволяет обойти эту проблему. После ее инсталляции доступ гарантируется на уровне десятка одновременно подключенных юзеров.

После инсталляции программы в разделе центра приложений должен появиться компонент сервера VPN, где нужно будет настроить "Интернет-центр Keenetic", который впоследствии будет отвечать за доступ и пул IP-адресов, предоставляемых в данный момент клиентам, использующим протокол PPTE.

Что самое интересное, при этом допустимо пересечение адресов с 24-битной маской. То есть при задании диапазона, например, 192.168.0.10 - 192.168.0.20 адрес VPN-сервера при однократном подключении клиентской машины для параметра Home может иметь значение 192.168.0.51.

Но и это еще не все. VPN-сервер на роутере (в нашем случае Zyxel) подразумевает доступ исключительно через учетную запись Keenetic. Для активации такого доступа нужно разрешить пользователю доступ к VPN. Делается это кликом на «учетке» с последующей установкой галочки в соответствующем поле.

Еще один плюс такого подключения состоит в том, что один логин и пароль можно использовать для нескольких клиентских записей, по которым будет осуществляться доступ к Keenetic VPN-серверу. Обратим внимание и еще на одну особенность такого подключения. Она заключается в том, что созданный на основе Zyxel VPN-сервер способен осуществлять доступ не только к внутренним локальным, но и к внешним сетям. Таким образом можно получить удаленный доступ к любой клиентской машине, подключенной посредством учетной записи Keenetic.

Первые шаги

Теперь вопрос, как настроить VPN-сервер на роутере, оставим в стороне и перейдем непосредственно к самой «операционке».

Для начала потребуется использовать раздел центра управления сетями и общим доступом, расположенный в стандартной «Панели управления». В верхнем меню следует выбрать раздел «Файл» (если таковой не отображается, нажать клавишу Alt), после чего кликнуть на строке нового входящего соединения.

После этого нужно использовать добавление нового пользователя, которому по умолчанию будет присвоено имя Vpnuser. Далее заполняем все необходимые поля (полное имя можно оставить пустым, поскольку это никак не влияет на подключение), а затем вводим пароль и подтверждение (должно быть полное совпадение). Если нужно еще добавить юзеров, повторяем вышеописанную процедуру.

Теперь в новом окне нужно указать тип доступа через интернет, после чего можно переходить к одному из самых главных шагов, а именно - к настройке протокола TCP/IP, поскольку VPN-сервер на Windows без таких корректно заданных параметров работать просто не будет.

Настройка протокола IPv4

В принципе, в большинстве случаев используется именно эта версия протокола, поскольку IPv6 поддерживается далеко не всеми провайдерами. Если же поддержка все-таки есть, настройка версий 4 и 6 особо отличаться не будет.

Итак, в свойствах протокола сначала следует использовать пункт разрешения доступа звонящим к локальной сети, после чего выбрать указание IP-адреса явным образом и прописать необходимый диапазон. Делается это для того, чтобы в дальнейшем можно было подключить несколько пользователей одновременно. По окончании процедуры просто жмем кнопку «OK». Все - сервер создан. Но этим дело не ограничивается. Еще нужно настроить VPN-сервер на клиентских терминалах, чтобы они получили доступ.

Настройка клиентских машин

Теперь на компьютерном терминале, с которого предполагается произвести подключение к виртуальному серверу, в «Панели управления» нужно использовать настройки центра управления сетями и общим доступом, где выбирается новое подключение, после активации которого запустится «Мастер». Далее выбирается тип подключения к рабочему месту, а затем - использование существующего подключения к VPN.

Теперь самый важный момент - адрес VPN-сервера. В данном случае можно использовать адрес, просмотренный на самом сервере, или ввести доменное имя. Чтобы особо не растрачивать время на настройку, предложение о немедленном подключении можно пропустить.

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

Параметры межсетевых экранов

Но даже если все сделано правильно, иногда могут возникать некоторые проблемы. Зачастую такое соединение может блокироваться, как ни странно это звучит, собственными средствами Windows, точнее, встроенным брэндмауэром (файрволлом), относящимся к системе безопасности.

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

Проброс портов

С портами дело сложнее. Проблема относится в основном к ADSL-модемам, которые попросту не способны открывать нужные VPN-порты. Настраивать эти параметры нужно вручную.

Тут снова придется обратиться к Как правило, инструкция по VPN-подключению есть в документации к самому устройству. Здесь стоит отметить, что Windows-системы используют TCP со значением 1723. Если имеется возможность отключения блокировки GRE, ее желательно задействовать.

Ошибка 807

Естественно, теперь можно перестраивать параметры созданного VPN-сервера, однако, как считается, настоящим бичом абсолютно всех юзеров, которые сталкиваются с созданием подключений такого типа впервые, является возникновение ошибки под номером 807.

Чтобы от нее избавиться, следует для начала убедиться в правильности заполнения полей IP-адреса на клиентской машине и параметров порта непосредственно на сервере.

Кроме того, служба удаленного доступа обязательно должна быть активной. Проверить ее состояние можно посредством команды services.msc, вводимой в меню «Выполнить» (Win + R), с последующим выбором раздела маршрутизации и удаленного доступа. Здесь должно быть указано рабочее состояние и автоматический тип доступа.

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

Если это не помогает, можно обратиться к помощи некоторых интернет-ресурсов вроде portscan.ru, которые способны отслеживать активное внешнее подключение (в поле подключения вводится значение 1723, после чего используется старт проверки). Но, если все сделано правильно, положительный результат не заставит себя ждать. В противном случае придется проверить настройки роутера и виртуального сервера.

Сторонние программы

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

Рассмотрим одну из наиболее популярных. Она называется SecurityKISS. Установить ее проще простого. Далее следует произвести запуск приложения, после чего пользователю будет предложено произвести минимальные начальные настройки и ввести некоторые нужные данные. Потребуется указать собственный IP. Узнать его можно через команду ipconfig, а при нескольких терминалах в сети - ipconfig /all.

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

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

Что в итоге?

В принципе, на этом вопрос создания VPN-сервера можно и закончить. Однако многим пользователям компьютерных систем следует обратить внимание на некоторые незначительные неувязки. Дело в том, что, в зависимости от установленной версии той же «семерки», названия некоторых полей или строк, подлежащих заполнению, могут отличаться в названиях. Кроме того, некоторые «крэкнутые» модификации Windows 7 могут иметь достаточно ограниченные возможности, поскольку для экономии дискового пространства или увеличения производительности в них были отключены те или иные функции. Это как раз-таки и касается элементов управления сетевыми подключениями на глобальном уровне. Не спасет даже наличие прав доступа на уровне суперадминистратора. Более того - в параметрах локальных групповых политик или в системном реестре, который по большому счету их дублирует, ничего толком настроить не получится.

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

Впрочем, для систем Windows настройки достаточно сложны, особенно с точки зрения неподготовленного юзера. Для простейшего подключения лучше использовать VPN-клиенты, которые и скачать можно бесплатно, и настроить в автоматическом режиме. Да и проблем с ними возникает намного меньше, чем с изменением конфигурации системы, что чревато глобальным «слетом» при совершении неправильных действий.

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

Данная статья представляет из себя ″Quick guide″ по настройке VPN сервера на базе Windows. Все описанные в статье действия производились на Windows Server 2012 R2, но инструкция подходит для любой более менее актуальной (на данный момент) серверной операционной системы Windows, начиная с Windows Server 2008 R2 и заканчивая Windows Server 2016.

Итак начнем. Первое, что нам необходимо сделать — это установить роль удаленного доступа. Для этого в оснастке Server Manager запускаем мастер добавления ролей и выбираем роль «Remote Access» со всеми дополнительными фичами.

И затем в списке сервисов для данной роли выбираем «DirectAccess and VPN (RAS)».

Кроме роли удаленного доступа и инструментов управления будут дополнительно установлены web-сервер IIS и внутренняя база данных Windows. Полный список устанавливаемых компонентов можно просмотреть в финальном окне мастера, перед подтверждением запуска установки.

Все то же самое, только гораздо быстрее, можно проделать с помощью PowerShell. Для этого надо открыть консоль и выполнить команду:

Install-WindowsFeature -Name Direct-Access-VPN -IncludeAllSubFeature -IncludeManagementTools

После установки роли нам потребуется включить и настроить службу с помощью оснастки «Routing and Remote Access». Для ее открытия жмем Win+R и вводим команду rrasmgmt.msc.

В оснастке выбираем имя сервера, жмем правой клавишей мыши и в открывшемся меню выбираем пункт «Configure and Enable Routing and Remote Access».

В окне мастера настройки выбираем пункт «Custom configuration».

И отмечаем сервис «VPN access».

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

Сервис VPN установлен и включен, теперь необходимо сконфигурировать его нужным нам образом. Опять открываем меню и выбираем пункт «Properties».

Переходим на вкладку IPv4. Если у вас в сети нет DHCP сервера, то здесь надо задать диапазон IP адресов, которые будут получать клиенты при подключении к серверу.

Дополнительно на вкладке «Security» можно настроить параметры безопасности — выбрать тип аутентификации, задать предварительный ключ (preshared key) для L2TP или выбрать сертификат для SSTP.

И еще пара моментов, без которых подключение по VPN не сможет состояться.

Во первых, необходимо выбрать пользователей, которые имеют разрешения подключаться к данному серверу. Для отдельно стоящего сервера настройка производится локально, в оснастке «Computer Management». Для запуска оснастки надо выполнить команду compmgmt.msc , после чего перейти в раздел «Local Users and Groups». Затем надо выбрать пользователя, открыть его свойства и на вкладке «Dial-In» отметить пункт «Allow access». Если же компьютер является членом домена Active Directory, то эти же настройки можно произвести из консоли «Active Directory Users and Computers».

И во вторых, необходимо проверить, открыты ли нужные порты на файерволле. Теоретически при добавлении роли соответствующие правила включаются автоматически, но лишний раз проверить не помешает.

На этом все. Теперь VPN сервер настроен и к нему можно подключаться.

Обратите внимание, что здесь не стоит задача объяснить все досконально технически правильно, задача – объяснить «на пальцах» так, чтобы поняли даже начинающие пользователи. Надеюсь, что это получилось. Если есть вопросы – задавайте их в комментариях.

Суть работы VPN-сервера в следующем . Например, вы хотите зайти на сайт yandex.ru. Точнее, подключиться к серверу с IP 77.88.21.11 (жители восточных регионов России могут быть отправлены на сервер с другим IP, но не в этом суть). При работе без VPN ваш компьютер посылает пакет (можно сказать, запрос) напрямую на сервер с адресом 77.88.21.11 и получает от него ответ. При работе через VPN ваш компьютер посылает пакет на VPN-сервер, VPN-сервер точно этот же пакет отсылает на 77.88.21.11, 77.88.21.11 отсылает ответ VPN-серверу (потому что изначально запрос прислал именно VPN-сервер), а VPN-сервер отправляет этот пакет вашему компьютеру.

Что имеем? Запросы на адрес 77.88.21.11 отсылает не ваш компьютер, а VPN, соответственно, сервер 77.88.21.11 фиксирует именно IP-адрес VPN-сервера, а не вашего компьютера.

Одна из возможных причин применения VPN – необходимость скрыть свой IP адрес .

Другое применение – необходимость изменить маршрут трафика . Возьмем пример из жизни. Автор этой статьи живет в городе Орле (Центральная Россия) и хочет подключиться к серверу yunpan.360.cn, расположенному в Пекине. Автор пользуется (точнее, пользовался на тот момент) услугами интернет-провайдера «Билайн». Как показала команда tracert yunpan.360.cn, введенная в командной строке Windows, исходящий интернет-трафик к этому китайскому серверу идет через США. Как трафик идет обратно, трассировка не показывает, но, судя по пингу, он идет примерно тем же маршрутом. Ниже скриншот из программы VisualRoute 2010.

Такая маршрутизация связана с тем, что «Билайн» не заплатил магистральным интернет-провайдерам за более прямой канал в Китай.

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

Что делать? Использовать VPN. Такой VPN-сервер, до которого у нас прямой маршрут, и от которого до yunpan.360.cn прямой маршрут. Я (автор статьи) очень долго искал приемлемое решение и в итоге его нашел. Был арендован виртуальный сервер (что это такое, речь пойдет позже) в Красноярске (сразу представляйте, где находится город Красноярск) у хостинг-провайдера . Трассировка до сервера показала, что трафик идет по России, пинг 95 мс (у меня был мобильный LTE (4G) интернет, на проводном интернете пинг будет на 5-10 мс пониже).

Пинг – это задержка интернет-сигнала. Измеряется задержка на прохождение интернет-трафика в обе стороны (туда и обратно). Измерить задержку только в одну сторону стандартными средствами невозможно, поскольку ваш компьютер отправляет запрос на пингуемый сервер и засекает время, за которое придет ответ.

В трассировках пинг до каждой точки (до каждого пункта маршрута, иначе называемого хопом – прыжком) показывается также для трафика в обе стороны.

Часто бывает так, что в разные стороны маршрут разный.

Далее была сделана трассировка с красноярского сервера до yunpan.360.cn. Пинг в районе 150 мс. Трассировка показала, что трафик от красноярского сервера до китайского идет через прямой пиринг (межсетевое взаимодействие) провайдера «Транстелеком» и «China Telecom».

Вот эта самая трассировка (сделана из-под Linux):

tracepath yunpan.360.cn
1?: pmtu 1500
1: srx.optibit.ru 0.361ms
1: srx.optibit.ru 0.381ms
2: border-r4.g-service.ru 0.392ms
3: kyk02.transtelecom.net 0.855ms asymm 5
4: 10.25.27.5 112.987ms asymm 8
5: ChinaTelecom-gw.transtelecom.net 125.707ms asymm 7
6: 202.97.58.113 119.092ms asymm 7
7: 202.97.53.161 120.842ms asymm 8
8: no reply
9: 220.181.70.138 122.342ms asymm 10
10: 223.202.72.53 116.530ms asymm 11
11: 223.202.73.86 134.029ms asymm 12
12: no reply

Что мы видим? Красноярский сервер находится на хостинге (хостинг – услуга размещения и аренды серверных мощностей) optibit.ru, подключен к интернет-провайдеру «Игра-Сервис» (g-service.ru). «Игра-Сервис», в свою очередь, трафик до yunpan.360.cn пускает через крупного российского магистрального провайдера «Транстелеком» (за что платит ему деньги). ТТК трафик направляет через свое прямое включение в сеть китайского магистрального провайдера China Telecom, об этом нам говорит домен хопа ChinaTelecom-gw.transtelecom.net.

Давайте вспомним, в чем была наша проблема. У нас трафик до того китайского сервера шел через США, скорость была низкой. Что я сделал? На этот красноярский сервер поставил VPN. И настроил свой компьютер на работу через этот VPN-сервер. Что получилось? Теперь трафик до yunpan.360.cn шел не по старому маршруту Орел-Москва-США-Китай, а вот так:

сначала до VPN-сервера – Орел-Красноярск,

затем от VPN-сервера до Пекина – Красноярск-Пекин.

Уловили суть? Мы развернули маршрут. Что это дало? Скорость исходящего соединения от меня до yunpan.360.cn возросла. Пинг был уменьшен. Результат был достигнут.

Как определить ваш маршрут? Для новичков самый простой способ это сделать – воспользоваться программой VisualRoute, которую можно найти в интернете как в лицензионном, так и взломанном видах.

Нужно запустить эту программу и выставить следующие настройки:

Получится вот так:

По этой таблице вы увидите, через какие страны проходит трафик. Еще раз обращаю внимание на то, что трассировка показывает маршрут только исходящего трафика (то есть трафика от вашего компьютера к серверу). Маршрут в обратную сторону может показать только трассировка, сделанная с сервера до вашего компьютера. У VisualRoute есть небольшой глюк: она часто показывает Australia (?) в качестве страны, когда не может определить настоящую геопозицию узла.

VPN – Virtual private network – виртуальная частная сеть – это, можно сказать, своя сеть поверх интернета, весь трафик внутри которой шифруется. Подробно изучить эту технологию можно и . Если объяснить совсем на пальцах, то:

  • ваш компьютер и VPN-сервер соединяются по интернету
  • весь трафик между вами и VPN-сервером шифруется
  • VPN-сервер его отправляет в место назначения
  • ваш IP скрывается, вместо него виден IP-адрес VPN-сервера

VPN рекомендуется использовать при работе через бесплатный (или просто чужой) WiFi, поскольку существует возможность перехвата всего трафика, проходящего через WiFi-роутер. А при использовании VPN весь трафик будет зашифрован. Более того, если вы зайдете на yandex.ru, vk.com и google.ru без VPN, то на уровне роутера и вашего интернет-провайдера зафиксируются подключения к yandex.ru, vk.com и google.ru. При использовании VPN все подключения идут на адрес VPN сервера.

Существует множество платных сервисов VPN. К их преимуществам можно отнести разве что только простоту использования. Из недостатков следует выделить высокую стоимость, отсутствие 100% конфиденциальности (написать можно многое, а что на самом деле происходит на VPN-сервере, не перехватывается ли трафик, гарантировать невозможно). Невозможность сменить IP адрес в пару кликов также следует отнести к недостаткам платных сервисов.

Сравним стоимость нашего самостоятельно настроенного решения и платных VPN-сервисов. Последние стоят в районе 300 руб. в месяц. Наше решение будет стоить 0,007 долларов в час. Не используем VPN прямо сейчас – не платим. При использовании по 2 часа каждый день в течение 30 дней это удовольствие нам обойдется в 30-50 рублей.

Мы сделаем следующее:

  1. Арендуем сервер для VPN.
  2. Настроим на нем VPN.
  3. Будем ими пользоваться и платить только за каждый час реального использования VPN.

Шаг №1. Аренда сервера.

Нет, арендовать полноценный сервер мы не будем. Мы арендуем виртуальный сервер – VPS (virtual private server). В очень многих случаях для размещения сайтов в интернете или для других целей (в т. ч. для организации VPN) не требуется больших серверных мощностей, но необходимо «под себя» настроить операционную систему сервера. Одновременно на одном компьютере (и сервере в том числе, ведь это тот же компьютер, только обычно более мощный) сразу несколько операционных систем работать не может. Как быть? На помощь приходят виртуальные машины. Эта технология позволяет запускать операционную систему внутри операционной системы, что называется виртуализацией. В случае с серверами тоже создаются аналоги виртуальных машин – виртуальные сервера.

Существует несколько распространенных технологий виртуализации. Самые распространенные – это OpenVZ, KVM, Xen. Грубо говоря, у Xen и KVM для каждой виртуальной машины создаются своя «имитация железа», своя ОС и т.д. В случае с OpenVZ используется общее ядро ОС, в результате чего некоторые функции (например, внесение правок в ядро ОС) становятся недоступными, или их можно включать и отключать только для всех VPS сразу. VPS на Xen и KVM, как правило, более стабильны в работе, однако разница существенна только для крупных проектов, для которых критична отказоустойчивость серверов.

VPS на OpenVZ всегда дешевле, поскольку один виртуальный сервер требует меньше ресурсов. Из-за более низкой цена мы обратим свой взор именно на VPS на базе OpenVZ.

Внимание! Некоторые хостинги (компании, предоставляющие услуги аренды серверов) намеренно блокируют работу VPN на серверах на базе OpenVZ! Поэтому перед арендой такого сервера нужно уточнять в службе поддержки (у хорошего хостинга она должна отвечать в течение 15 минут, максимум часа), будет ли работать VPN.

Для работы на сервере персонального VPN хватит минимальной конфигурации – 256 МБ ОЗУ и 0,5-1 ГГц процессора. Однако не все хостинги предоставляют VPS с 256 МБ ОЗУ: у многих минимальный тариф– 512 МБ ОЗУ. Такого VPS нам и подавно хватит.

Какие еще критерии выбора VPS существуют? Как вы уже поняли, интернет-трафик будет постоянно «ходить» от вас к VPS и обратно. Поэтому у магистральных каналов должна быть достаточная пропускная способность в обе стороны. Иначе говоря, скорость интернет-соединения между вашим компьютером и VPS должна быть достаточной для выполнения требуемых вам задач. Для повседневной комфортной работы хватит и 15 МБит/сек, а если вы собираетесь скачивать торренты через VPN, то вам могут понадобятся и все 100 Мбит/сек. Но! Если вы и VPS находитесь в сетях разных интернет-провайдеров (особенно в разных городах), вряд ли магистральные сети «вытянут» более 70 Мбит/сек внутри России (или вашей страны) и более 50 Мбит/сек с серверами в Европе.

Большинство хостингов требует помесячную оплату. Стоит сразу отметить, что разброс цен очень большой при примерно одинаковом качестве. Мы же будем пользоваться услугами с почасовой оплатой: 0,007 долларов за час работы нашего сервера. Таким образом, если мы будем пользоваться VPN по 2 часа каждый день, то в месяц мы заплатим около 30 рублей. Согласитесь, это не 350 руб/мес за платный VPN-сервис!

Первым делом нужно перейти на сайт и зарегистрироваться:

Далее откроется страница, на которой нужно указать данные своей банковской карты. Без этого система не будет работать и не даст возможности воспользоваться бонусными 10 долларами (об этом позже). Данные можно указать любые, система «съест» ненастоящие.

При этом на вашей карте может быть заблокирована сумма в несколько рублей, которая затем будет возвращена. Списания с вашей карты будут только по факту использования серверов.

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

Однако, если вы введете в DigitalOcean данные карты Киви, то система ее «выплюнет», сославшись на то, что DigitalOcean не работает с предоплаченными и виртуальными картами. В таком случае вам нужно пополнить баланс на 5 долларов через систему PayPal, заплатив картой Киви.

После всего этого на той же странице в личном кабинете DigitalOcean вводим промо-код DROPLET10 , начисляющий нам 10 долларов, которые мы сможем полноценно использовать на сервера, не опасаясь дополнительных списаний с нашей карты.

Готово! Теперь перейдем к созданию VPS. Смотрим видео-урок:

При создании сервера выбирайте ОС Ubuntu версии 14.04, а не какой-либо более новой, в т.ч. не выбирайте 16.04.

Расположение сервера

Домен для пинга

Франкфурт, Германия

http://speedtest-fra1.digitalocean.com/

speedtest-fra1.digitalocean.com

Амстердам-1, Нидерланды

http://speedtest-ams1.digitalocean.com/

speedtest-ams1.digitalocean.com

Амстердам-2

http://speedtest-ams2.digitalocean.com/

speedtest-ams2.digitalocean.com

Нью-Йорк-1, США

http://speedtest-ny1.digitalocean.com/

speedtest-ny1.digitalocean.com

Нью-Йорк-2

http://speedtest-ny2.digitalocean.com/

speedtest-ny2.digitalocean.com

Нью-Йорк-3

http://speedtest-ny3.digitalocean.com/

speedtest-ny3.digitalocean.com

Сан-Франциско, США

http://speedtest-sfo1.digitalocean.com/

speedtest-sfo1.digitalocean.com

Лондон, Великобритания

http://speedtest-lon1.digitalocean.com/

speedtest-lon1.digitalocean.com

Сингапур

http://speedtest-sgp1.digitalocean.com/

Speedtest-sgp1.digitalocean.com

Примечание. Большинству жителей России и стран СНГ подойдет Амстердам или Франкфурт (пинг до Франкфурта в большинстве случаев будет немного меньше, чем до Амстердама). Жителям Дальнего востока России рекомендую протестировать Сингапур и сравнить показатели с европейскими серверами.

Расположение серверов за рубежом позволит с помощью VPN обходить запреты государственных органов на посещение определенных сайтов (если это актуально для вас).

У DigitalOcean в стоимость включено 1 терабайт (1024 ГБ) трафика (см. ). Большинству этого хватит с головой. У остальных хостингов трафик формально безлимитный, однако он становится нерентабельным для них при достижении порога 1-2 ТБ/мес.

Всё, мы заказали VPS. Поздравляю. Теперь пора перейти к его настройке.

Шаг №2. Настройка VPN.

Не пугайтесь, процесс настройки своего собственного VPN прост, как дважды-два!

В видео-уроке выше мы подключились к нашему серверу с помощью Putty. Теперь продолжим.

Копируем и вставляем (нажатием правой кнопки мыши, как мы делали в видео-уроке) команду:

Теперь копируем и вставляем в открывшееся окно редактирования файла следующее:

Нажимаем Ctrl+O, затем Enter.

Нажимаем Ctrl+X.

Копируем и вставляем команду:

Вводим 1 и нажимаем Enter. Ждем. Согласно запросам системы, вводим желаемый логин и нажимаем Enter. Аналогично с паролем. На вопросы “[Y]/[N]” вводим Y и нажимаем Enter. После завершения настройки будут показаны наши логин и пароль и IP адрес сервера.

Готово! VPN настроен!

Теперь открываем «Центр управления сетями и общим доступом» Windows:

Выбираем настройку нового подключения:

Выбираем «Подключение к рабочему месту»:

Ждем немного. Теперь мы работаем через VPN! Чтобы в этом удостовериться, идем на и убеждаемся в том, что показываемый нам наш IP адрес совпадает с IP адресом нашего VPS.

Теперь внимание! Через личный кабинет DigitalOcean мы можем выключить наш VPS (droplet в терминологии DigitalOcean), однако даже за сервер в выключенном состоянии идет списание денежных средств по стандартному тарифу. Поэтому мы сделаем резервную копию нашего сервера, удалим его, а когда нам снова понадобится VPN, мы его восстановим из резервной копии!

Перейдем в управление сервером (панель управления DigitalOcean находится по адресу cloud.digitalocean.com, вход в нее возможен через кнопку Sign In на главное странице digitalocean.com в правом верхнем углу).

Нам нужно создать резервную копию (снимок, snapshot) нашего VPS. Но для этого его сначала нужно выключить.

Ждем около минуты, пока сервер выключится. Затем переходим в раздел Snapshots, вводим произвольное имя снимка и создаем его:

За каждый гигабайт «веса» нашего VPS при создании снимка спишется по 2 цента. Создание резервной копии (снимка) займет несколько минут.

Теперь удаляем сервер:

Все! Больше ни за что с нас деньги не списываются.

Что делаем, когда VPN понадобится снова

Нам нужно создать новый VPS из той резервной копии, которую мы сделали до этого.

Нажимаем «создать дроплет»:

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

Чуть ниже нажимаем на название снимка, который мы сделали (был серым, а должен стать синим):

…и нажимаем большую зеленую кнопку «Create droplet».

Ждем около минуты.

Смотрим, совпадает ли IP адрес нашего сервера с прежним. Если да, то в Windows просто возобновляем уже ранее созданное подключение:

Если нет, то нажимаем правой кнопкой мыши на название нашего подключения и меняем IP адрес на новый:

Вводим новый IP и нажимаем «ОК»:

Внимание! Теперь, чтобы выключить VPN, нам не нужно делать резервную копию, просто сразу удаляем сервер, а в следующий раз все восстановим из старого снимка. Перед удалением сервер выключать необязательно. На всякий случай такой порядок действий в скриншотах:

Это мы удалили VPS на время неиспользования VPN. Теперь его восстановим из старого снимка:

Опять проверяем, сохранился ли старый IP и продолжаем работу.

На том же самом сервере (или еще одном) можно поднять свой личный прокси, например, на базу ПО 3proxy, однако это не тема этой статьи.

Нашли опечатку? Выделите и нажмите Ctrl + Enter

В сети много мануалов как поднять свой VPN-сервер на облаке Amazon AWS, но под unix-подобные системы, а вот как поднять его на Windows не рассматривается вовсе.

Поскольку мануалов я не нашел, захотелось разобраться самому и сделать связку Amazon EC2 based on Windows Server + OpenVPN + Android OpenVPN Client.

Топаем в меню Services Compute EC2 Instances . Нажимаем Launch Instance чтобы открылся Wizard . В списке доступных AMI выбираем Microsoft Windows Server 2008 R2 Base - ami-59fc7439

На втором шаге выбираем доступный вариант t2.micro (Free tier) - его возможностей нам хватит с лихвой. Не спешим нажимать Launch - нажимаем Next:Configure Instance Details (предполагаю, что у вас по дефолту настроен VPC, есть дефолтные подсети и создан KeyPairs. Если ключи не созданы, то идём сначала в Dashboard Key Pairs Create . Ключ сохраняем себе куда-нибудь. К слову, я пересобрал с нуля VPC, оставив в нем только одну сеть 10.100.11.0/24).

Настройки оставляем по-умолчанию, а вот Auto-assign Public IP ставим Enable . Затем нажимаем на Preview and Launch. Ждем несколько минут, пока инстанст создается.

В Dashboard слева выбираем раздел Network & Security Security Groups . Выбираем группу, которая ассоциирована с нашим инстансом. Снизу на вкладках Inbound,Outbound добавляем временно разрешения на пропуск всего трафика (alltraff).

На текущий момент там разрешен только RDP. Те, кто спешат, могут на обоих вкладках разрешить порт 1194 для OpenVPN и ICMP. Теперь, когда инстанс создан и работает, нам необходимо подключится к нему. Выбираем наш инстанс, нажимаем Connect .

Появляется окошко с предложением скачать RDP-файл и получить пароль. Скачиваем. Нажимаем Get Password , указываем наш файл ключа, дешифруем, получаем пароль. Первая половина дела завершена. Открываем RDP, соединяемся с хостом.

1. Скачать Google Chrome, чтобы было удобнее проверять.
2. Скачать OpenVPN.
3. Поднять сервер с дефолтной конфигурацией.
4. Поднять NAT.

С первыми двумя пунктами проблем возникнуть не должно, разве что скачивать придется через IE. OpenVPN качаем с официального сайта (MSI), ставим с дефолтными настройками, ничего не меняем.

Через Chrome заходим на ipleak.net и проверяем свой IP. Он будет где-то в регионе США/Орегон. Как сделать сертификаты сервера и клиента для OpenVPN расписывать не буду, материалов достаточно по этой теме. Обязательно создаем PAM-файл (Диффи-Хеллман), без него сервер не запустится.

Ок, всё скачали, установили. На нашем сервере открываем Server Manager , идем в раздел Services . Находим службу OpenVPN Legacy Service , открываем её свойства - указываем Startup type: Automatic и запускаем службу. Это нужно, чтобы после рестарта нашего инстанса OpenVPN-сервер запускался сам.

Теперь открываем - туда скидываем ключи CA.key, server.key,ta.key и dh2048.pem и сертификаты CA и server. Открываем C:\Program Files\OpenVPN\sample-config и оттуда копируем файл server.ovpn в C:\Program Files\OpenVPN\config .

Перезаписываем содержимое like this:

port 1194
proto udp
dev tun

Ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
# виртуальная сеть нашего VPN
server 172.10.10.0 255.255.255.0

Ifconfig-pool-persist ipp.txt
keepalive 10 120

Tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC

max-clients 100

Persist-key
persist-tun

dev-node «HomeVPN»

#HomeVPN - это TAP, созданный при установке OpenVPN. Я его переименовал для удобства

#это нужно чтобы все клиенты могли маршрутизироваться без напрягов
push «route 0.0.0.0 0.0.0.0»

#указываем свои DNS, но это не обязательно
push «dhcp-option DNS 8.8.8.8»
push «dhcp-option DNS 8.8.4.4»

Verb 3
explicit-exit-notify 1


Сохраняем.

Настройка сервера завершена. Выбираем server.ovpn , открываем контекстное меню, выбираем пункт Start OpenVPN on this config file .

После этого откроется терминал и пойдет процесс загрузки. Если все сделано правильно, то увидите в конце надпись Initialization Sequence Complete .

Теперь чтобы не было проблем с подключениями клиентов нужно сделать одну вещь (на выбор), либо в Windows Firewall пишем правила для пропуска трафика OpenVPN и разрешаем порт 1194, либо просто выключаем Firewall. Я выбрал второй пункт .

Теперь нужно создать конфигурацию клиента. Предполагается что на вашем клиенте (Android) установлен OpenVPN Client и в наличии все нужные сертификаты и ключи, в том числе клиентский.

Конфигурация клиента такая:

client
dev tun
proto udp
remote ххх-хх-ххх-ххх-ххх.us-west-2.compute.amazonaws.com 1194
resolv-retry infinite
route-method exe
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
auth SHA1
verb 3
route 0.0.0.0 0.0.0.0 vpn_gateway

В OpenVPN для андройд импортируем конфигурацию. На вкладке Основные ставим тип аутентификации Сертификаты , т.к. пароля у нас в принципе нет. Проверяем вкладку Список серверов , должен быть указан ваш сервер Amazon, порт 1194 и тип UDP. На вкладке IP-адрес и DNS Запрашивать параметры .

На вкладке Маршрутизация для IPv4 должна быть установлена опция Использовать маршрут по-умолчанию .

Сохраняем конфигурацию.

Пробуем подключиться к своему серверу. Если соединение не устанавливается, проверяем Network & Security Security Groups и фаерволл. Если всё ОК, то появится надпись SUCCESS и вы получите какой-либо из IP сети VPN. В моем случае это 172.10.10.6/30.

На клиенте пробуем открыть какой-нибудь сайт… Соединение вроде есть, а сайты не открываются.

В чем же дело? Дело в NAT.

В сети есть мануалы, как настроить NAT на Amazon, с созданием дополнительного AMI, Internet Gate, IP Elastic и прочим фуфлом. Ничего этого делать не нужно.

Всё гораздо проще.

Возвращаемся на наш сервер, создаем роль Network Police and Access Services . В нее входит роль Routing and Remote Access . Открываем контекстное меню, выбираем Configure and Enable .

Выбираем последний пункт, чтобы создать свою конфигурацию. На следующем шаге выбираем два последних пункта, NAT и LAN routing .

После раскрываем роль Routing and Remote Access IPv4 NAT . Создаем интерфейс: LAN1 - тот, что смотрит в интернет. В свойствах ставим Public interface и Enable NAT on this interface . Открываем вкладку Address Pool . Нажимаем Add .

Тут нам нужно добавить IP-адрес нашей машины, не своей сети, а именно машины (ipconfig /all)
Напоминаю, что моя сеть 10.100.11.0/24 , сеть VPN 172.10.10.0/24 , адрес машины 10.100.11.20 . Start address указываем 10.100.11.20 и End address указываем его же. Маска 255.255.255.0

Сохраняем.

Теперь в этом же режиме нажимаем кнопку Reserve Addresses . Нам нужно «соединить» адрес клиента VPN (он при подключении был 172.10.10.6/30) с адресом машины.
Нажимаем Add

Reserve this public IP ставим 10.100.11.20 , а графой ниже пишем 172.10.10.6
Опцию Allow incoming не ставим .

Сохраняем.

Теперь остался последний шаг - в NAT добавляем еще один интерфейс - TAP. Я его назвал у себя HomeVPN. Для него настроек нет, он Private Interface. NAT для него не ставим.

Таким образом получилась «переадресация» из VPN в LAN: 172.10.10.6 → 10.100.11.20 .

На клиенте делаем реконнект, ждем когда VPN-поднимется, открываем ipleak.net и смотрим.

IP-адрес на клиенте будет в регионе USA/Oregon, а IP-адрес WebRTC должен будет показать IP адрес нашего VPN-сервера, т.е. 172.10.10.6 .

Если всё так, значит у вас получилось. Если не так, значит на каком-то шаге вы ошиблись, либо поспешили.

В заключении, идем в Dashboard → раздел Network & Security → Security Groups. Выбираем группу, которая ассоциирована с нашим инстансом. На вкладках Inbound,Outbound убираем разрешения на пропуск всего трафика. Оставляем RDP, и кто не сделал ранее, добавляем правила для порта 1194 и разрешаем ICMP.

За сим - всё. Благодарю.

P.S. На Windows-клиентах не тестировал, но думаю, всё должно быть также, как на android.