Настройка OpenVPN-сервера на Windows 2008/2012
Это пошаговое руководство о том, как настроить OpenVPN-сервер в операционных системах Windows Server 2008/2012 и подключить клиентов к созданной виртуальной частной сети.
OpenVPN — открытая реализация технологии VPN — Virtual Private Network, которая предназначена для создания виртуальных частных сетей между группой территориально удаленных узлов поверх открытого канала передачи данных (интернет). OpenVPN подходит для таких задач, как безопасное удаленное сетевое подключение к серверу без открытия интернет-доступа к нему, как будто вы подключаетесь к хосту в своей локальной сети. Безопасность соединения достигается шифрованием OpenSSL.
Содержание:
Как это работает?
По окончанию настройки OpenVPN сервер сможет принимать внешние защищенные SSL сетевые подключения к созданному при запуске VPN-сервиса виртуальному сетевому адаптеру (tun/tap), не затрагивая правила обработки трафика других интерфейсов (внешний интернет-адаптер и др.
Установка OpenVPN на сервер
Скачайте и установите актуальную версию OpenVPN, соответствующую вашей операционной системе. Запустите установщик, убедитесь что на третьем шаге мастера установки выбраны все компоненты
Обратите внимание, что в этой инструкции дальнейшие команды приведены из расчета, что OpenVPN установлен в директорию по-умолчанию «C:\Program Files\OpenVPN».
Разрешаем добавление виртуального сетевого адаптера TAP в ответ на соответствующий запрос и дожидаемся завершения установки (может занять несколько минут).
Генерация ключей (PKI) центра сертификации, сервера, клиента; алгоритм Диффи-Хеллмана
Для управления парами «ключ/сертификат» всех узлов создаваемой частной сети используется утилита easy-rsa, работающая через командную строку по аналогии с консолью Linux. Для работы с ней откройте запустите командую строку (Сочетание клавиш
Файлы конфигурации
Скачайте наши файлы конфигурации и скрипты и замените их в каталоге C:\Program Files\OpenVPN\easy-rsa.
Если пути по умолчанию не совпадают, откорректируйте их во всех файлах.
В файле конфигурации openssl-1.0.0.conf обязательно задайте значения переменным, соответствующие вашим данным: countryName_default
stateOrProvinceName_default
localityName_default
0.organizationName_default
emailAddress_default
Примечание: если значение переменной содержит пробел, то заключите ее в кавычки.
Генерация ключей Центра Сертификации и Сервера
- Переименуйте файл index.txt.start в index.txt, serial.start в serial с помощью следующих команд:
cd \
cd "C:\Program Files\OpenVPN\easy-rsa"
ren index.txt.start index.txt
ren serial.start serialПерейдем к созданию ключа/сертификата центра сертификации. Запустите скрипт:
.\build-ca.bat
В ответ на появляющиеся запросы вы можете просто нажимать Enter. Единственное исключение — поле KEY_CN (Common Name) — обязательно укажите уникальное имя и такое же имя вставьте в поле name.
- Аналогичным образом генерируем сертификат сервера. Здесь значение полей Common Name и Name — SERVER:
.\build-key-server.bat server
Примечание: аргумент server — имя будущего файла.
Для всех генерируемых ключей теперь будет задаваться вопрос о том, подписать ли создаваемый сертификат (Sign the certificate) от имени центра сертификации. Отвечаем y (yes).
Генерация клиентских ключей и сертификатов
Для каждого клиента VPN необходимо сгенерировать отдельный SSL-сертификат.
В конфигурации OpenVPN присутствует опция, включив которую вы можете использовать один сертификат для нескольких клиентов (см. файл server.ovpn -> опция «dublicate-cn»), но это не рекомендуется с точки зрения безопасности. Сертификаты можно генерировать и в дальнейшем, по мере подключения новых клиентов. Поэтому сейчас создадим только один для клиента client1:
Выполните следующие команды для генерации клиентских ключей: cd \
cd "C:\Program Files\OpenVPN\easy-rsa"
.\build-key.bat client1
Примечание: аргумент client1 — имя будущего файла.
В поле Common Name указываем имя клиента (в нашем случае client1).
Параметры Diffie Hellman
Для завершения настройки шифрования, необходимо запустить скрипт генерации параметров Диффи-Хеллмана: . \build-dh.bat
Отображение информации о создании параметров выглядит так:
Перенос созданных ключей/сертификатов
Сгенерированные сертификаты находятся в директории C:\Program Files\OpenVPN\easy-rsa\keys. Скопируйте перечисленные ниже файлы в каталог C:\Program Files\OpenVPN\config:
- ca.crt
- dh3048.pem/dh2048.pem
- server.crt
- server.key
Конфигурация сервера OpenVPN
В дереве найдите каталог HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters. В правой части окна найдите переменную IPEnableRouter, двойным щелчком мыши перейдите в окно редактирования значения и измените его на 1, тем самым разрешив адресацию на VPS.
- Перейдем к настройке непосредственно VPN-сервера, используйте наш файл конфигурации с именем server.ovpn и поместите его в директорию C:\Program Files\OpenVPN\config.
Откройте файл, находим пути до ключей (см.
port 1194
proto udp
dev tun
server 10.8.0.0 255.255.255.0
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\config\\server.crt"
key "C:\\Program Files\\OpenVPN\\config\\server.key"
dh "C:\\Program Files\\OpenVPN\\config\\dh3048.pem"
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
comp-lzo
persist-key
persist-tunСохраняем файл.
-
Теперь необходимо разрешить пересылку трафика между адаптерами. Выполните следующие шаги: Панель управления -> Сеть и интернет -> Центр управления сетями и общим доступом -> Изменение параметров адаптера. Выберете адаптер который смотрит во внешнюю сеть Интернет (TAP-адаптер отвечает за VPN соединение). В нашем примере это Ethernet 2.
С помощью двойного щелчка мыши откройте Свойства адаптера и перейдите во вкладку Доступ, отметьте галочкой все пункты. Сохраните изменения.
- Далее нужно включить IP-адресацию.
С помощью поиска Windows найдите приложение REGEDIT.exe.
Автозапуск OpenVPN
Сразу настроим службу OpenVPN на автозапуск при старте системы. Открываем «Службы»(Services) Windows. Находим в списке OpenVPN -> ПКМ -> Свойства (Properties) -> Запуск: Автоматически
На этом базовая настройка сервера виртуальной частной сети завершена. Найдите файл C:\Program Files\OpenVPN\config\server.ovpn -> кликните правой кнопкой мыши -> «Start OpenVPN on this config» для запуска сервера виртуальной частной сети и подготовленного нами файла настроек.
Конфигурация клиента OpenVPN
Клиентские приложения OpenVPN доступны для всех популярных ОС:
- Устанавливаем актуальную версию OpenVPN на клиентский компьютер.
- Копируем в директорию C:\Program Files\OpenVPN\config созданные ранее на сервере файлы клиентских сертификатов (2 сертификата с расширением .crt и ключ с расширением .key) и используем наш файл конфигурации клиента client.ovpn. Последний файл после копирования на устройство пользователя удаляем с сервера или переносим из папки config во избежание путаницы в будущем.
- Откройте файл client.ovpn. Найдите строку remote my-server-1 1194 и укажите в ней ip-адрес или доменное имя vpn-сервера:
remote <ip-address> 1194</ip-address>
Например:
remote 111. 222.88.99 1194
- Находим пути до сертификатов. Указываем в нем пути до скопированных ранее сертификатов ca.crt, client1.key, client1.crt как в примере ниже:
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\config\\client1.crt"
key "C:\\Program Files\\OpenVPN\\config\\client1.key"
# This file should be kept secret - Сохраните файл. Настройка клиентской части завершена.
Проверка правил Брандмауэра Windows
Внимание! Для корректной работы сервиса OpenVPN требуется, чтобы на севере были открыты соответствующие порты (по-умолчанию UDP 1194). Проверьте соответствующее правило в вашем Firewall’е: Брандмауэре Windows или стороннем антивирусном ПО.
Проверка OpenVPN-соединения
Запустите OpenVPN сервер, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации сервера (у нас server.ovpn -> ПКМ -> «Start OpenVPN on this config file»).
Запустите клиент, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации клиента (у нас client.ovpn -> ПКМ -> «Start OpenVPN on this config file»).
На экране отобразится окно статуса подключения. Через несколько секунд оно будет свернуто в трей. Зеленый индикатор ярлыка OpenVPN в области уведомлений говорит об успешном подключении.
Проверим доступность с клиентского устройства сервера OpenVPN по его внутреннему адресу частной сети:
- Нажимаем клавиши Win+R и появившемся окне вводим cmd для открытия командной строки.
- Выполняем команду ping до адреса нашего сервера в виртуальной частной сети (10.8.0.1):
ping 10. 8.0.1
- В случае корректной настройки VPN начнется обмен пакетами с сервером
- С помощью утилиты tracert проверим по какому маршруту идут пакеты от клиента. В консоли введите следующую команду:
tracert ya.ru
Из результата работы утилиты мы видим, что сначала пакеты отправляются на сервер VPN, а уже потом во внешнюю сеть.
Теперь вы имеете готовую к работе виртуальную частную сеть, позволяющую осуществлять безопасные сетевые подключения между ее клиентами и сервером, используя открытые и территориально удаленные точки подключения к сети интернет.
P. S. Другие инструкции:
Ознакомиться с другими инструкциями вы можете на нашем сайте. А чтобы попробовать услугу — кликните на кнопку ниже.
Спасибо за Вашу оценку! К сожалению, проголосовать не получилось. Попробуйте позже
Как создать и настроить VPN-сервер на Windows 7
Автор admin На чтение 14 мин. Опубликовано
Помимо мощного компьютера и внушительного списка дополнительных программ для удобного сёрфинга и безопасной работы в интернете, необходим надёжный сервер — инструмент, который обеспечивает связь с людьми, сервисами, компаниями и информационными сайтами. Среди разных типов наиболее удачным выбором будет VPN-сервер хотя бы потому, что он как опция входит в операционную систему Windows. Читайте дальше, и сможете самостоятельно и без затрат запустить и настроить его на Windows 7.
Подключение и настройка VPN-сервера
Не пугайтесь. Создать и подготовить к корректной работе VPN-сервер несложно, но обязательное условие — наличие у вас администраторских прав.
Что такое VPN-сервер
Буквально VPN (Virtual Private Network) переводится как «виртуальная частная сеть». Технически это такая совокупность протоколов и архитектуры решений, которая обеспечивает защищённую коммуникацию в цифровой среде. По сути VPN представляет собой безопасную надстройку поверх привычной виртуальной сети.
Установка и настройка VPN-сервера не потребует от вас много времени, так как он уже встроен в операционную систему Windows. По мнению экспертов, наиболее удачная конфигурация частного сервера содержится именно на этой платформе.
Так выглядит упрощённая схема подключения через VPN-серверРабота сервера заключается в создании туннелей, соединяющих пользователя с теми конечными «точками», куда он стремится попасть. Причём информация шифруется по сложному алгоритму, раскодировать который практически невозможно. Никто извне проникнуть внутрь туннеля не может. Сервер блокирует такие попытки, оставляя хорошо защищённой личную информацию — переписку, звонки, сообщения, видео- и аудиофайлы.
Для чего он нужен
Суть ответа в тех задачах, которые выполняет сервер. Он не только объединяет в виртуальном пространстве множество устройств, таких как компьютерные терминалы, ноутбуки, планшеты и даже мобильные девайсы. Его технология обеспечивает анонимность, шифрование данных и защиту конфиденциальной информации от перехвата злоумышленниками.
Некоторые возразят: у нас нет нужды в анонимности и защите данных, ибо нечего скрывать. Позвольте вам не поверить. Шифрованным трафиком пользуются далеко не одни злоумышленники, большинство не прочь защитить данные, чтобы «не делиться» паролями доступа к своей банковской карте или не стать объектом шантажа из-за утечки личной информации. Как говорится: глупо оставлять дверь дома открытой, если мир состоит не из одних хороших и добрых людей. Анонимность также добавляет приятную деталь — возможность посещать ресурсы, которые до этого были недоступны по разным причинам.
Одна из наиболее частых причин использования ВПН — нежелание быть привязанным к рабочему местуНеплохо упомянуть и о выгоде при использовании VPN:
- масштабируемость — не требуется дополнительных затрат при подключении ещё одного участника;
- гибкость — не имеет значения, откуда вы получаете доступ;
- ценная возможность работать где угодно.
VPN-сервер крайне необходим и при создании корпоративных сетей, когда для безопасной работы компании или предприятия требуется ограничить доступ посторонним лицам к циркулирующей среди сотрудников информации. Используя технические решения VPN, нетрудно организовать конфиденциальность клиентов, находящихся вне фирмы.
Как создать и настроить на компьютере с Windows 7: пошаговая инструкция
Последовательность действий, которые нужно выполнить, чтобы запустить и настроить VPN-сервер на платформе Windows 7, такова.
- Откройте меню «Пуск» и перейдите на вкладку «Панель управления».Перейти из меню «Пуск» в «Панель управления»
- В «Настройках параметров компьютера» выберите «Сеть и интернет».Открыть раздел «Сеть и интернет»
- В открывшемся окне кликните «Центр управления сетями и общим доступом».Выбрать «Центр управления сетями и общим доступом»
- Затем нажмите «Настройка нового подключения или сети».Выбрать «Настройка нового подключения или сети»
- Выберите в новом окне «Подключение к рабочему месту». Нажать на кнопку «Подключение к рабочему месту»
- Затем нажмите на пункт «Использовать моё подключение к интернету (VPN)».Выбрать пункт «Использовать мое подключение к Интернету (VPN)»
- На предложение установить подключение к интернету сразу либо отложить это действие выберите «Отложить настройку подключения к интернету».Выбрать «Отложить настройку подключения к Интернету»
- Далее напишите адрес сервера, имя местоназначения и придумайте название подключения.Ввести адрес VPN-сервера, в поле «Имя местоназначения» написать название подключения
- В следующем окне введите логин и пароль, которые прописаны на сервере VPN. В поле «Запомнить этот пароль» поставьте «галочку», чтобы не вводить его при каждом подключении. Обязательно сохраните.Ввести логин и пароль, прописанные на сервере VPN. Поставить «галочку» в поле «Запомнить этот пароль»
- Подключение создано. Нажмите кнопку «Закрыть». Для удобства создайте ярлык программы на «Рабочем столе».Закрыть окно
- Зайдите снова в меню «Пуск», затем в «Панель управления», «Сеть и интернет», «Управление сетями и общим доступом», где выберите пункт «Изменение параметров адаптера». Зайте в пункт «Изменение параметров адаптера»
- Найдите в этом окне VPN-подключение и кликните по нему правой кнопкой мыши, затем перейдите в его «Свойства».В окне VPN-подключения кликнуть по нему правой кнопкой и перейти в его «Свойства»
- Далее выберите пункт «Безопасность», где в поле «Тип VPN» выберите «Туннельный протокол точка-точка (PPTP)», а в поле «Шифрование данных» кликните на пункт «Необязательное».Открыть «Безопасность» и в поле «Тип VPN» выбрать «Туннельный протокол точка-точка (PPTP)», в поле «Шифрование данных» выбрать «необязательное»
- В этом же окне, только на вкладке «Сеть», уберите галочки напротив пунктов «Клиент для сетей Microsoft» и «Служба доступа к файлам и принтерам сетей Microsoft».На вкладке «Сеть» убрать «галочки» напротив пунктов: «Клиент для сетей Microsoft» и «Служба доступа к файлам и принтерам сетей Microsoft»
- Затем, не закрывая окно, перейдите на вкладку «Параметры» и уберите галочку напротив пункта «Включать домен входа в Windows», после чего нажмите «ОК». На вкладке «Параметры» убрать «галочку» напротив пункта «Включать домен входа в Windows», затем нажать «ОК»
Перед запуском VPN запросит локацию. Лучший выбор — «Общественное место», тогда будет обеспечена наибольшая приватность в цифровом пространстве. По желанию в меню «Соединение» настройте параметры шифрования и применения других устройств.
Если остались вопросы по установке и настройке VPN-сервера в Window 7, посмотрите видео.
Видео: как поднять и настроить VPN-соединение в среде Windows 7
Настройка для нескольких клиентов
Процесс подключения новых участников частной сети происходит следующим образом.
- Перейдите в «Панель управления» => «Сетевые подключения» => «Создание нового подключения».
- Начните работать с «Мастером новых подключений» => «Прямое подключение к другому компьютеру» => «Принимать входящие подключения».
- «Мастер» предложит указать те устройства, с помощью которых планируется принимать входящие подключения, но они не подходят, потому нажмите на «Далее». Когда «Мастер» задаст вопрос о VPN, остановитесь на пункте «Разрешить виртуальные частные сети».
- Ввод параметров авторизации. «Мастер» предлагает выбрать тех пользователей, которым разрешён вход в виртуальную частную сеть. Выбирайте и нажимайте кнопку «Добавить». По требованию «Мастера» введите имя нового пользователя и пароль.
- Настройте TCP/IP-протоколы. Выберите соответствующий пункт в списке протоколов и нажмите на кнопку «Свойства». Для того чтобы клиент мог получить доступ к локальной сети, активируйте опцию «Разрешить звонящим доступ к локальной сети». Далее обозначьте диапазон IP-адресов, которые смогут использовать подключившиеся участники.
Устранение проблем при инсталляции и работе
Запуск VPN нередко сопровождается ошибками. Машина сообщает о них трёхзначной цифрой. Так, ошибки с цифровым значением 6** сообщают о рабочем состоянии сети, но требуется проверить введённую информацию. Имеется в виду тип протокола связи, пароль и имя. Код 7** даёт информацию о присутствии ошибок в настройках подключения. Под кодом 8** скрываются неполадки настройки сети или те, что связаны с банальным отсутствием соединения с интернетом.
Разберём распространённые ошибки и способы их устранения.
Ошибка 807
Такая ошибка указывает на обрыв подключения к сети. Частая причина — неполадки в передаче трафика из-за низкого качества работы интернета или перегруженности сервера.
Так система сообщает об ошибке 807Есть много вариантов решения проблемы. Попробуйте пересоздать VPN-подключение. Не помогло? Значит, удаляйте систему КВ958869 или лучше восстановите на предшествующее состояние. Снова не получилось? Тогда переведите тип соединения с автоматической функции на «PPTP». Учитывайте, что ошибка 807 возникает также при блокировании брандмауэром/файерволом, поэтому попробуйте отключить их.
Ошибка 868
Речь идёт о неправильной работе VPN-портов. Часто обрыв происходит из-за неверного имени DNS-сервера. Потому в первую очередь посмотрите протокол TCP/IP. Там либо неправильно указан адрес DNS, либо не введён вовсе.
Так выглядит сообщение об ошибке 868Определите состояние соединения по локальной сети. Во вкладке «Сетевые подключения» последовательно выполните следующие действия: «Пуск» => «Панель управления» => «Сеть и интернет» => «Центр управления сетями» => «Изменения параметров адаптера». Обнаруженный недочёт продиктует дальнейшие действия.
Так, если нет подключения по локальной сети, подключайтесь через VPN. Результата нет? Проверьте, действует ли кабель. При его отключении увидите на соответствующей иконке голубые экраны с красным крестом. Попробуйте правой клавишей сначала отключить, а потом снова подключить соединение. Опять ничего не произошло? Тогда ту же операцию «отключить/подключить» проделайте с кабелем (вручную).
Ошибка ещё остаётся? Займитесь проверкой подключения. Откройте его правой кнопкой и посмотрите, сколько пакетов отправлено — их должно быть не менее 5–7. Если в отправку ушло меньше или вовсе пусто, то выясните, как работает оборудование. Зайдите в «Администрирование» таким путём: «Пуск» => «Панель управления» => «Система и безопасность» => «Администрирование» => «Службы». В списке служб найдите DHCP-клиент. Перезапустите его правой кнопкой. Затем перезагрузите ПК.
Причиной нерабочего состояния бывает и блокировка порта 53. Ваша излишняя осторожность просто-напросто сыграла злую шутку — вы сами запрограммировали систему безопасности таким образом, что она не допускает абсолютно всё. В связи с этим рекомендуется проверить, не заблокирован ли порт 53. Даже если написано «Порт открыт», это вовсе не означает, что соединение проходит. Здесь имеется в виду только готовность к подключению. Просто создайте разрешающее правило для порта 53 в протоколе TCP и UDP. Результата нет? Тогда придётся прибегнуть к крайней мере, то есть переустановить Windows.
Обязательно посмотрите видео с подробной инструкцией открытия порта. Там же показаны способы исправления ошибок соединения с портами.
Видео: открытие порта в локальной сети
Ошибки 734 и 741
Ошибка 734 возникает, когда прерывается «Протокол управления PPP-связью», а ошибка 741 связана с тем, что машина не распознают этот вид шифрования.
Ошибка 734 устраняется с помощью простого алгоритмаИсправить ситуацию помогут простые действия. Дважды щёлкните левой кнопкой по VPN и откройте «Свойства», затем «Безопасность» и снимите отметку с пункта «Требуется шифрование данных». Подтвердите свои намерения.
Это лишь малая часть проблем, которые возникает при запуске VPN, однако почти все они решаются достаточно просто и без особых временных затрат.
Что такое OpenVPN
Самое популярное решение для организации частной сети — OpenVPN. Основное преимущество — экономность, так как трафик идёт в сжатом виде. Среди недостатков программы сложность настройки, которой сейчас мы с вами и займёмся.
OpenVPN — специальная программа для настройки VPN-соединения. Естественно, сначала её нужно инсталлировать на свой компьютер. Брать файл загрузки лучше с официального сайта программы: https://openvpn.net/index.php/open-source/downloads.html#latest-stable
Процесс установки достаточно прост, разве что будет нужно временно отключить антивирус. При загрузке программы в систему вводится виртуальный сетевой адаптер TAP-Win32 Adapter V9 и драйвер к нему. Задача OpenVPN задавать IP-адрес и маску локальной надстройки.
Прежде всего нужно скопировать конфигурационный файл, который вам должен предоставить провайдер. Данные сохраните в папке C:\Program Files\OpenVPN\config. Находясь в ней, кликните на пункт «Вставить».
OpenVPN следует запускать только с администраторскими правами, иначе программа может работать некорректно. Обязательно поменяйте свойства совместимости в ОС. На OpenVPN откройте «Свойства», найдите пункт «Совместимость», где отметьте «Выполнять эту программу от имени администратора». Далее подтвердите ваши действия, кликнув на «ОК». Должно появиться окно лога подключения.
Если вы выполнили все действия верно, то настройка VPN через протокол OpenVPN для Windows 7 прошла удачно. Затруднения всё же возникли? Посмотрите скриншоты пошаговой инструкции настройки Open VPN и небольшое видео.
Настраиваем программу пошагово (фото)
Видео: установка OpenVPN GUI
Настройка IPSec VPN
Стандарт IPSec специально предназначен для усиления безопасности IP-протокола. Позволяет подтвердить подлинность (аутентификацию), а также осуществляет проверку целостности и шифрования IP-пакетов. IPsec содержит протоколы для безопасного обмена ключами:
- RFC 2401 IPSec,
- RFC 2402 AH,
- RFC 2406 ESP,
- RFC 2409 IKE.
Как можно настроить VPN посредством IPsec, изложено в пошаговом руководстве ниже.
- В «Панели управления» кликните «Просмотр: Мелкие значки», потом перейдите на «Центр управления».
- Далее найдите «Настройку нового подключения» на вкладке «Изменение сетевых параметров».
- Завершите действие щелчком по «Подключению к рабочему месту». Перейдите на него по вкладке «Установка подключения или сети».
- Дальше действуете в зависимости от того, было ли ранее установлено на вашу машину VPN. Если да, то во всплывающем окне нажмите «Нет, создать новое подключение и продолжить свои действия». Если нет, то выберите «Использовать моё подключение к интернет».
- Не забудьте добавить адрес вашего VPN, а в строке «Имя местоназначения» напишите имя сервера. Не забудьте про отметку. Выберите графу «Установка для подключения в будущем» и продолжите ваши действия.
- Далее добавьте ваш пароль и логин, зарегистрированные на VPN-сервере. В открывшемся окне дайте согласие на подключение.
- Затем в «Центре управления сетями» измените настройки адаптера.
- И наконец выберите «Тип VPN». Это будет IPsec VPN. Конечно, отметьте, что шифрование необязательно. VPN-канал на IPsec готов!
В завершение темы о IPsec VPN хотелось бы подчеркнуть полезность программы, учитывая два недостатка, которые имеет VPN. Первый и самый серьёзный — уязвимость протокола PPTP. Речь идёт о недостаточной надёжности однофакторной аутентификация. Иначе говоря, когда мы подтверждаем своё право доступа только при помощи логина и пароля. При этом логин или имя пользователя обычно известны, а пароль достаточно часто попадает в руки хакера (например, при внедрении в вашу ОС вируса-трояна). Тогда постороннее лицо получает полный доступ к локальной сети. Второй недостаток — нет никакой возможности проверить, что подключение было проведено доверенным пользователем, а не тем же злоумышленником, который получил доступ к учётной записи.
Видео: настраиваем IPsec-туннель между двумя маршрутизаторами Mikrotik
Теперь, пользователь, вам известны если и не все, то основные шаги по созданию и настройке собственной, полноценной и вполне безопасной виртуальной сети на основе VPN-соединения в среде Windows 7. Вы также узнали, как правильно настроить программы OpenVPN и IPsec VNP. Будьте уверены, частный сервер гарантирует такое же полноценное соединение, как и обычный. Ваш компьютер не заметит разницы между VPN и каналом без шифрования, однако безопасность вашей работы в цифровом пространстве возрастает в несколько раз.
Оцените статью: Поделитесь с друзьями!Настройка сервера OpenVPN на Windows
OpenVPN – один из вариантов VPN (virtual private network или частных виртуальных сетей), позволяющих реализовать передачу данных по специально созданному зашифрованному каналу. Таким образом можно соединить два компьютера или построить централизованную сеть с сервером и несколькими клиентами. В этой статье мы научимся создавать такой сервер и настраивать его.
Настраиваем OpenVPN сервер
Как уже было сказано выше, с помощью технологии, о которой идет речь, мы можем передавать информацию по безопасному каналу связи. Это может быть обмен файлами или защищенный доступ в интернет через сервер, являющийся общим шлюзом. Для его создания нам не потребуется дополнительное оборудование и особые знания – все делается на том компьютере, который планируется использовать в качестве сервера VPN.
Для дальнейшей работы необходимо будет также настроить и клиентскую часть на машинах пользователей сети. Вся работа сводится к созданию ключей и сертификатов, которые затем передаются клиентам. Эти файлы позволяют при подключении к серверу получить IP-адрес и создать упомянутый выше зашифрованный канал. Вся информация, переданная по нему, может быть прочитана только при наличии ключа. Эта особенность позволяет значительно повысить безопасность и обеспечить сохранность данных.
Установка OpenVPN на машину-сервер
Инсталляция представляет собой стандартную процедуру с некоторыми нюансами, о которых и поговорим подробнее.
- Первым делом необходимо скачать программу по ссылке ниже.
Скачать OpenVPN
- Далее запускаем установщик и доходим до окна выбора компонентов. Здесь нам потребуется поставить галку возле пункта с названием «EasyRSA», что позволит создавать файлы сертификатов и ключей, а также управлять ими.
- Следующий шаг – выбор места для инсталляции. Для удобства поместим программу в корень системного диска С:. Для этого просто удалим лишнее. Должно получиться
C:\OpenVPN
Делаем мы это и для того, чтобы избежать сбоев при выполнении скриптов, так как пробелы в пути недопустимы. Можно, конечно, брать их в кавычки, но внимательность может и подвести, а искать ошибки в коде – дело непростое.
- После всех настроек устанавливаем программу в штатном режиме.
Настройка серверной части
При выполнении следующих действий следует быть максимально внимательным. Любые огрехи приведут к неработоспособности сервера. Еще одно обязательное условие – ваша учетная запись должна иметь права администратора.
- Идем в каталог «easy-rsa», который в нашем случае находится по адресу
C:\OpenVPN\easy-rsa
Находим файл vars.bat.sample.
Переименовываем его в vars.bat (удаляем слово «sample» вместе с точкой).
Открываем этот файл в редакторе Notepad++. Это важно, так как именно этот блокнот позволяет правильно редактировать и сохранять коды, что помогает избежать ошибок при их выполнении.
- В первую очередь удаляем все комментарии, выделенные зеленым цветом – они нам будут только мешать. Получим следующее:
- Далее меняем путь к папке «easy-rsa» на тот, который мы указывали при установке. В данном случае просто удаляем переменную %ProgramFiles% и меняем ее на C:.
- Следующие четыре параметра оставляем без изменений.
- Остальные строки заполняем произвольно. Пример на скриншоте.
- Сохраняем файл.
- Требуется также отредактировать следующие файлы:
- build-ca.bat
- build-dh.bat
- build-key.bat
- build-key-pass.bat
- build-key-pkcs12.bat
- build-key-server.bat
В них нужно поменять команду
openssl
на абсолютный путь к соответствующему ей файлу openssl.exe. Не забываем сохранять изменения.
- Теперь открываем папку «easy-rsa», зажимаем SHIFT и кликаем ПКМ по свободному месту (не по файлам). В контекстном меню выбираем пункт «Открыть окно команд».
Запустится «Командная строка» с уже осуществленным переходом в целевой каталог.
- Вводим команду, указанную ниже, и нажимаем ENTER.
vars.bat
- Далее запускаем еще один «батник».
clean-all.bat
- Повторяем первую команду.
- Следующий шаг – создание необходимых файлов. Для этого используем команду
build-ca.bat
После выполнения система предложит подтвердить данные, которые мы вносили в файл vars.bat. Просто несколько раз нажимаем ENTER, пока не появится исходная строка.
- Создаем DH-ключ с помощью запуска файла
build-dh.bat
- Готовим сертификат для серверной части. Здесь есть один важный момент. Ему нужно присвоить то имя, которое мы прописали в vars.bat в строке «KEY_NAME». В нашем примере это Lumpics. Команда выглядит следующим образом:
build-key-server.bat Lumpics
Здесь также необходимо подтвердить данные с помощью клавиши ENTER, а также два раза ввести букву «y» (yes), где потребуется (см. скриншот). Командную строку можно закрыть.
- В нашем каталоге «easy-rsa» появилась новая папка с названием «keys».
- Ее содержимое требуется скопировать и вставить в папку «ssl», которую необходимо создать в корневом каталоге программы.
Вид папки после вставки скопированных файлов:
- Теперь идем в каталог
C:\OpenVPN\config
Создаем здесь текстовый документ (ПКМ – Создать – Текстовый документ), переименовываем его в server.ovpn и открываем в Notepad++. Вносим следующий код:
port 443
proto udp
dev tun
dev-node "VPN Lumpics"
dh C:\\OpenVPN\\ssl\\dh3048.pem
ca C:\\OpenVPN\\ssl\\ca.crt
cert C:\\OpenVPN\\ssl\\Lumpics.crt
key C:\\OpenVPN\\ssl\\Lumpics.key
server 172.16.10.0 255.255.255.0
max-clients 32
keepalive 10 120
client-to-client
comp-lzo
persist-key
persist-tun
cipher DES-CBC
status C:\\OpenVPN\\log\\status.log
log C:\\OpenVPN\\log\\openvpn.log
verb 4
mute 20Обратите внимание, что названия сертификатов и ключей должны совпадать с расположенными в папке «ssl».
- Далее открываем «Панель управления» и переходим в «Центр управления сетями».
- Нажимаем на ссылку «Изменение параметров адаптера».
- Здесь нам нужно найти подключение, осуществляемое через «TAP-Windows Adapter V9». Сделать это можно, нажав по соединению ПКМ и перейдя к его свойствам.
- Переименовываем его в «VPN Lumpics» без кавычек. Это название должно совпадать с параметром «dev-node» в файле server.ovpn.
- Заключительный этап – запуск службы. Нажимаем сочетание клавиш Win+R, вводим строку, указанную ниже, и жмем ENTER.
services.msc
- Находим сервис с названием «OpenVpnService», кликаем ПКМ и идем в его свойства.
- Тип запуска меняем на «Автоматически», запускаем службу и нажимаем «Применить».
- Если мы все сделали правильно, то возле адаптера должен пропасть красный крестик. Это значит, что подключение готово к работе.
Настройка клиентской части
Перед началом настройки клиента необходимо совершить несколько действий на серверной машине – сгенерировать ключи и сертификат для настройки подключения.
- Идем в каталог «easy-rsa», затем в папку «keys» и открываем файл index.txt.
- Открываем файл, удаляем все содержимое и сохраняем.
- Переходим обратно в «easy-rsa» и запускаем «Командную строку» (SHIFT+ПКМ – Открыть окно команд).
- Далее запускаем vars.bat, а затем создаем клиентский сертификат.
build-key.bat vpn-client
Это общий сертификат для всех машин в сети. Для повышения безопасности можно сгенерировать для каждого компьютера свои файлы, но назвать их по-другому (не «vpn-client», а «vpn-client1» и так далее). В этом случае необходимо будет повторить все действия, начиная с очистки index.txt.
- Заключительное действие – перенос файлов vpn-client.crt, vpn-client.key, ca.crt и dh3048.pem клиенту. Сделать это можно любым удобным способом, например, записать на флешку или передать по сети.
Работы, которые необходимо выполнить на клиентской машине:
- Устанавливаем OpenVPN обычным способом.
- Открываем каталог с установленной программой и переходим в папку «config». Сюда необходимо вставить наши файлы сертификатов и ключей.
- В этой же папке создаем текстовый файл и переименовываем его в config.ovpn.
- Открываем в редакторе и прописываем следующий код:
client
resolv-retry infinite
nobind
remote 192.168.0.15 443
proto udp
dev tun
comp-lzo
ca ca.crt
cert vpn-client.crt
key vpn-client.key
dh dh3048.pem
float
cipher DES-CBC
keepalive 10 120
persist-key
persist-tun
verb 0В строке «remote» можно прописать внешний IP-адрес серверной машины – так мы получим доступ в интернет. Если оставить все как есть, то будет возможно только соединение с сервером по зашифрованному каналу.
- Запускаем OpenVPN GUI от имени администратора с помощью ярлыка на рабочем столе, затем в трее находим соответствующую иконку, жмем ПКМ и выбираем первый пункт с названием «Подключиться».
На этом настройка сервера и клиента OpenVPN завершена.
Заключение
Организация собственной VPN-сети позволит вам максимально защитить передаваемую информацию, а также сделать интернет-серфинг более безопасным. Главное – быть внимательнее при настройке серверной и клиентской части, при правильных действиях можно будет пользоваться всеми преимуществами частной виртуальной сети.
Мы рады, что смогли помочь Вам в решении проблемы.Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТНастройка сервера удаленного доступа для постоянно подключенного VPN-профиля
Служба RRAS разработана так же, как маршрутизатор и сервер удаленного доступа, поскольку она поддерживает широкий набор функций. Для целей этого развертывания требуется только небольшое подмножество этих функций: поддержка VPN-подключений IKEv2 и маршрутизация по локальной сети.
IKEv2 — это туннельный протокол VPN, описанный в статье запрос принудительного запроса задачи по инженерам Интернета для комментариев 7296. Основное преимущество IKEv2 заключается в том, что оно допускает прерывания в базовом сетевом подключении. Например, если подключение временно потеряно или пользователь переместит клиентский компьютер из одной сети в другую, IKEv2 автоматически восстанавливает VPN-подключение при переустановке сетевого подключения — без вмешательства пользователя.
Настройте сервер RRAS для поддержки подключений IKEv2 при отключении неиспользуемых протоколов, что снижает объем безопасности сервера. Кроме того, настройте сервер для назначения адресов VPN-клиентам из статического пула адресов. Вы можете феасибли назначать адреса из пула или DHCP-сервера. Однако использование DHCP-сервера повышает сложность проектирования и предоставляет минимальные преимущества.
В этой процедуре вы устанавливаете роль удаленного доступа как VPN-сервер шлюза RAS одного клиента. Дополнительные сведения см. в разделе Удаленный доступ.
Для установки роли удаленного доступа с помощью диспетчер сервера можно использовать следующую процедуру.
Откроется диалоговое окно Мастер добавления ролей и компонентов .
В этом разделе вы можете настроить VPN удаленного доступа, разрешающее подключения по протоколу IKEv2 VPN, запретить подключения от других протокола VPN и назначить пул статических IP-адресов для выдачи IP-адресов для подключения разрешенных VPN-клиентов.
На VPN-сервере в диспетчер сервера выберите флаг уведомлений .
В меню задачи выберите команду открыть мастер начало работы .
Откроется мастер настройки удаленного доступа.
Примечание
Мастер настройки удаленного доступа может открыться позади диспетчер сервера. Если вы считаете, что мастер занимает слишком много времени, переместите или уменьшите диспетчер сервера, чтобы узнать, находится ли мастер за ним. В противном случае дождитесь инициализации мастера.
Выберите вариант развернуть только VPN.
Откроется консоль управления Microsoft (MMC) Маршрутизация и удаленный доступ.
Щелкните правой кнопкой мыши VPN-сервер, а затем выберите настроить и включить маршрутизацию и удаленный доступ.
Откроется мастер установки сервера маршрутизации и удаленного доступа.
В окне приветствия мастера установки сервера маршрутизации и удаленного доступа нажмите кнопку Далее.
В окне Конфигурация выберите Настраиваемая конфигурация, а затем нажмите кнопку Далее.
В окне Настраиваемая конфигурация выберите VPN-доступ, а затем нажмите кнопку Далее.
Откроется окно Завершение работы мастера установки сервера маршрутизации и удаленного доступа.
Нажмите кнопку Готово , чтобы закрыть мастер, а затем кнопку ОК , чтобы закрыть диалоговое окно Маршрутизация и удаленный доступ.
Выберите запустить службу , чтобы запустить удаленный доступ.
В консоли управления для удаленного доступа щелкните правой кнопкой мыши VPN-сервер и выберите пункт Свойства.
В окне Свойства перейдите на вкладку Безопасность и выполните следующие действия.
а. Выберите поставщик проверки подлинности и выберите Проверка подлинности RADIUS.
b. Нажмите кнопку Настроить.
Откроется диалоговое окно Проверка подлинности RADIUS.
c. Выберите Добавить.
Откроется диалоговое окно Добавление сервера RADIUS.
d. В поле имя сервера введите полное доменное имя (FQDN) сервера политики сети в вашей организации или корпоративной сети.
Например, если NetBIOS-имя сервера NPS — NPS1, а имя домена — corp.contoso.com, введите NPS1.Corp.contoso.com.
д) В окне общий секрет выберите изменить.
Откроется диалоговое окно изменение секрета.
е) В поле новый секрет введите текстовую строку.
ж. В поле Подтверждение нового секрета введите ту же текстовую строку, а затем нажмите кнопку ОК.
Важно!
Сохраните эту текстовую строку. При настройке сервера политики сети в организации или корпоративной сети этот VPN-сервер будет добавлен в качестве RADIUS-клиента. Во время этой конфигурации вы будете использовать тот же общий секрет, чтобы серверы NPS и VPN могли обмениваться данными.
В окне Добавление сервера RADIUS проверьте параметры по умолчанию для.
При необходимости измените значения в соответствии с требованиями для вашей среды и нажмите кнопку ОК.
NAS — это устройство, предоставляющее некоторый уровень доступа к более крупной сети. NAS, использующий инфраструктуру RADIUS, также является клиентом RADIUS, который отправляет запросы на подключение и сообщения учета на сервер RADIUS для проверки подлинности, авторизации и учета.
Проверьте настройку регистратора.
Если требуется… | То… |
---|---|
Действие удаленного доступа, зарегистрированное на сервере удаленного доступа | убедитесь, что выбрана учет Windows . |
Сервер политики сети для выполнения служб учета VPN | Измените поставщик учетной отчетности на RADIUS-учет , а затем настройте NPS в качестве поставщика учетных данных. |
Перейдите на вкладку IPv4 и выполните следующие действия.
а. Выберите статический пул адресов.
b. Выберите Добавить , чтобы настроить пул IP-адресов.
Пул статических адресов должен содержать адреса из внутренней сети периметра. Эти адреса находятся на внутреннем сетевом подключении на VPN-сервере, а не в корпоративной сети.
c. В поле начальный IP-адрес введите начальный IP-адрес в диапазоне, который вы хотите назначить VPN-клиентам.
d. В поле конечный IP-адрес введите конечный IP-адрес в диапазоне, который вы хотите назначить VPN-клиентам или в поле число адресов введите номер адреса, который необходимо сделать доступным. Если вы используете DHCP для этой подсети, убедитесь, что на DHCP-серверах настроено соответствующее исключение адресов.
д) Используемых Если вы используете DHCP, выберите адаптер и в списке результатов выберите адаптер Ethernet, подключенный к внутренней сети периметра.
Используемых При настройке условного доступа для VPN-подключения из раскрывающегося списка Сертификат в разделе привязка SSL-сертификата выберите аутентификацию сервера VPN.
Используемых Если вы настраиваете условный доступ для VPN-подключения, в консоли управления «NPS» разверните узел политики политики \ сети и выполните следующие действия.
а. Правой кнопкой мыши щелкните подключения к сетевой политике сервера маршрутизации и удаленного доступа Майкрософт и выберите свойства.
b. Выберите доступ с предоставлением доступа. Предоставить доступ, если запрос на подключение соответствует этому параметру политики.
c. В разделе Тип сервера сетевого доступа выберите сервер удаленного доступа (VPN-подключение) в раскрывающемся списке.
В консоли MMC «Маршрутизация и удаленный доступ» щелкните правой кнопкой мыши элемент порты и выберите пункт свойства.
Откроется диалоговое окно Свойства портов.
Выберите Минипорт WAN (SSTP) и щелкните Configure (настроить). Откроется диалоговое окно Настройка мини-порта устройства WAN (SSTP).
а. Снимите флажки подключения удаленного доступа (только входящие) и подключения с маршрутизацией вызовов по требованию (входящие и исходящие) .
b. Щелкните ОК.
Выберите Минипорт WAN (L2TP) и щелкните Configure (настроить). Откроется диалоговое окно Настройка мини-порта устройства WAN (L2TP).
а. В поле Максимальное число портов введите количество портов в соответствии с максимальным количеством одновременных VPN-подключений, которые требуется поддерживать.
b. Щелкните ОК.
Выберите Минипорт WAN (PPTP) и щелкните Configure (настроить). Откроется диалоговое окно Настройка мини-порта устройства WAN (PPTP).
а. В поле Максимальное число портов введите количество портов в соответствии с максимальным количеством одновременных VPN-подключений, которые требуется поддерживать.
b. Щелкните ОК.
Выберите Минипорт WAN (IKEv2) и щелкните Configure (настроить). Откроется диалоговое окно Настройка мини-порта устройства WAN (IKEv2).
а. В поле Максимальное число портов введите количество портов в соответствии с максимальным количеством одновременных VPN-подключений, которые требуется поддерживать.
b. Щелкните ОК.
При появлении запроса выберите Да , чтобы подтвердить перезапуск сервера, и нажмите кнопку Закрыть , чтобы перезапустить сервер.
Шаг 4. установка и настройка сервера политики сети (nps). на этом шаге вы устанавливаете сервер политики сети (nps) с помощью Windows PowerShell или мастера диспетчер сервера добавление ролей и компонентов. Вы также настраиваете NPS для обработки всех операций проверки подлинности, авторизации и учета для запросов на подключение, получаемых от VPN-сервера.
Установка OpenVPN сервера на Linux и настройка клиента для подключения к нему
В данной статье расскажем о трёх способах установки OpenVPN-сервера — от простого к более сложному, а также о том, как настроить OpenVPN-клиент для подключения к этому серверу.
Требования к серверу
Эта инструкция может быть использована как на Linux VPS/VDS на виртуализации KVM, так и на выделенных серверах.
Важно. На виртуализациях OpenVZ и FreeBSD-Jail устройство TUN/TAP работать не будет.
Шаг первый. Установка OpenVPN
1 способ. В docker контейнере
Для этого требуется установить пакеты:
Debian\Ubuntu:
apt install curl docker.io
Centos 7:
yum install docker curl
Затем необходимо выполнить команду установки docker контейнера:
docker run --name dockovpn --cap-add=NET_ADMIN \ -p 1194:1194/udp -p 80:8080/tcp \ -e HOST_ADDR=$(curl -s https://api.ipify.org) \ alekslitvinenk/openvpn
После чего будет сгенерирован config для подключения к серверу OpenVPN, который единоразово можно скачать по ссылке http://Ваш IP/.
Следующим шагом подключаетесь к серверу способом, описанном в пункте 2.
2 способ. Установка OpenVPN скриптом
Установка OpenVPN скриптом происходит в полуавтоматическом режиме.
Скачаем скрипт:
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
Дадим ему права на выполнение:
chmod +x openvpn-install.sh
После чего запускаем скрипт:
./openvpn-install.sh
После запуска скрипта необходимо ответить на несколько вопросов, а именно указать ваш IP-адрес и шлюз по умолчанию.
Так как скрипт автоматически определяет конфигурацию, она может быть определена не совсем верно, а значит и конфигурационный файл для подключения будет сгенерирован некорректно. Чтобы этого избежать, введем только IP-адрес, и уберем информацию о шлюзе.
После установки скрипт предложит выбрать имя клиента и уточнит, требуется ли пароль для ключа. Необходимо ввести имя пользователя и придумать пароль, которым вы будете пользоваться при подключении к OpenVPN-серверу. Если не хотите использовать пароль при подключении, поставьте цифру 1.
Client name: openvpn Do you want to protect the configuration file with a password? (e.g. encrypt the private key with a password) 1) Add a passwordless client 2) Use a password for the client Select an option [1-2]: 1
В результате будет сгенерирован файл по пути /root/client.ovpn
, где client
— имя, которое вы задали в поле Имя Пользователя
.
Файл достаточно скачать с сервера и выполнить подключение к VPN-серверу способом, описанным в пункте 2.
Повторный запуск скрипта позволяет:
- добавить пользователя openvpn,
- удалить пользователя openvpn,
- удалить OpenVPN.
3 способ. Установка OpenVPN вручную
Выполним установку openvpn сервера:
apt install -y openvpn
Для OpenVPN версии выше 2.3 набор скриптов easy-rsa не входит в инсталляцию по умолчанию, а скачивается отдельно.
Распаковываем структуру ключей:
mkdir /src; cd /src && wget https://github.com/OpenVPN/easy-rsa/archive/master.zip unzip master.zip cd easy-rsa-master/easyrsa3 ./easyrsa init-pki
Создаём центр сертификации. В процессе вы получите запрос на ввод пароля от 4 до 32 символов, сохраните его, он нам потребуется в будущем:
./easyrsa build-ca
Получаем:
./pki/ca.crt ./pki/private/ca.key
Теперь генерируем запрос на создание сертификата, чтобы в дальнейшем подключаться к серверу без пароля:
./easyrsa gen-req server nopass
Подписываем запрос, будет запрошен пароль. Используем пароль, который сохранили при создании центра сертификации:
./easyrsa sign-req server server
Получаем:
./pki/issued/server.crt
Генерируем ключи для клиента:
./easyrsa gen-req client nopass ./easyrsa sign-req client client
Будет запрошен пароль, который мы сохранили при создании центра сертификации:
Получаем два файла:
./pki/private/client.key ./pki/issued/client.crt
Генерируем файл с параметрами Диффи-Хеллмана (dh.pem):
./easyrsa gen-dh
Это может занять продолжительное время. Получаем:
./pki/dh.pem
Перенесём полученные файлы в /etc/openvpn/ для удобства:
mv ./pki/dh.pem /etc/openvpn/dh2024.pem mv ./pki/private/client.key /etc/openvpn/ mv ./pki/private/server.key /etc/openvpn/ mv ./pki/ca.crt /etc/openvpn/ mv ./pki/issued/client.crt /etc/openvpn/ mv ./pki/issued/server.crt /etc/openvpn/
Файлы client.crt
, client.key
, ca.crt
нужно скопировать на компьютер пользователя, который будет подключаться к OpenVPN-серверу:
cd /etc/openvpn mkdir ovpn-client cp -rp client.crt client.key ca.crt ./ovpn-client/ zip ovpn-client.zip ./ovpn-client/*
Теперь настроим конфигурационный файл сервера. Он должен находиться в /etc/openvpn
и называться server.conf
. Пример конфигурационного файла server.conf
с рабочего OpenVPN сервера:
port 1194 proto tcp dev tun ca ca.crt cert server.crt key server.key # This file should be kept secret dh dh2024.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo persist-key persist-tun status openvpn-status.log log openvpn.log log-append openvpn.log verb 3 push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8"
В конфигурационном файле в опциях ca
, cert
, key
, dh
можно использовать абсолютные пути до файлов или пути относительно директории /etc/openvpn
.
Пример использования абсолютных путей:
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt cert /etc/openvpn/easy-rsa/2.0/keys/server.crt key /etc/openvpn/easy-rsa/2.0/keys/server.key dh /etc/openvpn/easy-rsa/2.0/keys/dh2024.pem
Сохраняем файл. Выполняем команду настройки маршрутизации для OpenVPN сервера:
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE echo 1 > /proc/sys/net/ipv4/ip_forward
Запускаем OpenVPN:
systemctl start openvpn
Шаг второй. Настройка клиента OpenVPN
Для подключения к серверу, который мы настроили, необходимо настроить клиент OpenVPN. В случае, если сервер был установлен скриптом или с использованием docker-контейнера, то файл конфигурации openvpn.conf генерируется автоматически, и его нужно только импортировать в ваш OpenVPN клиент. Если вы настраивали сервер вручную, то и конфигурационный файл для клиента будет необходимо править вручную. Далее о том, как это сделать.
Для Windows
Клиент для Windows можно скачать здесь: https://openvpn.net/
Для подключения после настроек скриптом или с использованием docker-контейнера
После установки импортируем полученную нами конфигурацию, например client.ovpn
.
На значке OpenVPN в трее нажимаем ПКМ и выбираем Импорт конфигурации
:
Далее выберем нужный нам файл конфигурации:
В результате увидим, что конфигурация загружена успешно:
Следующим шагом осуществим подключение к нашему VPN-серверу, нажав кнопку Подключиться
:
Если подключение прошло корректно, то увидим следующее сообщение:
Для подключения после ручных настроек
После установки заходим в папку установки программы, например: C:\Program and Files\OpenVPN\sample-config
. Открываем текстовым редактором (блокнотом) файл client.ovpn
и пишем в строке:
remote my-server-1 1194
Необходимо указать IP своего сервера вместо my-server-1
. Больше ничего не трогаем, сохраняем и закрываем файл.
Затем нужно скачать с сервера 3 файла сертификатов в эту же папку, где только что редактировали файл. Итак, скачать нужно следующие файлы:
/etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn/easy-rsa/keys/client.crt /etc/openvpn/easy-rsa/keys/client.key
Все готово для подключения и проверки.
Нажимаем правой кнопкой на файл client.ovpn
и выбираем Start OpenVPN on this config file
. Если соединение прошло корректно, то увидите соответствующее сообщение:
Для Linux
Устанавливаем клиент:
Centos 7:
yum install -y openvpn
Debian/Ubuntu:
apt install -y openvpn
В случае, если OpenVPN сервер был установлен скриптом или с использованием docker-контейнера, настройка клиента OpenVPN происходит следующим образом.
Полученный после настройки файл с расширением .conf например client.conf
помещаем по пути /etc/openvpn/client.conf
и выполняем команду для подключения:
openvpn --config /etc/openvpn/openvpn.conf
В случае, если настройка OpenVPN сервера производилась вручную требуется сделать следующие действия:
Кладем три файла, сгенерированных на сервере в директорию /etc/openvpn/
:
client1.key client1.crt ca.crt
Создаем/редактируем файл конфигурации:
/etc/openvpn/openvpn.conf
Получаем файл со следующим содержимым:
remote <IP.вашего.сервера> 1194 push "redirect-gateway def1" tls-client remote-cert-tls server nobind proto tcp-client dev tun0 pull resolv-retry infinite comp-lzo ca ca.crt cert client1.crt key client1.key persist-tun persist-key verb 3 route-method exe route-delay 2
И подключаемся вручную с помощью такой команды:
openvpn --config /etc/openvpn/openvpn.conf
Удаленный доступ к компьютеру. Рабочий стол через VPN сейчас
Если вы впервые настраиваете свою систему то вам, вероятно, будет важно знать ту последовательность действий, которая приведет к успеху.
Ниже представлена последовательность шагов, которая даст вам уверенность в том, что вы на верном пути.
Большинство пользователей потратят на подключение 15-30 минут своего времени в зависимости от ИТ-подготовки.
Постарайтесь не отступать от последовательности, чтобы не запутаться.
Не отвлекайтесь от процесса, старайтесь понимать что именно вы делаете и каким должен быть результат каждого действия.
PS: Если вы читаете этот раздел уже после «некоторых экспериментов», то имеет смысл очистить все настройки на сайте в разделе «Дополнительно», а также на ваших устройствах и начать все заново.
В этом примере приведены вымышленные данные. В вашем случае, используемые адреса устройств будут другими.
Этот пример написан для того, чтобы вы могли сопоставить схему и текст, а затем применить полученные знания к своей задаче.
Исходные данные
Итак, мы хотим получить удаленный доступ к компьютеру с ОС Windows с другого компьютера с ОС Windows через Интернет. Будем считать, что оба компьютера обладают «серыми» адресами от операторов связи и напрямую из сети Интернет не доступны.
Давайте представим, что мы хотим получить удаленный доступ с Компьютера 1 (дом) на Компьютер 2 (офис). Для этого мы будем использовать подключения двух компьютеров с протоколом OpenVPN, систему VPNKI и штатное средство Windows для удаленного доступа к компьютеру под названием «Подключение к удаленному рабочему столу».
Для этого мы подключим одно VPN соединение с домашнего компьютера, а другое VPN соединение с офисного комьютера. Таким образом, схема подключений будет выглядеть следующим образом. Адреса и имена подключений мы рассмотрим позднее, а пока просто схема:
Итак, начнем
Шаг 1. Установка программ OpenVPN на оба компьютера
Результат: OpenVPN установлен на оба компьютера
Шаг 1.0. Скачайте с сайта проекта OpenVPN последнюю версию этой программы.
Community Downloads
Например нас интересует версия для Windows7/8/8.1 и т.д..
Вот она — https://swupdate.openvpn.org/community/releases/openvpn-install-2.4.8-I602-Win7.exe
Шаг 1.1. Установите эту программу на оба компьютера. При установке, вероятнее всего, потребуются права администратора системы Windows
На этом шаге установщик может спросить к какой сети («Общественной» или «Частной» в терминах Windows) следут отнести новое сетевое подключение.
Тут выбирать вам, но запомните свой выбор, так как он напрямую касается раздела в правилах межсетевого экрана Windows, с которым вам еще предстоит иметь дело.
Шаг 1.2. После установки запустите ярлык программы OpenVPN GUI на обоих комьютерах и переходите к настройкам на сайте VPNKI.
Шаг 2. Создаем туннели на сайте VPNKI
Результат: Туннели созданы, процесс OpenVPN на сервере запущен, скачан профиль подключения на оба компьютера
Шаг 2.0. На личной странице сайта создайте два туннеля. Запишите куда-нибудь IP адреса, выданные вам системой для обоих туннелей
Шаг 2.1. Запустите процесс OpenVPN на сервере, установив галочку, скачайте и сохраните профиль подключения (файл с расширением .ovpn) на оба компьютера. Этот профиль будет использоваться клиентскими программами OpenVPN на обоих компьютерах для установления подключения. Обратите внимание на порт, выданный вам системой — он уникален и выделен только для вас. Его номер также содержится в скачанном вами профиле.
Важно! Скриншот немного устарел, так как с февраля 2021 мы запустили поддержку OpenVPN как поверх протокола UDP, так и через TCP. У этих вариантов есть свои плюсы и минусы. Чуть более подробно смотрите здесь.
Все готово для подключения… попробуем
Шаг 3. Подключение VPN туннелей
Результат: Оба туннеля подключены
Шаг 3.1. Импортируйте загруженные профили в программу OpenVPN на обоих компьютерах. Для этого запустите программу OpenVPN GUI (хотя она уже должна быть запущена) и найдите ее ярлычок в системном трее Windows, рядом с часами.
Нажмите на ярлычок правой кнопкой мыши и выберите пункт «Импорт профиля» (Import file). Затем выберите сохранный профиль на своем компьютере.
Шаг 3.2. Теперь давайте подключим туннели на обоих компьтерах. При установлении соединения вас попросят ввести логин и пароль, который вы назначили туннелю в личном кабинете сайта VPNKI. Естественно, на каждом компьютере мы указываем свое собственное имя и пароль. В данном случае скриншот показывает подключение Компьютера 1. На втором компьютере имя будет user10279.
После успешного подключения вы увидите в системном трее Windows зеленый значок OpenVPN, который означает, что подключение успешно.
Если так, то имеет смысл посмотреть как оба соединения выглядят на стороне сервера VPNKI. Для этого перейдите в пункт меню «Статус подключений» в личном кабинете сайта. На сайте вы увидите приблизительно такую картину.
Шаг 4. Пинг удаленного компьютера
Результат: Пинг удаленного компьютера успешен
Шаг 4.1 Если два туннеля работают, то самое время проверить связь двух компьютеров между собой. Начать имеет смысл с выполнения команды ping на Компьютере 1. Это важный шаг и не стоит им пренебрегать.
В меню Windows — «Пуск» — «Выполнить» напишите три буквы — cmd
Это запустит командную строку Windows и в ней мы воспользуемся командой ping. Напишите там ping и далее адрес удаленного компьютера (в нашем примере Компьютера 2 — 172.16.35.182). Команда будет выглядеть так: ping 172.16.35.182
Если вы все делали по инструкции, то пинг, вероятнее всего, будет неуспешен. И это не удивительно, так как при установке OpenVPN ваш компьютер создал новое сетевое подключение, а правила межсетевого экрана должны все заблокировать.
На время тестов отключите межсетевой экран на принимающей стороне (Компьютер 2) и после этого пинги должны быть успешны.
Такой же пинг вы можете выполнить и из личного кабинета системы, перейдя на страницу «Инструменты«
Шаг 4. Доступ к удаленному рабочему столу компьютера
Результат: Вы получили доступ к удаленному рабочему столу Компьютера 2
После того, как пинг оказался успешен можно переходить к удаленонму доступу к рабочему столу.
Шаг 4.1. На Компьютере 2 вам потребуется разрешить удаленный доступ. Для этого перейдите в «Свойства системы» и установите галочку в разделе «Удаленный помощник». На разных ОС Windows этот пункт меню может выглядет по-разному, но смысл его тот же.
Шаг 4.2. На компьютере 1 запустите программу подключения к удаленному рабочему столу. Этот пункт меню находится — «Пуск» — «Программы» — «Стандартные» — «Подключение к удаленному рабочему столу». В открывшемся окне впишите IP адрес Компьютера 2 — 172.16.35.182
Нажмите «Подключить» и после этого вы должны увидеть окно для ввода логина и пароля, но уже в систему Windows Компьютера 2.
Надеемся, что все получилось успешно.
Поздравляем!
Вы успешно прошли все пункты и получили удаленный доступ к рабочему столу Windows на удаленном компьютере!
Какие могут быть сложности после установления соединения?
— так как в примере использовалось подключение по протоколу OpenVPN, то следует иметь ввиду, что в системе VPNKI мы принудительно обрываем соединения OpenVPN в 00-00 по Московскому времени. Это связано не только с OpenVPN, но и со всеми другими протоколами, так как слишком много сессий VPN на нашем сервере зависает из-за нестабильности Интернета. Это означает, что удаленный Компьютер 2 потеряет соединение с сервером VPNKI в 00-00 и должен смочь переустановить это соединение автоматически.Увы, это не всегда происходит успешно, поэтому:
1. По слухам 🙂 переподключение без всплывающего окна с вводом логина и пароля возможно при использовании OpenVPN как системной службы Windows, а не как программы пользователя.
2. И как второй вариант, ознакомьтесь с тем, как сказать OpenVPN о том, что необходимо использовать файл с логином и паролем. В этом случае окошко не должно появляться https://vpnki.ru/questions/support-forum/tuns-routing/677-%D0%BF%D1%80%D0%BE%D0%B1%D0%BB%D0%B5%D0%BC%D1%8B-tap-%D0%B0%D0%B4%D0%B0%D0%BF%D1%82%D0%B5%D1%80%D0%B0#5784
(проверено — работает)
— может не хватать скорости для передачи трафика удаленного рабочего стола. Это решается путем перехода на другой тарифный план в системе VPNKI
*** Если вдруг что-то не получилось, обращайтесь на Форум
Установка и настройка openvpn клиента подробно. Настройки и использование OpenVPN. Установка и запуск сервера
OpenVPN – это программное приложение, которое имеет открытый исходный код. Оно задействует виртуальную частную сеть, в которой создается защищённое соединение на пути следование данных при отправке с сайта на сайт или с точки в точку. В ОреnVPN задействованы протоколы, которые обеспечивают защищенность соединения, такие как SSL и TLS, с их помощью пользователи могут беспрепятственно обмениваться данными.
Данная сеть широко распространена в местах, в которых требуется частный, закрытый от посторонних обмен данными, например, в учебных заведениях, фирмах, предприятиях. Исходя из этого приложение является отличным выбором для создания закрытых виртуальных сетей, но без специалиста в этой сфере сложно раскрыть весь потенциал данного приложения.
Принцип работы Open VPN
Open VPN для предприятий
Работа приложения заключается в том, что информация передающаяся через открытые публичные сети шифруется приложением. Дешифровать ее может только пользователь, который обладает специальным ключом для расшифровки данного шифрования. Следовательно, даже при утечке трафика данные не будут представлять какой-либо пользы третьим лицам, но только при том, что ключ, от этих данных закрыт от свободного доступа и надежно защищен от посторонних лиц. OpenVPN часто используется во многих организациях для подключения в одну сеть, географически удаленных офисов, филиалов и прочих подсетей данной организации.
Open VPN для рядовых пользователей
Также эта технология дает возможность скрыть свой IP -адрес и находиться в сети анонимно, при этом пользователь получает неограниченный доступ к любой другой сети. У пользователя появляется возможность для обмена трафиком и доступа к различными сайтами, в которых по ряду причин может быть ограничен доступ текущего IP-адреса.
Установка и запуск сервера
В Linux Ubuntu
Разберем процесс установки и запуска на примере Линукса:
- Создаем сервер VScale с произвольной конфигурацией и ОС Ubuntu. Уже через несколько мгновений появится возможность подключиться к нему любым SSH-клиентом. Установка предполагает регистрацию и стандартную установку. Вся документация доступна на русском на сайте разработчика.
- Сменим пароль для супер-пользователя на “root ”. passwd root
- Далее нам следует обновить приложения и операционную систему до актуальной версии. apt-get update apt-get upgrade
- Устанавливаем утилиту Easy-RSA для генерации сертификата устройства и сертификатов для всех пользователей, которые будут использовать данное подключение. apt-get install easy-rsa
- Далее нам следует перейти в списки с утилитой и подготовить переменные, которые будут создавать сертификаты. cd /usr/share/easy-rsa nano ./vars
- Задаем переменную, с длинной ключа для шифрования, равной 1024 бита. 1024 — стандартное значение, для более повышенной безопасности можно установить значение 2048, однако вырастет нагрузка на аппаратуру. export KEY_SIZE= 1024
- Оставшиеся параметры вводятся по желанию, например, страна, провинция, город, организация, электронный адрес. export KEY_COUNTRY=»RU» export KEY_PROVINCE=»RU» export KEY_CITY=»Moscow» export KEY_ORG=»MyCompany LTD.» export KEY_EMAIL=»your_email_address»
- Задействуем использование переменных. source ./vars
- Очищаем хранилище ключей. ./clean-all
- Создаем корневой сертификат . Во время создания программа использует уже введенную нами информацию, поэтому жмем Enter на все её вопросы. ./build-ca
- Таким же образом создаем сертификат сервера . Нажимаем на «Y» на вопросы о подписании сертификата. ./build-key-server server
- Теперь создаем сертификаты для устройств, которые будут подключены к ПК, повторяем действие нужное количество раз, изменяя имя сертификата (пример: macbook). ./build-key macbook
- Создаем ключ Диффи-Хеллмана (Протокол Диффи-Хеллмана позволяет использовать двум и более сторонам один секретный ключ). ./build-dh
- В итоге в папке /usr/share/easy-rsa/keys находятся сертификаты и ключи.
- Приступаем к установке OpenVPN. apt-get install openvpn
- Копируем созданные сертификаты и ключи. cp -R /usr/share/easy-rsa/keys/ /etc/openvpn/
В Windows 7
Теперь переходим к установке в Windows:
По умолчанию порт OpenVPN – 1194, его в последующем можно будет изменить в настройках.
Настройки и использование OpenVPN
В Linux Ubuntu
Начнем с настроек на Линуксе:
- Путем нажатия на иконку Ubuntu перед нами откроется строка поиска , здесь понадобится ввести текст Terminal , ниже отобразится список предложенных приложений, среди которых будет программа Терминал, запускаем её.
- Теперь для сопряжения с OpenVPN server нужно будет установить пакет с данными о графическом интерфейсе. sudo apt-get install network-manager-openvpn-gnome
- Программа выдаст запрос на проверку логина и пароля Ubuntu, без их подтверждения программа не будет установлена.
- Теперь сохраняем файлы конфигурации OpenVPN, который будем использовать при подключении в качестве клиента. Скачайте их и распакуйте в выбранное место.
- Сверху разверните панель команд и выберите пункт «изменить соединения ».
- В появившемся диалоговом окне выберем кнопку «Добавить », будет выведен запрос о выборе соединения, выбираем из списка – Импорт сохраненных параметров VPN .
- Далее следует выбрать конфигурационный файл сопряжения с сервером OpenVPN, этот документ был разархивирован в 4-м шаге и имеет формат *.ovpn.
- Перейдем в раздел «мой аккаунт » и проведем несколько корректировок:
- После проделанного появится диалоговое окно в которым будет показано альтернативное подключение через VPN.
- Теперь вернемся на рабочий стол и в правом верхнем углу развернем вкладку с проводной сетью, выберем «Соединения VPN » и там увидим вариант с созданным подключением.
- При успешном сопряжении с сервером будет выведено всплывающее сообщение авторизации VPN.
На Андроид
Для Андроид процедура следующая:
- Сохраните актуальную версию OpenVPN Connect из специального магазина “Google Play”.
- Для дальнейшей работы потребуется файл конфигурации для соединения с OpenVPN (файл *.ovpn). Это нужно только при первой настройке сопряжения с сервером:
- Подключение к серверу VPN:
- После установки соединения с сервером, весь поток данных будет направлен на выбранный VPN -сервер . Узнать присвоенный глобальный IP-адрес можно на любом специализированном сайте, для определения своего IP. Вы увидите свое местоположение, которое выдано сервером, оно может отличаться от действительного местоположения.
В Windows 7
На Windows процедура настройки и использования ОпенВПН в качестве клиента следующая:
- Если настройка подключения происходит впервые, то следует скачать файл с данными о конфигурации подключения OpenVPN , этот файл будет иметь расширение — *.ovpn, с его помощью будет производиться сопряжение с сервером VPN Gate при помощи протокола OpenVPN.
- Конфигурационный документ «OpenVPN Config file » находится на вкладке с каталогом бесплатных серверов . В данном списке выбирается VPN-сервер, который будет использован для сопряжения, следует скачать файл с форматом *.ovpn.
- Скачанный на ПК файл будет выглядеть, как ярлык OpenVPN. Чтобы подключиться к серверу следует перенести файл с форматом *.ovpn в папку с именем «config », этот файл содержит в себе информацию о сервере к которому будет произведено подключение, в нашем варианте она находится в C:\Program Files\OpenVPN\config .
- Появившийся после установки программы на компьютер ярлык запустите от имени администратора , в ином случае защищенное подключение не будет установлено.
- Теперь в панели задач появится ярлык OpenVPN GUI , после нажатия на него появится выбор действий, нажимаем «Подключиться ».
- Откроется окно, оно будет проводить мониторинг статуса подключения. Если этого не произошло и открылось окно с требованием ввода имени пользователя и пароля, то в эти поля следует ввести «vpn».
- При успешной активации подключения в нижней правой части экрана появится всплывающее сообщение.
- После успешной установки спряжения VPN система создаст виртуальный сетевой адаптер TAP — Windows Adapter V 9 . Ему будет присвоен IP-адрес, начинаться он будет с цифр «10.221 ». Адрес шлюза будет выдан по умолчанию.
- Конфигурацию сети можно проверить путем ввода в командную строку команды «ipconfig / all ». Командная строка запускается нажатием на сочетание клавиш Win + R , после чего нужно ввести в появившуюся строку команды cmd .
- Чтобы убедится в том, проходит ли весь трафик через выбранный VPN-сервер, нужно прописать команду tracert 8. 8.8.8.
- Исходя из информации в окне определим, что трафик проходит через IP «10.211.254.254» , следовательно сопряжение с сервером VPN gate прошло успешно. Чтоб узнать свой глобальный IP–адрес, нужно открыть страницу
— свободная реализация технологии Виртуальной Частной Сети (VPN) с открытым исходным кодом для создания зашифрованных каналов типа точка-точка или сервер-клиенты между компьютерами. Она позволяет устанавливать соединения между компьютерами, находящимися за NAT-firewall, без необходимости изменения их настроек. OpenVPN была создана Джеймсом Йонаном (James Yonan) и распространяется под лицензией GNU GPL.
В этой статье в простой и доступной форме мы попытаемся рассказать вам о том как поднять собственный OpenVPN сервер. Мы не ставим своей целью, чтобы по окончании прочтения этой статьи вы досконально понимали все принципы «как это работает» или разбирались в тонкостях организации сетей, но хотим, чтобы в результате — вы могли настроить OpenVPN сервер «с нуля». Так что можно считать эту статью неким пошаговым руководством для пользователей. На самом деле в сети масса документации, мануалов, посвященных развертыванию OpenVPN, но они либо ориентированы на подготовленных пользователей или системных администраторов, либо же в качестве примера для демонстрации используются Linux-системы. Мы же пойдем другим путем и расскажем как настроить OpenVPN на компьютере среднестатического пользователя, т.е. рабочей станции с установленной ОС Windows. Зачем вам может пригодиться эта информация? Ну например вы хотите поиграть с друзьями в игру, которая не поддерживает игру через интернет, а только по локальной сети, или же, например, вы занимаетесь удаленной поддержкой пользователей, но по каким-то причинам использовать программное обеспечение вроде TeamViewer или Ammyy Admin не желаете, т.к. не хотите чтобы в процессе передачи ваших данных или установки соединения участвовали сервера сторонних компаний. В любом случае практический опыт организации собственной виртуальной частной сети (VPN) окажется для вас полезным.
Настройка сервера
Итак, начнем. В нашем примере в качестве сервера OpenVPN будет выступать машина с установленной ОС Windows XP Professional SP3 (x86), в качестве клиентов — несколько машин с Windows 7 x64 и Windows 7 x86 (хотя на самом деле описываемая в статье схема заработает и на других конфигурациях). Предположим, что ПК который будет выступать в роли OpenVPN сервера имеет белый статический IP адрес в сети интернет (в случае если IP адрес, предоставляемый вашим провайдером динамический, то вам необходимо зарегистрироваться в DynDNS или No-IP ), если это условие выполняется, но ПК находится за роутером или аппаратным firewall»ом — вам придется пробросить необходимые порты (об этом мы расскажем чуть ниже, когда перейдем непосредственно к настройке сервера), если вы не представляете что это такое и для чего это используется, то мы рекомендуем вам ознакомиться со статьей на нашем сайте.
- Идем на официальный сайт проекта OpenVPN, в раздел Downloads — . Скачиваем оттуда, соответствующий вашему релизу ОС Windows дистрибутивай (32-bit или 64-bit Installer). На момент написания этой статье для 32-х битных ОС был доступен дистрибутив openvpn-install-2.3_rc1-I002-i686.exe , а для 64-х битных — openvpn-install-2.3_rc1-I002-x86_64.exe соответственно. Т.к. мы определились, что сервер мы будем поднимать на WinXP x86, т.е. на 32-битной ОС, то скачиваем дистрибутив по первой ссылке.
- Запускаем скачанный инсталлятор. На этапе где выбирается путь для установки вводим C:\OpenVPN (см. скриншот), это упростит нам настройку в дальнейшем: После чего нажимаем «Next» до тех пор, пока установка не будет завершена. Если в процессе установки, на этапе выбора компонент для установки у вас было «пустое окно», например, такое:
То по всей видимости вы скачали «не тот» дистрибутив, в таком случае попробуйте скачать последнюю релизную версию openvpn-2.2.2-install.exe (она устанавливается как на x86, так и на x64 системы). При «правильной установке» окно выбора компонентов должно выглядеть так:
Все галочки в нем при установке по-умолчанию стоят, менять дополнительно ничего не нужно. Если установка прошла успешно, то в Панели управления -> Сетевые подключения (или, если вы устанавливаете сервер на Windows 7 или Windows Vista, в Центр управления сетями и общим доступом -> Изменение параметров адаптера) у вас должен появиться TAP-Win32 Adapter V9, который будет называться «Подключение по локальной сети X» (X — автоматически присваиваемый системой номер):
Состояние у него будет «Сетевой кабель не подключен», т.к. мы еще не конфигурировали наш сервер. - Создаем в папке OpenVPN подпапку SSL, в ней будут храниться выданные сервером ключи и сертификаты. Далее запускаем блокнот и копируем в него следующий текст:
#dev tun
dev tap
#dev-node «VPN»
proto tcp-server
#proto udp
port 7777
tls-server
server 10.10.10.0 255.255.255.0
comp-lzo
# route-method exe
# маршрут для сервера, чтобы видеть сети за клиентом
# route 192.168.x.0 255.255.255.0 10.10.10.x
# маршрут добавляемый в таблицу маршрутизации каждого клиента, чтобы видеть сеть за сервером
# push «route 192.168.x.0 255.255.255.0»
# разрешает vpn-клиентам видеть друг-друга, в противном случае все vpn-клиенты будут видеть только сервер
client-to-client
# каталог с описаниями конфигураций каждого из клиентов
client-config-dir C:\\OpenVPN\\config\\ccd
# файл с описанием сетей между клиентом и сервером
ifconfig-pool-persist C:\\OpenVPN\\config\\ccd\\ipp.txt
# пути для ключей и сертификатов сервера
dh C:\\OpenVPN\\ssl\\dh2024.pem
ca C:\\OpenVPN\\ssl\\ca.crt
cert C:\\OpenVPN\\ssl\\Server.crt
key C:\\OpenVPN\\ssl\\Server.key
#persist-key
tls-auth C:\\OpenVPN\\ssl\\ta.key 0
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
keepalive 10 120
status C:\\OpenVPN\\log\\openvpn-status.log
log C:\\OpenVPN\\log\\openvpn.log
verb 3
На параметрах которые здесь описаны, мы остановимся чуть позже. После чего сохраняем его в файл C:\OpenVPN\Config\Server.ovpn , обратите внимание файл должен получиться именно с расширением .ovpn , для этого в диалоге сохранения опции должны стоять именно так, как показано на картинке:
Если вы работаете под Windows 7 / Windows Vista и блокнот не дает вам сохранить файл Server.ovpn в папку C:\OpenVPN\Config\ , значит его нужно запустить с правами администратора. Для этого щелкните в меню Пуск по ярлыку Блокнота правой кнопкой мыши и выберите «Запуск от имени администратора»: Теперь также с помощью блокнота создадим файл C:\OpenVPN\easy-rsa\vars.bat , скопировав в него нижеследующий текст: @echo off set path=%path%;c:\OpenVPN\bin set HOME=c:\OpenVPN\easy-rsa set KEY_CONFIG=openssl.cnf set KEY_DIR=c:\OpenVPN\ssl set KEY_SIZE=1024 set KEY_COUNTRY=RU set KEY_PROVINCE=Kaluga set KEY_CITY=Kaluga set KEY_ORG=CompKaluga set [email protected]сайт А также файл C:\OpenVPN\easy-rsa\openssl.cnf : # # OpenSSL example configuration file. # This is mostly being used for generation of certificate requests. # # This definition stops the following lines choking if HOME isn»t # defined. HOME = . RANDFILE = $ENV::HOME/.rnd # Extra OBJECT IDENTIFIER info: #oid_file = $ENV::HOME/.oid oid_section = new_oids # To use this configuration file with the «-extfile» option of the # «openssl x509» utility, name here the section containing the # X.509v3 extensions to use: # extensions = # (Alternatively, use a configuration file that has only # X.509v3 extensions in its main [= default] section.) [ new_oids ] # We can add new OIDs in here for use by «ca» and «req». # Add a simple OID like this: # testoid1=1.2.3.4 # Or use config file substitution like this: # testoid2=${testoid1}.5.6 #################################################################### [ ca ] default_ca = CA_default # The default ca section #################################################################### [ CA_default ] dir = $ENV::KEY_DIR # Where everything is kept certs = $dir # Where the issued certs are kept crl_dir = $dir # Where the issued crl are kept database = $dir/index.txt # database index file. new_certs_dir = $dir # default place for new certs. certificate = $dir/ca.crt # The CA certificate serial = $dir/serial # The current serial number crl = $dir/crl.pem # The current CRL private_key = $dir/ca.key # The private key RANDFILE = $dir/.rand # private random number file x509_extensions = usr_cert # The extentions to add to the cert # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs # so this is commented out by default to leave a V1 CRL. # crl_extensions = crl_ext default_days = 3650 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = md5 # which md to use. preserve = no # keep passed DN ordering # A few difference way of specifying how similar the request should look # For type CA, the listed attributes must be the same, and the optional # and supplied fields are just that:-) policy = policy_match # For the CA policy [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional # For the «anything» policy # At this point in time, you must list all acceptable «object» # types. [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional #################################################################### [ req ] default_bits = $ENV::KEY_SIZE default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # The extentions to add to the self signed cert # Passwords for private keys if not present they will be prompted for # input_password = secret # output_password = secret # This sets a mask for permitted string types. There are several options. # default: PrintableString, T61String, BMPString. # pkix: PrintableString, BMPString. # utf8only: only UTF8Strings. # nombstr: PrintableString, T61String (no BMPStrings or UTF8Strings). # MASK:XXXX a literal mask value. # WARNING: current versions of Netscape crash on BMPStrings or UTF8Strings # so use this option with caution! string_mask = nombstr # req_extensions = v3_req # The extensions to add to a certificate request [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = $ENV::KEY_COUNTRY countryName_min = 2 countryName_max = 2 stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = $ENV::KEY_PROVINCE localityName = Locality Name (eg, city) localityName_default = $ENV::KEY_CITY 0.organizationName = Organization Name (eg, company) 0.organizationName_default = $ENV::KEY_ORG # we can do this but it is not needed normally:-) #1.organizationName = Second Organization Name (eg, company) #1.organizationName_default = World Wide Web Pty Ltd organizationalUnitName = Organizational Unit Name (eg, section) #organizationalUnitName_default = commonName = Common Name (eg, your name or your server\»s hostname) commonName_max = 64 emailAddress = Email Address emailAddress_default = $ENV::KEY_EMAIL emailAddress_max = 40 # SET-ex3 = SET extension number 3 [ req_attributes ] challengePassword = A challenge password challengePassword_min = 4 challengePassword_max = 20 unstructuredName = An optional company name [ usr_cert ] # These extensions are added when «ca» signs a request. # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # Here are some examples of the usage of nsCertType. If it is omitted # the certificate can be used for anything *except* object signing. # This is OK for an SSL server. # nsCertType = server # For an object signing certificate this would be used. # nsCertType = objsign # For normal client use this is typical # nsCertType = client, email # and for everything including object signing: # nsCertType = client, email, objsign # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # This will be displayed in Netscape»s comment listbox. nsComment = «OpenSSL Generated Certificate» # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer:always # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # Copy subject details # issuerAltName=issuer:copy #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem #nsBaseUrl #nsRevocationUrl #nsRenewalUrl #nsCaPolicyUrl #nsSslServerName [ server ] # JY ADDED — Make a cert with nsCertType set to «server» basicConstraints=CA:FALSE nsCertType = server nsComment = «OpenSSL Generated Server Certificate» subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer:always [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # Extensions for a typical CA # PKIX recommendation. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer:always # This is what PKIX recommends but some broken software chokes on critical # extensions. #basicConstraints = critical,CA:true # So we do this instead. basicConstraints = CA:true # Key usage: this is typical for a CA certificate. However since it will # prevent it being used as an test self-signed certificate it is best # left out by default. # keyUsage = cRLSign, keyCertSign # Some might want this also # nsCertType = sslCA, emailCA # Include email address in subject alt name: another PKIX recommendation # subjectAltName=email:copy # Copy issuer details # issuerAltName=issuer:copy # DER hex encoding of an extension: beware experts only! # obj=DER:02:03 # Where «obj» is a standard or added object # You can even override a supported extension: # basicConstraints= critical, DER:30:03:01:01:FF [ crl_ext ] # CRL extensions. # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL. # issuerAltName=issuer:copy authorityKeyIdentifier=keyid:always,issuer:always Поздравляю! Вы только что создали основные конфигурационные файлы вашего сервера. Продолжим его настройку. - Для дальнейшей настройки сервера нам будут необходимы некоторые навыки работы в командной строке. Прежде всего давайте разберемся, как ее запустить? Существует несколько способов, например, нажать Пуск -> Выполнить (или комбинацию кнопок Win+R ) на клавиатуре и в появившемся поле ввести cmd и нажать кнопку Ок. Однако, пользователям Windows 7 / Windows Vista понадобится запустить консоль с правами администратора, для этого проще всего на рабочем столе создать соответствующий ярлык. Щелкаем правой кнопкой мыши по любому пустому месту рабочего стола и выбираем пункт «Создать ярлык», в поле «месторасположение объекта» просто указываем три буквы — cmd и называем ярлык cmd, либо командная строка. Далее, пользователи Windows XP просто запускают его, а пользователи Windows Vista и Windows 7 запускают его от имени администратора, так, как это делалось выше с блокнотом.
- Далее последовательно вводим в консоли строки:
cd C:\OpenVPN\easy-rsa
vars
clean-all
При этом на экране это должно выглядеть так:
Далее не закрывая это окно вводим последовательно команды генерации ключей: openvpn —genkey —secret %KEY_DIR%\ta.key build-dh build-ca Последняя команда (build-ca) создаст сертификат и ключ центра сертификации (CA), в процессе, правда, она задаст вам несколько вопросов, ответить на которые надо по-умолчанию нажатием кнопки Enter:
Теперь создадим ключ сервера: build-key-server server Обратите внимание, вторым аргументом в команде идет имя ключа (server), это же имя вы должны ввести при ответе на вопрос Common Name (eg, your name or your server»s hostname), на остальные вопросы можно ответить по-умолчанию нажатием кнопки Enter. Если вы все сделали правильно команда предложит подписать сертификат и подтвердить запрос, на оба вопроса нужно ответить Y (см. скриншот):
Если вы все сделали правильно, то картинка у вас будет идентичной скриншоту, а в последних строчках вывода команды будет сообщение об успешном добавлении одной записи в базу данных. - После этого идем в оснастку «Службы и приложения» консоли управления, сделать это можно щелкнув по ярлыку Компьютер (Мой компьютер) правой кнопкой мыши и выбрав пункт меню Управление, либо набрав в консоли команду services.msc , находим там службу «OpenVPN Service» и в меню по правой кнопки мыши выбираем «Пуск». Если до этого вы все сделали правильно, то служба перейдет в состояние «Работает». Теперь можно изменить ей тип запуска на «Авто», вместо «Вручную», который был там по-умолчанию. В результате должно получиться так:
На этом настройка самого сервера закончена, осталось только сконфигурировать клиентов. Для этого необходимо также выдать им ключи и сертификаты, делается это практически аналогично серверу, только для сервера мы использовали команду build-key-server, а для клиентов будем использовать команду build-key. - Предположим что у нас два клиента, назовем их client1 и client2. Выполним последовательно команды: build-key client1 build-key client2 При этом на вопрос Common Name (eg, your name or your server»s hostname) вы также должны указать имя клиента используемое в команде, т.е. если вы вводили команду build-key client1, то на вопрос Common Name отвечаем client1, если client2, то client2. На остальные вопросы можно ответить нажатием Enter, в конце вас также попросят подписать сертификат и подтвердить запрос, на оба пункта отвечаем утвердительно — Y . Теперь перезапускаем службу OpenVPN для того чтобы изменения вступили в силу, в оснастке управления службами, в меню по правой кнопке мыши «Перезапуск», либо же в консоли последовательно вводим: net stop openvpnservice net start openvpnservice
- Теперь если мы зайдем в папку, то увидим там сгенерированные нами файлы ключей и сертификатов:
Каждому клиенту необходимы будут его файлы: ca.crt .crt .key ta.key Т.е. для клиента 1 мы собираем файлы ca.crt, client1.crt, client1.key и ta.key, для клиента 2 — ca.crt, client2.crt, client2.key и ta.key соответственно и т.п. И тем или иным образом отправляем ему их (имеется ввиду по почте, в архиве с паролем, или на флешке), файлы ключей и сертификатов должны быть переданы по надежным каналам связи и не должны попасть в «третьи руки», т.к. фактически с помощью них клиент может получить доступ в вашу виртуальную подсеть. В следующем разделе мы рассмотрим настройку клиента, при этом будет предполагаться что файлы ключей и сертификатов от вас он уже получил. - Если на ПК используемом в качестве сервера используется firewall / брандмауэр, то необходимо добавить OpenVPN в список исключений. Для встроенного брандмауэра Windows в консоли это можно сделать следующей командой: netsh firewall add allowedprogram program = C:\OpenVPN\bin\openvpn.exe name = «OpenVPN Server» ENABLE scope = ALL profile = ALL
Настройка клиентов
Настройка клиента значительно проще, чем настройка сервера, у клиента нам не нужно генерировать ключи, сертификаты и т.п., так как все необходимое уже было сгенерировано нами на сервере и передано клиенту. Поэтому инструкция в случае для клиента получается значительно короче.
Полезные ссылки
- Официальная документация по OpenVPN —
- OpenVPN man-pages —
- OpenVPN HOWTO (на русском) — http://lithium.opennet.ru/articles/openvpn/openvpn-howto.html
F.A.Q.
Вы можете присылать возникшие у вас вопросы на email указанный в разделе , либо обсудить эту статью на .
А можно ли таким способом раздавать интернет?
От автора
Данную статью разрешается размещать на любых ресурсах, копировать полностью или частично, без ограничений, при условии сохранения ссылки на оригинал. Ссылка должна содержать название нашего ресурса Скорая Компьютерная Помощь г. Калуга оформленное в виде ссылки, а также содержать псевдоним автора статьи. Примером оформления подобной ссылки может быть:
Настройка OpenVPN сервера // DeckerПримечание
В последнее время к нам на электронную почту приходит большое количество вопросов в стиле «Вопрос по Вашей статье на шаге 5 после команды clean-all в результате у Вас копируется какой-то файл. У меня этого не происходит. команда openvpn —genkey —secret %KEY_DIR%\ta.key создает мне ключ а вот далее build-dh иbuild-ca не дают результата (cmd.exe пишет, что команда не является внутренней или внешней… или исполняемым файлом) файл ca.key не создается. Что я мог сделать не так? «.
Основной смысл которых сводится к вашей же невнимательности. Проблема при запуске clean-all, build-key и других команд заключается в том, что при установке OpenVPN вы не поставили галочки OpenSSL Utilities и OpenVPN RSA Certificate Management Scripts (их нужно ставить обязательно!). Обратите внимание на скриншот с окном выбора компонентов в начале статьи, там эти галочки стоят!
OpenVPN – один из вариантов VPN (virtual private network или частных виртуальных сетей), позволяющих реализовать передачу данных по специально созданному зашифрованному каналу. Таким образом можно соединить два компьютера или построить централизованную сеть с сервером и несколькими клиентами. В этой статье мы научимся создавать такой сервер и настраивать его.
Как уже было сказано выше, с помощью технологии, о которой идет речь, мы можем передавать информацию по безопасному каналу связи. Это может быть обмен файлами или защищенный доступ в интернет через сервер, являющийся общим шлюзом. Для его создания нам не потребуется дополнительное оборудование и особые знания – все делается на том компьютере, который планируется использовать в качестве сервера VPN.
Для дальнейшей работы необходимо будет также настроить и клиентскую часть на машинах пользователей сети. Вся работа сводится к созданию ключей и сертификатов, которые затем передаются клиентам. Эти файлы позволяют при подключении к серверу получить IP-адрес и создать упомянутый выше зашифрованный канал. Вся информация, переданная по нему, может быть прочитана только при наличии ключа. Эта особенность позволяет значительно повысить безопасность и обеспечить сохранность данных.
Установка OpenVPN на машину-сервер
Инсталляция представляет собой стандартную процедуру с некоторыми нюансами, о которых и поговорим подробнее.
Настройка серверной части
При выполнении следующих действий следует быть максимально внимательным. Любые огрехи приведут к неработоспособности сервера. Еще одно обязательное условие – ваша учетная запись должна иметь права администратора.
- Идем в каталог «easy-rsa» , который в нашем случае находится по адресу
C:\OpenVPN\easy-rsa
Находим файл vars.bat.sample .
Переименовываем его в vars.bat (удаляем слово «sample» вместе с точкой).
Открываем этот файл в редакторе . Это важно, так как именно этот блокнот позволяет правильно редактировать и сохранять коды, что помогает избежать ошибок при их выполнении.
- В первую очередь удаляем все комментарии, выделенные зеленым цветом – они нам будут только мешать. Получим следующее:
- Далее меняем путь к папке «easy-rsa» на тот, который мы указывали при установке. В данном случае просто удаляем переменную %ProgramFiles% и меняем ее на C: .
- Следующие четыре параметра оставляем без изменений.
- Остальные строки заполняем произвольно. Пример на скриншоте.
- Сохраняем файл.
- Требуется также отредактировать следующие файлы:
- build-ca.bat
- build-dh.bat
- build-key.bat
- build-key-pass.bat
- build-key-pkcs12.bat
- build-key-server.bat
В них нужно поменять команду
на абсолютный путь к соответствующему ей файлу openssl.exe . Не забываем сохранять изменения.
- Теперь открываем папку «easy-rsa» , зажимаем SHIFT и кликаем ПКМ по свободному месту (не по файлам). В контекстном меню выбираем пункт «Открыть окно команд» .
Запустится «Командная строка» с уже осуществленным переходом в целевой каталог.
- Вводим команду, указанную ниже, и нажимаем ENTER .
- Далее запускаем еще один «батник».
- Повторяем первую команду.
- Следующий шаг – создание необходимых файлов. Для этого используем команду
После выполнения система предложит подтвердить данные, которые мы вносили в файл vars.bat. Просто несколько раз нажимаем ENTER , пока не появится исходная строка.
- Создаем DH-ключ с помощью запуска файла
- Готовим сертификат для серверной части. Здесь есть один важный момент. Ему нужно присвоить то имя, которое мы прописали в vars.bat в строке «KEY_NAME» . В нашем примере это Lumpics . Команда выглядит следующим образом:
build-key-server.bat Lumpics
Здесь также необходимо подтвердить данные с помощью клавиши ENTER , а также два раза ввести букву «y» (yes), где потребуется (см. скриншот). Командную строку можно закрыть.
- В нашем каталоге «easy-rsa» появилась новая папка с названием «keys» .
- Ее содержимое требуется скопировать и вставить в папку «ssl» , которую необходимо создать в корневом каталоге программы.
Вид папки после вставки скопированных файлов:
- Теперь идем в каталог
C:\OpenVPN\config
Создаем здесь текстовый документ (ПКМ – Создать – Текстовый документ), переименовываем его в server.ovpn и открываем в Notepad++. Вносим следующий код:
port 443
proto udp
dev tun
dev-node «VPN Lumpics»
dh C:\\OpenVPN\\ssl\\dh3048.pem
ca C:\\OpenVPN\\ssl\\ca.crt
cert C:\\OpenVPN\\ssl\\Lumpics.crt
key C:\\OpenVPN\\ssl\\Lumpics.key
server 172.16.10.0 255.255.255.0
max-clients 32
keepalive 10 120
client-to-client
comp-lzo
persist-key
persist-tun
cipher DES-CBC
status C:\\OpenVPN\\log\\status.log
log C:\\OpenVPN\\log\\openvpn.log
verb 4
mute 20Обратите внимание, что названия сертификатов и ключей должны совпадать с расположенными в папке «ssl» .
- Далее открываем «Панель управления» и переходим в «Центр управления сетями» .
- Нажимаем на ссылку «Изменение параметров адаптера» .
- Здесь нам нужно найти подключение, осуществляемое через «TAP-Windows Adapter V9» . Сделать это можно, нажав по соединению ПКМ и перейдя к его свойствам.
- Переименовываем его в «VPN Lumpics» без кавычек. Это название должно совпадать с параметром «dev-node» в файле server.ovpn .
- Заключительный этап – запуск службы. Нажимаем сочетание клавиш Win+R , вводим строку, указанную ниже, и жмем ENTER .
- Находим сервис с названием «OpenVpnService» , кликаем ПКМ и идем в его свойства.
- Тип запуска меняем на «Автоматически» , запускаем службу и нажимаем «Применить» .
- Если мы все сделали правильно, то возле адаптера должен пропасть красный крестик. Это значит, что подключение готово к работе.
Настройка клиентской части
Перед началом настройки клиента необходимо совершить несколько действий на серверной машине – сгенерировать ключи и сертификат для настройки подключения.
Работы, которые необходимо выполнить на клиентской машине:
На этом настройка сервера и клиента OpenVPN завершена.
Заключение
Организация собственной VPN-сети позволит вам максимально защитить передаваемую информацию, а также сделать интернет-серфинг более безопасным. Главное – быть внимательнее при настройке серверной и клиентской части, при правильных действиях можно будет пользоваться всеми преимуществами частной виртуальной сети.
Открытая реализация технологии VPN — Virtual Private Network, которая предназначена для создания виртуальных частных сетей между группой территориально удаленных узлов поверх открытого канала передачи данных (интернет). OpenVPN подходит для таких задач, как безопасное удаленное сетевое подключение к серверу без открытия интернет-доступа к нему, как будто вы подключаетесь к хосту в своей локальной сети. Безопасность соединения достигается шифрованием OpenSSL .
Как это работает?
По окончанию настройки OpenVPN сервер сможет принимать внешние защищенные SSL сетевые подключения к созданному при запуске VPN-сервиса виртуальному сетевому адаптеру (tun/tap), не затрагивая правила обработки трафика других интерфейсов (внешний интернет-адаптер и др.) Имеется возможность настроить общий доступ клиентов OpenVPN к конкретному сетевому адаптеру из присутствующих на сервере. Во второй части инструкции рассмотрено такое туннелирование интернет-трафика пользователей. При этом способе переадресации обрабатывающий VPN-подключения хост будет выполнять и функцию прокси-сервера (Proxy) — унифицировать правила сетевой активности пользователей и осуществлять маршрутизацию клиентского интернет-трафика от своего имени.
Установка OpenVPN на сервер
Для каждого клиента VPN необходимо сгенерировать отдельный SSL-сертификат.
В конфигурации OpenVPN присутствует опция, включив которую вы можете использовать один сертификат для нескольких клиентов (см. файл server.ovpn -> опция «dublicate-cn» ), но это не рекомендуется с точки зрения безопасности. Сертификаты можно генерировать и в дальнейшем, по мере подключения новых клиентов. Поэтому сейчас создадим только один для клиента client1 :
Выполните следующие команды для генерации клиентских ключей: cd \
cd «C:\Program Files\OpenVPN\easy-rsa»
.\build-key.bat client1
Примечание: аргумент client1 — имя будущего файла.
В поле Common Name указываем имя клиента (в нашем случае client1).
Параметры Diffie Hellman
Для завершения настройки шифрования, необходимо запустить скрипт генерации параметров Диффи-Хеллмана : .\build-dh.bat
Отображение информации о создании параметров выглядит так:
Перенос созданных ключей/сертификатов
Сгенерированные сертификаты находятся в директории C:\Program Files\OpenVPN\easy-rsa\keys . Скопируйте перечисленные ниже файлы в каталог C:\Program Files\OpenVPN\config :
- ca.crt
- dh3048.pem/dh2048.pem
- server.crt
- server.key
Конфигурация сервера OpenVPN
В дереве найдите каталог HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters. В правой части окна найдите переменную IPEnableRouter , двойным щелчком мыши перейдите в окно редактирования значения и измените его на 1 , тем самым разрешив адресацию на VPS.
Автозапуск OpenVPN
Сразу настроим службу OpenVPN на автозапуск при старте системы. Открываем «Службы»(Services) Windows. Находим в списке OpenVPN -> ПКМ -> Свойства (Properties) -> Запуск: Автоматически
На этом базовая настройка сервера виртуальной частной сети завершена. Найдите файл C:\Program Files\OpenVPN\config\server.ovpn -> кликните правой кнопкой мыши -> «Start OpenVPN on this config» для запуска сервера виртуальной частной сети и подготовленного нами файла настроек.
Конфигурация клиента OpenVPN
Клиентские приложения OpenVPN доступны для всех популярных ОС: Windows / Linux / iOS / Android . Для MacOS используется клиент Tunnelblick . Все эти приложения работают с одними и теми же файлами конфигурации. Возможны лишь некоторые различия нескольких опций. Узнать о них вы можете, изучив документацию к своему клиенту OpenVPN. В этом руководстве мы рассмотрим подключение Windows-клиента с использованием того же дистрибутива программы, который мы устанавливали на сервер. При использовании приложений для других операционных систем логика настройки аналогична.
- Устанавливаем на клиентский компьютер.
- Копируем в директорию C:\Program Files\OpenVPN\config созданные ранее на сервере файлы клиентских сертификатов (2 сертификата с расширением.crt и ключ с расширением.key) и используем наш файл конфигурации клиента client.ovpn. Последний файл после копирования на устройство пользователя удаляем с сервера или переносим из папки config во избежание путаницы в будущем.
- Откройте файл client.ovpn. Найдите строку remote my-server-1 1194 и укажите в ней ip-адрес или доменное имя vpn-сервера:
remote 1194Например: remote 111.222.88.99 1194
- Находим пути до сертификатов. Указываем в нем пути до скопированных ранее сертификатов ca.crt, client1.key, client1.crt как в примере ниже:
# See the server config file for more
# description. It»s best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca «C:\\Program Files\\OpenVPN\\config\\ca.crt»
cert «C:\\Program Files\\OpenVPN\\config\\client1.crt»
key «C:\\Program Files\\OpenVPN\\config\\client1.key»
# This file should be kept secret - Сохраните файл. Настройка клиентской части завершена.
Проверка правил Брандмауэра Windows
Внимание! Для корректной работы сервиса OpenVPN требуется, чтобы на севере были открыты соответствующие порты (по-умолчанию UDP 1194) . Проверьте соответствующее правило в вашем Firewall»е: или стороннем антивирусном ПО.
Проверка OpenVPN-соединения
Запустите OpenVPN сервер, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации сервера (у нас server.ovpn -> ПКМ ->
Запустите клиент, для этого перейдите в директорию C:\Program Files\OpenVPN\config и выберите файл конфигурации клиента (у нас client.ovpn -> ПКМ -> «Start OpenVPN on this config file»).
На экране отобразится окно статуса подключения. Через несколько секунд оно будет свернуто в трей. Зеленый индикатор ярлыка OpenVPN в области уведомлений говорит об успешном подключении.
Проверим доступность с клиентского устройства сервера OpenVPN по его внутреннему адресу частной сети:
Теперь вы имеете готовую к работе виртуальную частную сеть, позволяющую осуществлять безопасные сетевые подключения между ее клиентами и сервером, используя открытые и территориально удаленные точки подключения к сети интернет.
This is primarily a maintenance release with bugfixes and improvements. One of the big things is enhanced TLS 1.3 support. A summary of the changes is available in Changes.rst , and a full list of changes is available .
. We are moving to MSI installers in OpenVPN 2.5, but OpenVPN 2.4.x will remain NSIS-only.
will not work on Windows XP. The last OpenVPN version that supports Windows XP is 2.3.18, which is downloadable as and versions.
If you find a bug in this release, please file a bug report to our . In uncertain cases please contact our developers first, either using the or the developer IRC channel (#openvpn-devel at irc.freenode.net). For generic help take a look at our official , and user IRC channel (#openvpn at irc.freenode.net).
Source Tarball (gzip) | GnuPG Signature | openvpn-2.4.7.tar.gz |
Source Tarball (xz) | GnuPG Signature | openvpn-2.4.7.tar.xz |
Source Zip | GnuPG Signature | openvpn-2.4.7.zip |
Windows installer (NSIS) | GnuPG Signature | openvpn-install-2.4.7-I603.exe |
NOTE: the GPG key used to sign the release files has been changed since OpenVPN 2.4.0. Instructions for verifying the signatures, as well as the new GPG public key are available .
We also provide static URLs pointing to latest releases to ease automation. For a list of files look .
This release is also available in our own software repositories for Debian and Ubuntu, Supported architectures are i386 and amd64. For details. look .
OpenVPN 2.4.6 — released on 2018.04.24
This is primarily a maintenance release with minor bugfixes and improvements, and one security relevant fix for the Windows Interactive Service. Windows installer includes updated OpenVPN GUI and OpenSSL. Installer I601 included tap-windows6 driver 9.22.1 which had one security fix and dropped Windows Vista support. However, in installer I602 we had to revert back to tap-windows 9.21.2 due to driver getting reject on freshly installed Windows 10 rev 1607 and later when Secure Boot was enabled. The failure was due to the new, more strict driver signing requirements. The 9.22.1 version of the driver is in the process of getting approved and signed by Microsoft and will be bundled in an upcoming Windows installer.
Please note that LibreSSL is not a supported crypto backend. We accept patches and we do test on OpenBSD 6.0 which comes with LibreSSL, but if newer versions of LibreSSL break API compatibility we do not take responsibility to fix that.
Also note that Windows installers have been built with NSIS version that has been patched against several . Based on our testing, though, older Windows versions such as Windows 7 might not benefit from these fixes. We thus strongly encourage you to always move NSIS installers to a non-user-writeable location before running them . Our long-term plan is to migrate to using MSI installers instead.
Compared to OpenVPN 2.3 this is a major update with a large number of new features, improvements and fixes. Some of the major features are AEAD (GCM) cipher and Elliptic Curve DH key exchange support, improved IPv4/IPv6 dual stack support and more seamless connection migration when client»s IP address changes (Peer-ID). Also, the new —tls-crypt feature can be used to increase users» connection privacy.
OpenVPN GUI bundled with the Windows installer has a large number of new features compared to the one bundled with OpenVPN 2.3. One of major features is the ability to run OpenVPN GUI without administrator privileges. For full details, see the . The new OpenVPN GUI features are documented .
Please note that OpenVPN 2.4 installers will not work on Windows XP.
If you find a bug in this release, please file a bug report to our . In uncertain cases please contact our developers first, either using the or the developer IRC channel (#openvpn-devel at irc.freenode.net). For generic help take a look at our official ,
Инструкции по установке OpenVPN для Windows 7
Итак, вы настраиваете VPN в Windows 7 с помощью программного обеспечения OpenVPN
Чтобы установить надежное VPN-соединение для своего ПК с Windows 7, воспользуйтесь этими инструкциями. Просто загрузите и установите программное обеспечение OpenVPN, затем загрузите файлы конфигурации OpenVPN у своего провайдера VPN и скопируйте их в папку OpenVPN \ config, и все готово. Осталось только одно: подготовьте данные для аутентификации своей учетной записи VPN, потому что вам нужно будет ввести их при первом запуске OpenVPN.Вот и все, как только вы настроите VPN-соединение OpenVPN для Windows 7 , вы сможете легко подключиться к нему всего одним щелчком мыши. Чтобы упростить вам задачу, мы сделали эти простые пошаговые инструкции со скриншотами на , как создать VPN-соединение в Windows 7 с помощью OpenVPN , поэтому вам нужно делать каждую точку одну за другой и искать скриншот на всякий случай. Программное обеспечение OpenVPN — это бесплатное программное обеспечение, которое можно использовать для настройки соединений OpenVPN на всех платформах, включая старые, такие как Windows XP и Windows Vista.
Инструкции по установке OpenVPN для Windows 7
Шаг 1:
Чтобы загрузить установщик OpenVPN для Windows 7, посетите страницу загрузок OpenVPN
Шаг 2:
Нажмите Запустить , чтобы запустить установщик
- Вы можете увидеть запрос системы безопасности: « Вы хотите запустить или сохранить этот файл? ”Щелкните« Выполнить », чтобы запустить программное обеспечение.
- Вы можете увидеть запрос управления учетными записями пользователей: « Программе требуется ваше разрешение для продолжения ».Щелкните Продолжить.
Шаг 3:
Появится приглашение мастера установки. Нажмите Далее, чтобы продолжить
Шаг 4:
Появятся лицензионное соглашение и условия OpenVPN. Щелкните Я согласен, чтобы продолжить.
Шаг 5:
Появится диалоговое окно выбора компонента. Оставьте все компоненты отмеченными с настройками по умолчанию и нажмите Next
.Шаг 6:
Выберите папку назначения и нажмите Установить
Обратите внимание на расположение целевой папки во время установки (обычно C: \ Program Files \ OpenVPN)
Шаг 7:
Когда установка будет завершена, нажмите Далее
Шаг 8:
Мастер уведомит вас о завершении установки и предложит нажать кнопку «Готово»
Шаг 9:
Загрузите установщик SFX с файлами конфигурации с LimeVPN и откройте его.Нажмите «Выполнить
«.Шаг 10:
Нажмите «Выполнить»
Шаг 11:
Скачать и распаковать конфигурацию ( ZIP ):
ZIP : извлеките файлы из ZIP-архива конфигурации в папку config в папке назначения OpenVPN, указанной в шаге 7. По умолчанию это будет C: \ Program Files \ OpenVPN \ config.
- Нажмите Извлечь все файлы
- Появится запрос «Выберите место назначения и извлеките файлы».Щелкните Обзор.
- Найдите папку назначения, указанную в шаге 7, и найдите в ней папку конфигурации. Нажмите «Извлечь», чтобы начать извлечение.
Нажмите «Выполнить»
Шаг 12:
Нажмите Пуск, затем Все программы
Шаг 13:
Найдите графический интерфейс OpenVPN, щелкните правой кнопкой мыши и выберите Свойства
Шаг 14:
Перейдите на вкладку «Совместимость» и установите флажок « Запустить эту программу от имени администратора ».Нажмите ОК
Шаг 15:
Снова нажмите Пуск, найдите графический интерфейс OpenVPN и откройте его
Шаг 16:
Как подключиться к VPN с помощью OpenVPN в Windows 7
- На панели задач щелкните правой кнопкой мыши на значке графического интерфейса OpenVPN, найдите сайт, к которому нужно подключиться, в меню и выберите «Подключиться» в подменю сайта
- Введите ваш адрес электронной почты для входа в LimeVPN и Пароль при появлении запроса и нажмите OK
- Значок графического интерфейса OpenVPN на панели задач станет зеленым после того, как будет установлено безопасное соединение.
Шаг 17:
Как отключиться от OpenVPN
- На панели задач щелкните правой кнопкой мыши значок графического интерфейса OpenVPN, найдите в меню сайт, к которому нужно подключиться, и выберите «Отключиться» в подменю сайта.
- Значок графического интерфейса OpenVPN на панели задач станет красным после завершения отключения
OpenVPN Server и установка клиента в Windows | Лисенет.com :: Linux | Безопасность
Настройка сервера OpenVPN на Windows Server 2008, размещенном на AWS. Также протестирован на Windows Server 2012 R2.
Установить OpenVPN
Загрузите пакет с официального сайта здесь (OpenVPN 2.3.2) и установите сервер OpenVPN на машину Windows. Убедитесь, что вы установили утилиты OpenSSL и сценарии управления сертификатами OpenVPN RSA.
[ОБНОВЛЕНИЕ: июль 2014] Обратите внимание, что easy-rsa был включен в 2.3.2, но больше не входит в состав архивов исходного кода OpenVPN (согласно странице загрузок OpenVPN).Чтобы получить его, посетите страницу easy-rsa на GitHub.
[ОБНОВЛЕНИЕ: февраль 2016] Инструкции были протестированы с OpenVPN 2.4.0 на Windows Server 2012 R2. При установке OpenVPN убедитесь, что установлен следующий флажок:
У нас отключен брандмауэр Windows. Нам нужно будет открыть порт UDP 11194 в группе безопасности AWS, связанной с сервером.
Необязательно: переименовать адаптер TAP-Windows V9
Найдите сетевой интерфейс, который не подключен к Интернету и имя устройства указано как «TAP-Windows Adapter V9».Для ясности переименуйте адаптер TAP на «tap-vpn».
Создание сертификата и ключа главного центра сертификации (CA)
Откройте окно командной строки в качестве администратора и смените каталог на C: \ Program Files \ OpenVPN \ easy-rsa
:
C: \ Users \ Администратор> cd \ Program Files \ OpenVPN \ easy-rsa
Запустите следующий командный файл, чтобы скопировать файлы конфигурации на место:
> init-config
Теперь отредактируйте файл vars (он называется vars.bat в Windows):
> блокнот vars.bat
И установите соответствующие параметры ниже:
KEY_COUNTRY = ГБ KEY_PROVINCE = Мидлендс KEY_CITY = Бирмингем KEY_ORG = Частный [электронная почта защищена] KEY_CN = изменить KEY_NAME = changeme KEY_OU = IT
Не оставляйте ни один из этих параметров пустым. Следующее, что нужно сделать, это инициализировать PKI:
> варс > убрать все > сборка-ca
Создайте сертификат и закрытый ключ для сервера
> сервер-ключ сборки
Создание сертификата и закрытого ключа для клиента
Создание клиентских сертификатов очень похоже на предыдущий шаг.Убедитесь, что значение Common Name соответствует значению сервера и указано значение Name . Остальные настройки можно оставить по умолчанию.
> варс > клиент с ключом сборки
Создание параметра Диффи Хеллмана для сервера OpenVPN
> сборка dh
Создание файлов конфигурации для сервера и клиентов
Скопируйте файл шаблона C: \ Program Files \ OpenVPN \ sample-config \ server.ovpn
в C: \ Program Files \ OpenVPN \ config
:
> копия.. \ образец-конфигурация \ server.ovpn .. \ config Скопирован 1 файл (ы).
Изменить файл конфигурации для сервера
Откройте файл конфигурации server.ovpn
для редактирования:
> блокнот .. \ config \ server.ovpn
Сделайте это как показано ниже:
# прослушивание IPv4 местный 0.0.0.0 # порт по умолчанию - 1194 # мы используем порт не по умолчанию 11194 порт 11194 # Протокол UDP выбран для лучшей защиты от DoS-атак и сканирования портов прото udp # использование маршрутизируемого IP-туннеля Dev Tun # относительные пути к ключам и сертификатам ок..//easy-rsa//keys//ca.crt сертификат ..//easy-rsa//keys//server.crt ключ ..//easy-rsa//keys//server.key dh ..//easy-rsa//keys//dh2024.pem # установить подсеть OpenVPN сервер 10.26.0.0 255.255.255.0 # ведение записи между клиентом и виртуальным IP-адресом ifconfig-pool-persist ipp.txt #ping каждые 10 секунд, предположим, что удаленный узел не работает, если в течение 60 не получено эхо-запрос. Keepalive 10 60 #cryptographic cipher, должен быть таким же (скопированным) и в файле конфигурации клиента шифр AES-256-CBC # включить сжатие на канале VPN comp-lzo макс-клиентов 20 # попытаться сохранить какое-то состояние после перезапуска постоянный ключ настойчивый туннель # файл журнала положение дел ..//log//openvpn-status.log # подробность файла журнала глагол 3
Никаких других изменений вносить не нужно.
Запустить сервер OpenVPN
Запуск из окна командной строки:
> openvpn .. \ config \ server.ovpn
После запуска в окне командной строки OpenVPN можно остановить с помощью клавиши F4.
Службойтакже можно управлять из меню «Пуск» -> Администрирование -> Службы .
Убедитесь, что сервер OpenVPN работает:
> netstat -na | findstr / L 11194 UDP 0.0.0.0: 11194 *. *
Настройка клиента OpenVPN
Загрузите установочный пакет и установите клиентское программное обеспечение OpenVPN.
Нам нужно скопировать файл шаблона C: \ Program Files \ OpenVPN \ sample-config \ client.ovpn
с сервера в папку нашего клиентского ПК C: \ Program Files \ OpenVPN
.
Также скопируйте ca.crt , client.crt и client.key из C: \ Program Files \ OpenVPN \ easy-rsa \ keys
в папку нашего клиентского ПК C: \ Program Files \ OpenVPN \ конфиг
.
Изменить файл конфигурации клиента
Откройте файл конфигурации client.ovpn
для редактирования и сделайте так, чтобы он выглядел так:
клиент Dev Tun прото udp удаленный openvpn.example.com 11194 resolv-retry бесконечно без привязки постоянный ключ настойчивый туннель ca ca.crt сертификат client.crt ключ client.key сервер ns-cert-type шифр AES-256-CBC comp-lzo глагол 3
Подключиться к серверу OpenVPN
Запустите клиент OpenVNP, нажмите «Профили подключения» -> «Локальный файл» , найдите клиент .ovpn
, сохраните файл. Нажмите «Подключиться».
Также можно запустить из окна командной строки:
> компакт-диск \ Program Files \ OpenVPN \ config > openvpn. \ client.ovpn
Все готово. Теперь мы должны иметь возможность подключаться к серверу по протоколу RDP, используя его частный IP-адрес 10.26.0.X.
Как установить OpenVPN в Windows 7 с использованием сертификатов
Установка:
Чтобы установить OpenVPN в Windows 7, перейдите на веб-сайт OpenVPN в сообществе загрузок и загрузите установщик Windows.
Как только он будет загружен, пока не запускайте его. Откройте место загрузки, щелкните файл правой кнопкой мыши и выберите свойства. Перейдите на вкладку «Совместимость», установите для нее совместимость с Windows Vista SP1 и установите флажок внизу с надписью «Запустить эту программу от имени администратора». Нажмите «ОК», чтобы закрыть это диалоговое окно.
Наконец, щелкните правой кнопкой мыши файл установщика Windows для установочного пакета OpenVPN и выберите «Запуск от имени администратора»
Выполните стандартную установку и примите все всплывающие окна о подписанных или неподписанных драйверах, если они есть.
Учебная топология
IP-адрес сервера OpenVPN: 1.2.3.4 IP-адрес клиента в Интернете: 6.7.8.9 (Важно, убедитесь, что он соответствует этим значениям, измените его позже) Клиентская локальная подсеть ABC до OpenVPN: 10.0.0.0/24 IP-адрес локального маршрутизатора клиента ABC: 10.0.0.1 Локальный IP-адрес клиента ABC: 10.0.0.10 (сертификаты) Сертификат ЦС имя файла: ca.crt Клиентский сертификат ABC Имя файла: client-abc.crt Имя файла ключа ABC клиента: client-abc.key
Файл сертификатов клиентов:
Сертификат клиента, ключ клиента и сертификат CA необходимо скопировать на клиентский компьютер, особенно в папку конфигурации OpenVPN, расположенную по адресу:
"C: \ Program Files (x86) \ OpenVPN \ config \" для 64 бит "C: \ Program Files \ OpenVPN \ config \" для 32 бит
Чтобы сгенерировать клиентский сертификат и ключ abc, и вы следовали нашему руководству по настройке службы openvpn в CentOS, вы можете запустить следующую команду, а затем скопировать (не перемещать) сгенерированный клиентский сертификат и ключ с помощью Сертификат CA для папки конфигурации OpenVPN, указанной выше:
cd / etc / openvpn / easy-rsa / 2.0 / исходные вары /etc/openvpn/easy-rsa/2.0/build-key client-abc
Файл конфигурации клиента:
По умолчанию файл не существует, поэтому откройте новый блокнот и сохраните его в этом месте:
"C: \ Program Files (x86) \ OpenVPN \ config \ client-abc.ovpn" для 64 бит "C: \ Program Files \ OpenVPN \ config \ client-abc.ovpn" для 32 бит
Затем скопируйте внутрь следующую конфигурацию и сохраните файл:
клиент auth-nocache Dev Tun прото udp comp-lzo resolv-retry бесконечно постоянный ключ настойчивый туннель удаленный 1.2.3.4 1723 ca ca.crt сертификат client-abc.crt ключ client-abc.key # Раскомментируйте следующую строку, если хотите, например, чтобы ваш openvpn-клиент, # Что должно быть в подсети 172.16.0.0/24, чтобы иметь возможность доступа и маршрутизации # трафик в подсеть 192.168.1.0/24 на стороне OpenVPN Server, # предполагая, что вы установили необходимые правила для firewall / iptables. # маршрут 192.168.1.0 255.255.255.0 глагол 3 поплавок
Как настроить OpenVPN на сервере Windows 2019
Введение
В этой статье блога мы поговорим о том, как настроить OpenVPN на Windows Server 2019.VPN — это краткая форма виртуальной частной сети, которая дает нам конфиденциальность, анонимность и безопасность в общедоступном Интернете. Служба VPN маскирует IP-адрес нашего интернет-провайдера, поэтому ваши действия в сети практически невозможно отследить. VPN также можно использовать для подключения компьютеров к изолированным удаленным компьютерным сетям, которые обычно недоступны, с помощью Интернета или другой промежуточной сети.
Мы можем определить OpenVPN как полнофункциональный SSL VPN. OpenVPN использует расширение защищенной сети уровня 2 или 3 OSI, используя стандартный протокол SSL / TLS.OpenVPN поддерживает гибкие методы аутентификации клиентов на основе сертификатов, смарт-карт и учетных данных имени пользователя и пароля. OpenVPN не является прокси-сервером веб-приложения и не работает через веб-браузер. Серверный процесс OpenVPN через один порт TCP или UDP. Номер порта по умолчанию — 1194. OpenVPN 2.3 включает большое количество улучшений, включая полную поддержку IPv6 и PolarSSL.
OpenVPN — это также название проекта с открытым исходным кодом, запущенного нашим соучредителем и использующего лицензию GPL.Он разработал проект OpenVPN, который использовался для шифрования и защиты соединений точка-точка или сайт-сеть между двумя машинами через общедоступный Интернет. Другими словами, используя OpenVPN, мы можем создать защищенную частную сеть через общедоступный Интернет и иметь удаленный доступ к внутренним службам вашей ИТ-инфраструктуры.
Сценарии использования OpenVPN
Безопасный удаленный доступ
Связь между сайтами, пользователями-пользователями или пользователями-пользователями для объединения сетей
Защита совместного использования экрана и удаленного доступа к рабочему столу
Шифрование конфиденциальной связи Интернета вещей
Безопасный доступ к облачным системам
OpenVPN доступен как показано ниже.
- OpenVPN Community Edition, бесплатная версия с открытым исходным кодом
- OpenVPN Access Server (OpenVPN-AS), основан на Community Edition, но предоставляет дополнительные платные и проприетарные функции, такие как интеграция LDAP, портал администрирования Easy Management, вариант кластера и т. Д.
- OpenVPN-as-a-Service, решение устраняет необходимость в установке VPN-сервера. Приобретая OpenVPN Cloud, мы можем просто подключиться к нашему размещенному сервису в регионах по всему миру.
Помимо OpenVPN Community Edition, две другие версии OpenVPN имеют экономичную модель лицензирования, основанную только на количестве пользователей или устройств, одновременно подключенных к VPN.
OpenVPN Community Edition абсолютно бесплатна для использования и не имеет ограничений для пользователей. Сервер OpenVPN community edition может быть установлен в системах на базе Linux или Windows.
OpenVPN для Windows
Его можно установить из самоустанавливающегося exe-файла, который называется OpenVPN GUI. Графический интерфейс OpenVPN — это графический интерфейс для OpenVPN, работающий в Windows. Он создает значок в области уведомлений, из которого вы можете управлять OpenVPN, чтобы запускать / останавливать VPN-туннели, просматривать журнал и делать другие полезные вещи.
Клиент OpenVPN Connect
Это клиентские программные пакеты OpenVPN, устанавливаемые на клиентский компьютер. Этот клиентский пакет используется для подключения к серверу OpenVPN. Клиент OpenVPN Connect поддерживается в Windows, Linux, MacOS, IOS и Android.
Настройка сервера OpenVPN.
В этой статье будет показано, как настроить сервер OpenVPN (Community Edition) на Windows Server 2019 для пересылки входящего трафика в Интернет, а затем направить ответы обратно клиенту.Это модель Users-to-Site, которая означает настройку OpenVPN Windows Server для туннелирования клиентского интернет-трафика через OpenVPN-сервер. У тех клиентов, которые успешно подключились к серверу OpenVPN, IP-адрес провайдера будет отображаться как общедоступный IP-адрес сервера. Обычно VPN-туннель используется для частного доступа к Интернету, избегая цензуры или геолокации путем экранирования веб-трафика вашего компьютера при подключении через доверенные точки доступа или подключения.
Раздел 1. Установка сервера OpenVPN
Приступим.Загрузите последнюю версию установщика MSI для 64-разрядной версии Windows для версии OpenVPN Community с официального веб-сайта OpenVPN в разделе сообщества.
Исполняемый файл OpenVPN должен быть установлен как на сервере, так и на клиентском компьютере, поскольку один исполняемый файл обеспечивает как клиентские, так и серверные функции.
После загрузки дважды щелкните исполняемый файл установщика. появится следующий экран, нажмите «Настроить», чтобы начать установку.
Убедитесь, что вы выбрали все функции, щелкнув значок рядом с каждой функцией и выбрав его.Ниже приведены две функции, которые не будут установлены по умолчанию, и их нужно выбрать во время установки.
Утилиты Openssl, сценарии управления сертификатами EasyRSA 3
Сервис OpenVPN.
Нажмите кнопку «Установить сейчас».
Установка будет завершена, и мы увидим экран ниже. Щелкните «Закрыть».
Мы получим предупреждающее сообщение: «Не найдены доступные для чтения профили подключения (файлы конфигурации). Все в порядке, нажмите ОК.
На этом установка пакета OpenVPN MSI завершена. После установки, если мы перейдем к настройкам сервера «Сеть и Интернет» >> в разделе Ethernet >> Изменить параметры адаптера >>, мы увидим новый сетевой адаптер с именем OpenVPN TAP device created.
Мы можем перезапустить службу OpenVPN из меню «Пуск» Windows -> Панель управления -> Администрирование -> Службы.
При запуске службы OpenVPN OpenVPN будет искать.файл конфигурации ovpn в папке C: \ Program Files \ OpenVPN \ config
Другой вариант запуска / остановки службы OpenVPN — это щелкнуть по скрытой области уведомлений Windows на панели задач, там мы увидим значок OpenVPN, щелкните его правой кнопкой мыши, и вы увидите несколько вариантов, включая «Подключиться» и «Отключиться».
Если вы не видите значок OpenVPN в области уведомлений панели задач Windows, дважды щелкните значок OpenVPN, доступный на рабочем столе, и значок OpenVPN станет доступным в области уведомлений панели задач Windows.
Для лучшего понимания см. Снимок экрана ниже.
Теперь, если вы захотите добавить какие-либо функции OpenVPN позже, вы можете использовать команды, как показано ниже. В приведенном ниже примере команда cmd установит функцию службы OpenVPN на существующий установленный сервер OpenVPN.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-1> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
msiexec / i OpenVPN-2.5.3-I601-amd64.msi ADDLOCAL = OpenVPN.СервисРаздел 2. Настройка главного центра сертификации (CA) и создание сертификатов и ключей для сервера и клиентов OpenVPN.
OpenVPN использует инфраструктуру открытых ключей (PKI) для создания сертификатов и управления ими. Это технология, лежащая в основе цифровых сертификатов. Таким образом, PKI — это технология, которая позволяет вам шифровать данные, подписывать документы цифровой подписью и аутентифицировать себя с помощью сертификатов.
PKI состоит из:
- Отдельный сертификат (также известный как открытый ключ) и закрытый ключ для сервера и каждого клиента, и
- Главный сертификат и ключ центра сертификации (CA), который используется для подписи каждого сертификата сервера и клиента.
Для управления PKI OpenVPN предоставил easy-rsa 2, набор скриптов, который идет в комплекте с OpenVPN MSI.
Местоположение папки сценариев easy-rsa2 должно быть C: \ Program Files \ OpenVPN \ easy-rsa
Если он недоступен, в Windows Server откройте браузер и перейдите по ссылке https://github.com/OpenVPN/easy-rsa-old
Нажмите «Код» >> Нажмите «Загрузить Zip-архив»
Будет загружен zip-файл с именем «easy-rsa-old-master».Разархивируйте его.
Создайте папку с именем «easy-rsa» в C: \ Program Files \ OpenVPN \
Теперь скопируйте все файлы из папки Downloaded \ easy-rsa-old-master \ easy-rsa \ Windows в C: \ Program Files \ OpenVPN \ easy-rsa
Теперь, если мы запустим команды, подобные приведенным ниже, из строки cmd Windows, мы сможем выполнять такие вещи, как
Easy-Rsa 2 Скрипт | Цель |
---|---|
init-config.bat | копировать vars.bat.sample vars.bat |
vars чистый-все | Инициализировать PKI |
сборка | Создает сертификат и ключ центра сертификации (CA) |
сервер-ключ сборки | Создайте сертификат и закрытый ключ для сервера |
ключ сборки client1 | Создание клиентских сертификатов для клиента с именем client1 |
build-dh | Создает параметры Диффи Хеллмана |
Сначала запустите команду « init-config » из Windows cmd.
Примечание:
После выполнения первой команды « init-config» отредактируйте файл vars.bat и установите параметры KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG и KEY_EMAIL. Не оставляйте ни один из этих параметров пустым.
Для редактирования файла vars.bat откройте следующий каталог с помощью Windows Explorer
C: \ Program Files \ OpenVPN \ easy-rsa
с помощью Блокнота (или другого текстового редактора) отредактируйте командный файл с именем vars.летучая мышь. Я изменил следующие настройки (нижняя часть файла) в соответствии с нашими требованиями.
Убедитесь, что значения переменных KEY_CN и KEY_NAME должны совпадать. Для вашего «Общего имени» хорошим выбором будет выбрать имя, идентифицирующее центр сертификации вашей компании.
Здесь я использую Общее имя в качестве имени хоста VPN-сервера.
установить KEY_COUNTRY = US |
---|
установить KEY_PROVINCE = CA |
набор KEY_CITY = SanFrancisco |
установить KEY_ORG = OpenVPN |
установить KEY_EMAIL = mail @ openvpnserver.com |
установить KEY_CN = OPENVPNSERVER |
установить KEY_NAME = OPENVPNSERVER |
комплект KEY_OU = IT |
установить PKCS11_MODULE_PATH = changeme |
установить PKCS11_PIN = 1234 |
Сохраните файл и выйдите из блокнота. Это будет выглядеть так, как показано ниже. Затем переходите к другим командам.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-2> .CodeMirror.CodeMirror-льняной номер {цвет:; }]]>Копировать в буфер обмена
cd «C: \ Program Files \ OpenVPN \ easy-rsa» vars.bat clean-all.batТеперь пора запустить команду build-ca.bat . Но проблема с этими сценариями easy-rsa, такими как build-ca , заключается в том, что они будут работать только в том случае, если пакет openssl предустановлен на наших серверах Windows, потому что сценарии easy-rsa вызывают интерактивные команды openssl для выдачи сертификатов SSL / TLS.
На большинстве серверов Windows набор инструментов openssl недоступен, потому что это не пакет, предоставляемый Microsoft.Поэтому нам нужно установить его вручную, и только тогда мы сможем заставить работать скрипты easy-rsa.
Итак, в этом случае мы решили не использовать сценарии easy-rsa для генерации сертификатов SSL / TLS, а вместо этого использовать команды openssl напрямую.
Сначала убедитесь, что набор инструментов openssl установлен на сервере, выполнив следующую команду проверки версии в Windows cmd.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-3> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl version –aЕсли отображается какая-либо ошибка, например, openssl не распознается как внутренняя или внешняя команда, нам нужно сначала установить инструментарий openssl.
Раздел 2 а. Установка и настройка openssl toolkit
Следуйте этому разделу, только если на вашем сервере нет доступного инструментария openssl, в противном случае пропустите эту часть и переходите к следующему Раздел 2 b .
Откройте Windows Powershell и загрузите пакет openssl, используя команду ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-4> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
curl.exe -L -o Win64OpenSSL.exe https://slproweb.com/download/Win64OpenSSL-3_0_0.exeТеперь выполните установку, дважды щелкнув файл .exe или выполнив команду PowerShell ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-5> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
. \ Win64OpenSSL.exeПоявится всплывающее окно с сообщением, поскольку на сервере отсутствует пакет Microsoft Visual C ++ 2019.Нам необходимо установить этот пакет до того, как продолжить установку пакета openssl. Поэтому нажмите «Да», чтобы загрузить пакет.
Дважды щелкните загруженный установщик msi распространяемых компонентов Microsoft Visual C ++ 2019. Появится другое всплывающее окно. Подтвердите лицензионное соглашение и нажмите «Установить».
Мы получим сообщение об успешном завершении установки. Щелкните закрыть.
Теперь вернитесь к мастеру установки OpenSSL, примите лицензионное соглашение и нажмите «Далее».
Выберите каталог установки и нажмите кнопку Далее. В нашем случае мы выбираем каталог установки как C: \ OpenSSL-Win64
.Выберите папку для ярлыка приложения OpenSSL. Оставьте значение по умолчанию как есть и нажмите Далее.
Выберите копию файлов OpenSSL DLL в качестве системного каталога Windows, который является каталогом по умолчанию, и нажмите «Далее».
Нажмите «Установить», чтобы продолжить установку OpenSSL на Windows Server 2019.
Дайте несколько минут для завершения установки. Индикатор выполнения, как показано ниже, покажет статус установки.
Нажмите «Готово», чтобы завершить установку OpenSSL.
Теперь добавьте двоичную папку установки OpenSSL C: \ OpenSSL-Win64 \ bin
в PATH среды Windows, выполнив две указанные ниже команды powershell.
Копировать в буфер обмена
$ userenv = [System.Среда] :: GetEnvironmentVariable («Путь», «Пользователь») [System.Environment] :: SetEnvironmentVariable («PATH», $ userenv + «C: \ OpenSSL-Win64 \ bin», «User»)Теперь экспортируйте OPENSSL_CONF как переменную среды в раздел системных переменных сервера. Используйте команду Powershell ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-7> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
set OPENSSL_CONF = C: \ OpenSSL-Win64 \ bin \ openssl.cfgВывод команды будет выглядеть, как показано ниже.
Теперь нам нужно навсегда добавить системную переменную OPENSSL_CONF.
Для этого нажмите одновременно клавиши Windows + R, чтобы открыть окно запуска, затем введите «sysdm.cpl» в диалоговом окне «Выполнить» и нажмите Enter.
Перейдите на вкладку «Дополнительно» и щелкните «Переменные среды». Нажмите «Создать» в разделе «Системные переменные».
Добавьте значения в «имя переменной» как OPENSSL_CONF и в поле «значение переменной» как C: \ OpenSSL-Win64 \ bin \ openssl.cfg. Дважды нажмите «ОК», а затем «Применить» и «ОК» в окне «Свойства системы».
.
Раздел 2 б. Настройте OpenSSL.
В этом разделе мы настраиваем OpenSSL, установленный на сервере, для создания SSL / TLS, сертифицированного в соответствии с рекомендациями OpenVPN. Для этого
- Сначала перейдите в папку C: \ OpenSSL-Win64 \ bin и создайте папку с именем «demoCA». Это папка, в которой мы хранили сгенерированные сертификаты и другие связанные файлы.
- Теперь в папке «demoCA» создайте еще одну папку с именем «certs». Это папка, в которой хранятся выпущенные сертификаты.
- Теперь в самой папке «demoCA» создайте еще одну папку с именем «newcerts». Это папка по умолчанию для новых сертификатов.
- В папке «demoCA» создайте файл с именем «serial». Убедитесь, что у файла нет расширения, например .txt. Введите в файл значение «01». Он имеет текущий серийный номер
- Наконец, в папке «demoCA» создайте пустой файл с именем «index.txt».
См. Снимок экрана ниже, чтобы получить представление о файловой структуре.
Теперь откройте файл конфигурации OpenSSL C: \ OpenSSL-Win64 \ bin \ openssl.cfg с помощью любого текстового редактора.
В разделе [CA_default] установите расположение переменной «dir» как C: \\ OpenSSL-Win64 \\ bin \\ demoCA
Чтобы избежать возможной атаки Man-in-the-Middle, когда авторизованный клиент пытается подключиться к другому клиенту, выдавая себя за сервер, убедитесь, что клиенты используют какую-то проверку сертификата сервера. Для этого мы следуем приведенному ниже методу.
Создайте наши серверные сертификаты с конкретным использованием ключей и расширенным использованием ключей в соответствии с RFC3280.
Теперь, как часть создания CERT с расширенными ключевыми атрибутами, сначала проверьте, в каком разделе нам нужно определить расширенные ключевые атрибуты. Для этого посмотрите раздел [req] в файле C: \ OpenSSL-Win64 \ bin \ openssl.cfg
.Обычно это должно выглядеть так, как показано ниже. Если нет, сделайте это так, как показано ниже.
[требуется] default_bits = 2048 |
---|
В приведенном выше разделе мы поняли, что все необходимые расширения x509 должны быть указаны в разделе [usr_cert] в C: \ OpenSSL-Win64 \ bin \ openssl.cfg
Итак, найдите раздел [usr_cert] и убедитесь, что указаны следующие значения.
[usr_cert] subjectKeyIdentifier = хэш |
---|
После добавления расширений в usr_cert, теперь найдите раздел [v3_req] и вставьте те же расширения для добавления в запрос сертификата.Поскольку у этого раздела будет расширение, которое должно быть у запроса сертификата.
Ниже приведены расширения, которые нам обычно нужны.
extendedKeyUsage = serverAuth, clientAuth, codeSigning, emailProtection basicConstraints = critical, CA: true, pathlen: 0 keyUsage = critical, digitalSignature, cRLSign, keyCertSign |
---|
Теперь также убедитесь, что ниже значения ключей расширения также добавлены в раздел [v3_ca]. Из этого раздела будет добавлено наше расширение сертификата CA.Ниже приведены необходимые значения, которые необходимо добавить или включить.
subjectKeyIdentifier = хэш authorKeyIdentifier = keyid: всегда, эмитент basicConstraints = critical, CA: true |
---|
Наконец, сохраните файл конфигурации OpenSSL C: \ OpenSSL-Win64 \ bin \ openssl.cfg. Обратитесь к скриншотам ниже, чтобы вы получили представление о том, как будет выглядеть файл конфигурации.
Это завершает настройку OpenSSL в соответствии с рекомендацией OpenVPN.Теперь приступим к созданию сертификата SSL / TLS.
Раздел 2 c. Создание сертификатов SSL / TLS.
В этом разделе мы создаем CA, генерируем сертификат и ключ для сервера и клиента. Подпишите эти сертификаты, используя сертификаты CA. Для всех этих задач мы используем команды openssl.
Создайте центр сертификации сроком на десять лет, начиная с настоящего момента.
Откройте cmd windows, перейдите в каталог C: \ OpenSSL-Win64 \ bin \ demoCA. Задайте команду ниже.
.CodeMirror.CodeMirror-gutters {background-color:; } .fusion-syntax-highlighter-8> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl req -days 3650 -nodes -new -x509 -extensions v3_ca -keyout certs \ ca.key -out certs \ ca.crt -config C: \ OpenSSL-Win64 \ bin \ openssl. cfgМы попросим ввести информацию, которая будет включена в запрос сертификата. Ниже приведены поля и ответы, которые я использовал. Вы можете ввести значения в соответствии с вашими требованиями.
В поле общего имени я ввел имя хоста моего VPN-сервера OPENVPNSERVER, и это обычная практика.Здесь мы можем использовать любое имя или значения.
Поле | Значение |
---|---|
Название страны | США |
Название штата или провинции | CA |
Название населенного пункта | Сан-Франциско |
Название организации | OpenVPN |
Название организационного подразделения | IT |
Общее название | OPENVPNSERVER |
Адрес электронной почты | почта @ openvpnserver.com |
Ниже приведен снимок экрана с выходными данными вышеприведенной команды.
После создания сертификата CA мы можем проверить, правильно ли добавлены расширения, выполнив команду ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-9> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl x509 -noout -text -in certs \ ca.crtЗахваченный вывод вышеуказанной команды verify будет выглядеть, как показано ниже.По результатам мы можем увидеть наши добавленные параметры использования расширенного ключа, детали проверки указаны с помощью сгенерированного сертификата SSL / TLS CA.
Теперь сгенерируйте сертификат и ключ для сервера
Для этой первой проблемы, представленной ниже, команда для создания запроса на сертификат сервера, который будет действителен в течение десяти лет.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-10> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl req -days 3650 -nodes -new -keyout certs \ server.key -out certs \ server.csr -config C: \ OpenSSL-Win64 \ bin \ openssl.cfgВведите необходимую информацию, как мы описали ранее. Прикрепил скриншот для справки. В поле «Общее имя» я указал имя «Сервер», потому что для сервера создается запрос сертификата SSL / TLS.
Теперь мы можем подтвердить, что сгенерированный сертификат csr сервера имеет значения расширенного использования ключа, используя приведенную ниже команду.
.CodeMirror .CodeMirror-желоба {цвет фона:; }.слияние-синтаксис-маркер-11> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl req -text -in certs \ server.csrРезультат выполнения вышеуказанной команды будет выглядеть, как показано ниже. В результате мы сможем увидеть значения использования расширенного ключа.
Теперь подпишите запрос сертификата сервера с помощью нашего CA, создав пару сертификат / ключ.
Для этой проблемы ниже команда.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-12>.CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl ca -days 3650 -extensions usr_cert -cert certs \ ca.crt -keyfile certs \ ca.key -out server.crt -infiles certs \ server.csrНам будет предложено подтвердить подписывая Сертификат, введите «Y», а также подтвердите изменения, набрав «Y»
Прикрепил скриншот для справки.
После подписания сертификата мы можем проверить, правильно ли добавлены расширения, выполнив команду ниже.
Также мы можем проверить сертификат сервера по сертификату корневого ЦС. ОК означает, что цепочка доверия не повреждена.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-13> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl x509 -text -noout -in server.crt openssl verify -CAfile certs \ ca.crt server.crtЗахваченный вывод вышеуказанной команды verify будет выглядеть, как показано ниже. По результатам мы можем видеть, что параметры использования расширенного ключа включены с сгенерированным сертификатом SSL / TLS.
Теперь сгенерируйте сертификаты и ключи для 1 клиента, используя команду ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-14> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl req -days 3650 -nodes -new -keyout certs \ client1.key -out certs \ client1.csr -config C: \ OpenSSL-Win64 \ bin \ openssl.cfgВведите необходимое информация, как мы обсуждали ранее. Здесь единственное изменение, которое я сделал, — это изменение общего имени на Client1, потому что я генерирую этот сертификат для VPN-клиента с именем client1.
Вывод команды будет выглядеть, как показано ниже.
Теперь подпишите запрос сертификата клиента с помощью нашего CA, создав пару сертификат / ключ. Используйте команду ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-15> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl ca -days 3650 -extensions usr_cert -cert certs \ ca.crt -keyfile certs \ ca.key -out client1.crt -infiles certs \ client1.csrНам будет предложено подтвердить Подписание сертификата и фиксация изменений.Введите «y» для обоих и нажмите Enter.
Скриншот прилагается для справки.
Это завершило создание сертификата CA, сервера и сертификата клиента вместе с ключом. Эти ключи будут использоваться для аутентификации между сервером OpenVPN и клиентом.
Теперь нам нужно сгенерировать параметры Диффи-Хеллмана.
Параметры Диффи Хеллмана должны быть сгенерированы для сервера OpenVPN.
Эти параметры определяют, как OpenSSL выполняет обмен ключами Диффи-Хеллмана (DH).Обмен ключами Диффи-Хеллмана — это метод безопасного обмена криптографическими ключами по общедоступному каналу
Ошибка ниже команды для генерации параметров Диффи Хеллмана.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-16> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openssl dhparam -out certs \ dh5096.pem 4096Вывод команды выше будет выглядеть, как показано ниже.
Теперь сгенерируйте общий секретный ключ, который используется в дополнение к стандартному сертификату / ключу RSA.Мы назвали файл ta.key.
С помощью этого ключа мы включаем директиву tls-auth, которая добавляет дополнительную подпись HMAC ко всем пакетам подтверждения SSL / TLS для проверки целостности. Любой пакет UDP, не содержащий правильной подписи HMAC, может быть отброшен без дальнейшей обработки.
Включение tls-auth защитит нас от
- DoS-атаки или наводнение порта на UDP-порту OpenVPN.
- Сканирование портов для определения того, какие UDP-порты сервера находятся в состоянии прослушивания.
- Уязвимости переполнения буфера в реализации SSL / TLS.
- Инициирование квитирования SSL / TLS с неавторизованных машин.
Используйте команду ниже.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-17> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
openvpn —genkey tls-auth C: \ OpenSSL-Win64 \ bin \ demoCA \ certs \ ta.keyНиже представлен захваченный результат выполнения вышеуказанной команды.
Ключевые файлы
Теперь мы найдем наши вновь сгенерированные ключи и сертификаты в папке «C: \ OpenSSL-Win64 \ bin \ demoCA» и ее подкаталоге «certs».
Взгляните на прикрепленный снимок экрана для справки.
Вот краткое описание соответствующих файлов.
Имя файла | необходимо | Цель | Секрет |
---|---|---|---|
ca.crt | сервер + все клиенты | Сертификат корневого центра сертификации | № |
ок. Ключ | Только сервер | Корневой ключ CA | ДА |
дх5096.pem | только сервер | Параметры Диффи Хеллмана | НЕТ |
server.crt | только сервер | Сертификат сервера | НЕТ |
server.key | только сервер | Ключ сервера | ДА |
client1.crt | только client1 | Сертификат Client1 | НЕТ |
client1.key | только client1 | Ключ Client1 | ДА |
т.ключ | сервер + все клиенты | Используется для директивы tls-auth | № |
Теперь пора скопировать файлы сертификатов ca.crt, client1.crt, client1.key и ta.key с сервера OpenVPN на клиентский компьютер OpenVPN. Обязательно копируйте секретные файлы по безопасному каналу.
Раздел 3. Включите NAT на сервере OpenVPN.
Как я уже упоминал во введении, мы настраиваем наш сервер OpenVPN, чтобы маршрутизировать клиентам весь IP-трафик, такой как просмотр веб-страниц и поиск DNS, через сам VPN-сервер.Для этого нам нужно преобразовать сетевой интерфейс OpenVPN TUN / TAP в общедоступный Интернет через общедоступный интерфейс сервера OpenVPN, у которого уже есть доступ в Интернет.
Приступим. Сначала откройте диспетчер серверов. Щелкните Добавить роли и компоненты.
Нажмите Далее в мастере установки ролей и компонентов.
Выберите «Установка на основе ролей или функций» и нажмите «Далее».
Выберите «Наш сервер» в разделе «Выбрать сервер из пула серверов» и нажмите «Далее».
Выберите роль «Удаленный доступ» и нажмите «Далее».
оставьте раздел «Функции» как есть и нажмите «Далее».
Щелкните следующий раздел «При удаленном доступе».
В разделе «Службы ролей» выберите «Маршрутизация» и «Прямой доступ и VPN».
Появится всплывающее окно. Щелкните Добавить функции и щелкните Далее.
Щелкните Далее в разделе ролей веб-сервера.
Оставьте выбор по умолчанию, как он находится в разделе «Служба ролей IIS», и нажмите «Далее».
Нажмите кнопку «Установить» в разделе подтверждения.
Подождите несколько минут, мы получим сообщение об успешной установке. Щелкните «Закрыть».
Теперь в самом диспетчере серверов выберите «Удаленный доступ с левой стороны» >> щелкните правой кнопкой мыши имя нашего сервера с правой стороны >> выберите «Управление удаленным доступом».
В разделе «Прямой доступ и VPN» >> Щелкните «Запустить мастер настройки удаленного доступа».
Появится всплывающее окно.В этом нажмите «Развернуть только VPN»
Откроется панель «Управление маршрутизацией и удаленным доступом». Оттуда щелкните правой кнопкой мыши имя нашего VPN-сервера и выберите «Настроить и включить маршрутизацию и удаленный доступ»
Нажмите Далее в мастере настройки сервера маршрутизации и удаленного доступа.
Выберите «Трансляция сетевых адресов (NAT)» и нажмите «Далее».
Выберите наш общедоступный сетевой интерфейс, где у нас есть доступ в Интернет, и нажмите «Далее».
Выберите наш интерфейс OpenVPN TUN / TAP, который мы подключаем к Интернету, и нажмите Далее.
Нажмите «Готово» и завершите работу мастера настройки NAT.
Теперь из самой панели Route and Remote Access Management >> Разверните имя нашего сервера >> Разверните IPV4 >> Выберите NAT >> С правой стороны щелкните правой кнопкой мыши имя нашего общедоступного интерфейса и выберите «Свойства».
На вкладке «Службы и порты» >> выберите «Удаленный доступ».
Появятся всплывающие окна, в поле «Частный адрес» укажите наш общедоступный IP-адрес и нажмите «ОК», после чего нажмите «Применить» и «ОК».
Предположим, что порт RDP вашего сервера отличается, вам нужно создать новое правило и разрешить этот порт вместо порта удаленного рабочего стола по умолчанию 3389.
Хорошо, на этом включение NAT на сервере OpenVPN завершено. Переходим к следующему разделу.
Раздел 4. Создайте файлы конфигурации для сервера
В этом разделе мы создаем файл конфигурации OpenVPN Server и вносим в него необходимые изменения.
Сначала откройте проводник Windows, перейдите в папку C: \ Program Files \ OpenVPN \ sample-config и скопируйте файл с именем «server.ovpn» в C: \ Program Files \ OpenVPN \ config.
Теперь откройте файл конфигурации с помощью любого текстового редактора и внесите соответствующие изменения в указанные ниже значения.
ca «C: \\ OpenSSL-Win64 \\ bin \\ demoCA \\ certs \\ ca.crt» сертификат «C: \ OpenSSL-Win64 \ bin \ demoCA \ server.crt» ключ «C: \\ OpenSSL-Win64 \\ bin \\ demoCA \\ certs \\ server.key» dh «C: \ OpenSSL-Win64 \ bin \ demoCA \ certs \ dh5096.пэм » push «redirect-gateway def1 bypass-dhcp» нажмите «dhcp-option DNS 208.67.222.222» push «dhcp-option DNS 208.67.220.220» tls-auth C: \ OpenSSL-Win64 \ bin \ demoCA \ certs \ ta.key 0 шифр данных AES-256-GCM |
---|
Первые четыре значения определяют расположение сертификатов ca, cert, key и параметров Diffie Hellman.
Следующие три строки заставляют клиентов перенаправлять весь свой трафик через сервер OpenVPN после успешного подключения к серверу OpenVPN.
С помощью параметра «tls-auth» включаем межсетевой экран HMAC. Это дополнительный уровень безопасности, используемый для предотвращения DDos-атак.
Последний «шифр данных AES-256-GCM» включает криптографический шифр.
Посмотрите скриншоты ниже, и тогда вы получите представление о том, как эти параметры выглядят в конфигурационном файле server.ovpn.
На этом завершается настройка файла конфигурации OpenVPN. Теперь откройте порт UDP 1194 в брандмауэре Windows, используя приведенную ниже команду powershell.
.CodeMirror .CodeMirror-желоба {цвет фона:; } .fusion-syntax-highlighter-18> .CodeMirror .CodeMirror-льняное число {цвет:; }]]>Копировать в буфер обмена
New-NetFirewallRule -DisplayName «OpenVPN» -Direction inbound -Profile Any -Action Allow -LocalPort 1194 -Protocol UDPТеперь запустите службу сервера OpenVPN, щелкнув раздел Windows Показать скрытые значки >> справа щелкните значок OpenVPN >> Выберите «Подключиться».
Служба OpenVPN запустится автоматически, и вы увидите зеленый цвет внутри значка OpenVPN.Это означает, что наша служба OpenVPN работает.
Другой вариант запуска службы OpenVPN — из раздела служб Windows, который мы описали в разделе 1.
Другой вариант для подтверждения работы службы OpenVPN — взять Windows cmd и перечислить все сетевые интерфейсы. Теперь мы увидим, что интерфейсу OpenVPN TUN / TAP назначен частный IP-адрес 10.8.0.1, который является диапазоном частных IP-адресов по умолчанию, назначенным серверу и клиентам в соответствии с настройками конфигурации.
Раздел 5. Настройте клиент OpenVPN.
В этом разделе мы сначала устанавливаем установщик OpenVPN MSI на клиентском ПК, таком как Windows 10. После этого мы настроим файлы конфигурации клиента OpenVPN.
Наконец, запустите соединение OpenVPN и проверьте его.
Раздел 5 а. Установка MSI клиента OpenVPN
Для установки OpenVPN MSI на клиентском ПК выполните те же действия, которые описаны в Разделе 1. Установщик MSI OpenVPN Community Edition можно использовать как на стороне сервера, так и на стороне клиента.
После установки OpenVPN MSI. Откройте проводник Windows, перейдите в папку C: \ Program Files \ OpenVPN \ sample-config и скопируйте файл с именем «client.ovpn» в C: \ Program Files \ OpenVPN \ config.
После этого переименуйте «client.ovpn» в «client1.ovpn», потому что мы используем этот файл конфигурации клиента для client1.
Переместите уже загруженные файлы ca.crt, client1.crt, client1.key и ta.key в папку C: \ Program Files \ OpenVPN \ config.
См. Снимок экрана ниже для лучшего понимания файловой структуры.
Раздел 5 б. Настроить файл конфигурации клиента.
Перейдите в папку «C: \ Program Files \ OpenVPN \ config» и откройте файл client1.ovpn с помощью любого текстового редактора и определите соответствующие параметры ниже.
выносной 185.210.137.214 1194 ca «C: \ Program Files \ OpenVPN \ config \ ca.crt» сертификат «C: \ Program Files \ OpenVPN \ config \ client.crt» ключ «C: \ Program Files \ OpenVPN \ config \ client.key» удаленный сервер сертификатов tls tls-auth «C: \ Program Files \ OpenVPN \ config \ ta.ключ »1 шифр AES-256-GCM |
---|
В этом первом значении определяется имя хоста / IP и порт сервера OpenVPN
Следующие три значения ключа ca, cert, определяют расположение CA и сертификатов клиента.
Используя «remote-cert-tls server», клиент OpenVPN проверит сертификат сервера extendedKeyUsage.
С помощью параметра «tls-auth» включаем межсетевой экран HMAC. Это дополнительный уровень безопасности, используемый для предотвращения DDos-атак.
Последний «шифр AES-256-GCM» включает криптографический шифр.
На рисунке ниже показано, как эти параметры выглядят в файле конфигурации клиента.
На этом установка клиента завершена. Теперь проверьте VPN-соединение со стороны клиента. Не забудьте также открыть порт UDP 1194 в брандмауэре Windows на стороне клиента.
Раздел 5 с. Тестирование соединения OpenVPN.
В области скрытых уведомлений Windows щелкните правой кнопкой мыши значок OpenVPN и выберите «Подключиться».
Соединение OpenVPN установится автоматически. После успешного подключения попробуйте выполнить эхо-запрос к частному IP-адресу сервера OpenVPN и убедитесь, что он доступен. Также проверьте подключение к Интернету на своем клиентском ПК.
Также на успешно подключенном клиентском ПК OpenVPN, если мы найдем мой IP-адрес в веб-браузере, мы увидим его IP-адрес нашего VPN-сервера. Это означает, что весь наш веб-трафик проходит через сервер OpenVPN.
Заключение.
Мы успешно завершили настройку OpenVPN на Windows server 2019 и успешно подключились с клиентского ПК с Windows 10 OpenVPN. Также мы увидели, как маршрутизировать весь IP-трафик со стороны клиента через сервер OpenVPN. Надеюсь, эта статья будет информативной. Оставьте свои мысли в поле для комментариев.
Поделитесь этой историей, выберите платформу!
[Руководство] Как настроить сервер OpenVPN в Windows 10: OpenVPN
РЕДАКТИРОВАТЬ — это руководство устарело
Предварительные требования
Машина, выделенная для запуска VPN (это может быть сервер, размещенный где-то или просто ПК в гостиной)
Статический IP для сервера (я использовал 192.168.0.3, назначенный моим маршрутизатором)
Выбранный вами порт перенаправлен для работы VPN (у меня есть мусорный маршрутизатор Virgin, но он все еще позволяет мне перенаправлять порт. Я использовал порт 443, поскольку он обычно не блокируется на таких вещах, как корпоративный сетей)
Статический внешний IP-адрес или динамический DNS (я использую ChangeIP для своего, поскольку он бесплатный)
Установка сервера OpenVPN
Создание сертификата CA
Части этого следующего бита взяты из руководства Бобби Аллена
Откройте CMD от имени администратора и вставьте эти команды в
cd "C: \ Program Files \ OpenVPN \ easy-rsa" init-config.летучая мышь блокнот C: \ Program Files \ OpenVPN \ easy-rsa \ vars.bat
При открытии блокнота измените следующее:
установите DH_KEY_SIZE = 2048 -> установите DH_KEY_SIZE = 1024 установить KEY_SIZE = 4096 -> установить KEY_SIZE = 1024
Вы также можете изменить поля сертификата. Они не имеют большого значения, поэтому вы можете вкладывать в них все, что захотите. Я решил поместить свой DDNS в свой, например:
set KEY_COUNTRY = US -> GB установите KEY_PROVINCE = CA -> GB установите KEY_CITY = SanFrancisco -> GB установите KEY_ORG = OpenVPN -> образец.ddns.us установите [email protected] -> [email protected] установите KEY_CN = changeme -> sample.ddns.us установите KEY_NAME = changeme -> sample.ddns.us установите KEY_OU = changeme -> sample.ddns.us установите PKCS11_MODULE_PATH = changeme -> sample.ddns.us установить PKCS11_PIN = 1234 (оставить прежним)
Сохраните и закройте файл блокнота
Затем выполните следующие команды:
cd "C: \ Program Files \ OpenVPN \ easy-rsa" vars.bat все чисто.летучая мышь build-ca.bat
Нажмите Enter через build-ca.bat отдельно от этих полей. Введите «ca» без кавычек для этих
Общее название: ca Имя: ca
Создание сертификата сервера
Затем мы хотим создать ключ сервера. Выполните следующую команду:
build-key-server.bat server
Как и выше, установите «общее имя» и «имя» для этого как «сервер»
Общее имя: сервер Имя: сервер
Нажмите Enter через остальные и введите «y» для подписания и подтверждения сертификата
Сертификат (ы) строительного клиента
Затем нам нужно сделать сертификат для каждого клиента.В моем случае мой единственный клиент — это мой телефон на базе Android, поэтому я просто сделал его и назвал его «Клиент». Вы можете заменить его на понятное имя, если хотите
vars.bat build-key.bat имя-устройства-здесь
Опять же, установите «общее имя» и «имя» для этого как имя вашего клиента
Общее имя: ваше-имя-устройства-здесь Имя: ваше-имя-устройства-здесь
Нажмите Enter до конца и введите «y» для подписания и подтверждения сертификата
Building DH Parameters
Building TLS Key
Выполните эти команды, чтобы сгенерировать ta.ключ (Подробнее об этом можно найти здесь)
cd "C: \ Program Files \ OpenVPN \ bin" openvpn --genkey --secret ta.key переместите "ta.key" "C: \ Program Files \ OpenVPN \ config"
Перемещение файлов сервера в папку конфигурации
Выполните следующие команды, чтобы переместить файлы, созданные для сервера, в папку конфигурации для его запуска
cd "C: \ Program Files \ OpenVPN \ easy -rsa \ keys " переместите "ca.crt" "C: \ Program Files \ OpenVPN \ config" переместить "dh2024.pem "" C: \ Program Files \ OpenVPN \ config " переместите "server.crt" "C: \ Program Files \ OpenVPN \ config" переместите "server.key" "C: \ Program Files \ OpenVPN \ config"
Создание файлов .OVPN
Выполните эти команды, чтобы подготовить файлы .ovpn клиента и сервера
md "C: \ Program Files \ OpenVPN \ clients" cd "C: \ Program Files \ OpenVPN \ sample-config" скопируйте "server.ovpn" "C: \ Program Files \ OpenVPN \ config" скопируйте "client.ovpn" "C: \ Program Files \ OpenVPN \ clients"
Изменение сервера.ovpn
Изменение имени-устройства-здесь.ovpn
Выполните эти команды, чтобы открыть все ваши сертификаты и ключи в Notepad ++
"C: \ Program Files (x86) \ Notepad ++ \ notepad ++. exe" "C: \ Program Files \ OpenVPN \ clients \ client.ovpn" "C: \ Program Files (x86) \ Notepad ++ \ notepad ++. Exe" "C: \ Program Files \ OpenVPN \ config \ ca.crt" "C: \ Program Files (x86) \ Notepad ++ \ notepad ++. Exe" "C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ client.crt" "C: \ Program Files (x86) \ Notepad ++ \ notepad ++.exe "" C: \ Program Files \ OpenVPN \ easy-rsa \ keys \ client.key " "C: \ Program Files (x86) \ Notepad ++ \ notepad ++. Exe" "C: \ Program Files \ OpenVPN \ config \ ta.key"
Замените весь текст в «your-device-name-here.ovpn» текстом из этой конфигурации
Замените «example.ddns.us 443» любым вашим DDNS-адресом или статическим IP-адресом. и порт, который вы используете
Теперь просмотрите все файлы crt и key, заменив «X here» на ключи (это так, чтобы данные из файлов были в формате 1.ovpn файл. Это лучше для совместимости между устройствами. . Я скопировал свой на свой телефон Android с помощью Google Диска (если вы используете Android, установите приложение OpenVPN Connect)
Настройка сервера для разрешения трафика
Тестирование
Отсюда должно быть все. Возможно, вам потребуется перезагрузить сервер, чтобы он заработал.
Я протестировал свой, переключив свой телефон на 4G и подключившись к VPN с помощью «Клиента».OVPN «Я сгенерировал
Я получил это только вчера, поэтому я могу подтвердить, что он работает в моем 4G, но не в других беспроводных сетях
Вы можете узнать, работает ли он легко, поискав свой IP в Google, а затем подключив VPN и поиск в Google снова
Если вам нужна помощь, оставьте комментарий ниже
Подключение OpenVPN к Synology NAS в Windows 7
Первоначально у меня были проблемы с тем, чтобы это работало, но я понял это и решил, что передам это.
В этом руководстве предполагается, что вы пытаетесь настроить VPN-туннель к Synology NAS через WAN с помощью OpenVPN. Хотя соединение PPTP VPN намного проще настроить и не требует стороннего программного обеспечения, OpenVPN оказался значительно более безопасным.
Для этого я использую 64-разрядную версию Windows 7. Хотя расположение файлов, скорее всего, будет отличаться в других ОС, общая конфигурация, скорее всего, будет вам незнакомой.
Базовая конфигурация
Войдите в Synology NAS, используя учетную запись администратора, и установите сервер OpenVPN из Центра пакетов.
После установки запустите VPN-сервер и включите OpenVPN в разделе OpenVPN Server> Настройки> OpenVPN .
Появится следующее всплывающее сообщение, предлагающее убедиться, что порт UDP 1194 открыт:
Если ваш NAS находится за маршрутизатором, убедитесь, что у вас настроена переадресация портов для перенаправления UDP-порта 1194 на NAS.
Если вы используете инструмент Synology Router Config, вы можете настроить переадресацию портов, выбрав Панель управления > Конфигурация маршрутизатора> Создать .Вы найдете настройку порта в встроенных приложениях , как показано ниже :
Если вы настраиваете переадресацию портов в маршрутизаторе, инструмент настройки Synology Router не нужен. Используйте тот или иной вариант, в зависимости от того, что вам больше нравится.
Установить OpenVPN
Загрузите и установите приложение OpenVPN для своей ОС из загрузок сообщества OpenVPN. Установите с использованием значений по умолчанию.
Получение конфигурации с сервера Synology OpenVPN
Перед настройкой клиентского программного обеспечения необходимо загрузить несколько файлов (в частности, файлы конфигурации OpenVPN и сертификат) с Synology NAS.с NAS перейдите на OpenVPN Server > OpenVPN и нажмите Export Configuration. Будет загружен zip-файл, содержащий два необходимых файла плюс третий файл README. Вы можете обратиться к README за инструкциями или просто продолжить чтение.
Настройка клиентского ПО OpenVPN
Откройте проводник Windows и перейдите к «C: Program Files (x86) OpenVPNconfig». Скопируйте файлы openvpn.opvn и ca.crt из файла openvpn.zip, который вы скачали ранее, в этот каталог.
Щелкните правой кнопкой мыши файл openvpn.ovpn, откройте его с помощью блокнота (или вашего любимого текстового редактора) и внесите изменения, описанные ниже:
Измените строку, начинающуюся с удаленного, чтобы указать IP-адрес или имя хоста вашего или вашего сервера. Например, если ваш сервер OpenVPN находится на ovpn.example.com, измените его следующим образом:
удаленный ovpn.example.com 1194
Если IP-адрес вашего хоста часто меняется, раскомментируйте параметр с плавающей запятой, изменив
#floatС
по
поплавок
Или вы можете указать IP-адрес, например:
пульт 192.0,2,0 1194
Кроме того, если вы хотите перенаправить ВСЕ трафик через соединение OpenVPN (настоятельно рекомендуется), раскомментируйте параметр redirect-gateway, изменив
# шлюз перенаправленияС
по
шлюз перенаправления
Подключение к серверу OpenVPN
Щелкните правой кнопкой мыши значок графического интерфейса OpenVPN на рабочем столе и выберите «Запуск от имени администратора». (Вы можете отредактировать ярлык, чтобы всегда запускаться с правами администратора, щелкнув его правой кнопкой мыши, выбрав Свойства , затем Совместимость , затем отметив Запустить эту программу от имени администратора .)
Значок графического интерфейса OpenVPN появится на панели задач и станет красным. Щелкните его правой кнопкой мыши и выберите «Подключиться». Вам будет предложено ввести имя пользователя и пароль (используемые на Synology NAS) для подключения.
Если у вас возникли проблемы с аутентификацией, сделайте учетную запись, к которой вы пытаетесь подключиться, как имеющую доступ к серверу VPN. Посмотрите VPN Server> Privilege , чтобы проверить доступ к учетной записи.
Вот и все! После выполнения этих шагов у вас должно быть работающее туннельное соединение OpenVPN.Если у вас есть предложения, комментарии или отзывы, или вы просто хотите поделиться своими мыслями, сделайте это в разделе комментариев ниже. Спасибо!
Эта запись была опубликована 27 апреля 2012 г., 9:00, в рубрике Без категории. Вы можете следить за любыми ответами на эту запись через RSS 2.0. И комментарии и запросы в настоящий момент закрыты.
Установка OpenVPN Windows 7 — VPN PPTP, SSTP, L2TP и OpenVPN Анонимный доступ VPN в 32 страны
*** Если вы не предпочитаете настраивать вручную, загрузите наш один клик, нет необходимости устанавливать программное обеспечение
и запускать его от имени администратора, щелкнув правой кнопкой мыши и подключившись ***
Распакуйте файл EarthVPN-OpenVPN.zip в нужный каталог и щелкните правой кнопкой мыши загруженный файл с именем openvpn-2.2.2-install.exe, выберите Запуск от имени администратора и следуйте инструкциям по установке ниже:
Если вы видите диалоговое окно «Разрешить следующей программе вносить изменения в этот компьютер?» Щелкните Да или продолжить.
Щелкните кнопку «Далее».
Щелкните кнопку «Я согласен».
Щелкните кнопку «Далее».
Подтвердите папку назначения и нажмите кнопку «Установить».
Если во время установки у вас появляется следующее сообщение, нажмите «Установить».
Щелкните кнопку «Далее».
Снимите флажок «Показать файл Readme» и нажмите кнопку «Готово».
.
Теперь вернитесь в каталог, где находится EarthVPN-OpenVPN.zip был извлечен. Вы увидите каталоги протоколов и портов, как показано на изображении ниже. Щелкните каталог желаемого порта и протокола. Если этот порт протокола заблокирован в вашей сети, вы можете выбрать другие и попробовать. Мы предлагаем использовать OpenVPN UDP. порты для подключения к серверам на других континентах (задержка пинга более 100 мс).
Скопируйте все файлы в директорию config openvpn. Например, если вы ранее согласились установить openvpn в директорию по умолчанию, имена директории config должны быть ниже:
Для 64-битной ОС «C: \ Program Files (x86) \ OpenVPN \ config»
Для 32-битной ОС «C: \ Program Files \ OpenVPN \ config»
Теперь на панели инструментов вы должны увидеть символ OpenVPN (два красных экрана).У вас также должен быть значок графического интерфейса OpenVPN на рабочем столе. Найдите значок графического интерфейса OpenVPN на рабочем столе, щелкните его правой кнопкой мыши и выберите «Свойства» в контекстном меню. Нажмите «Изменить настройки для всех пользователей».
В окне совместимости отметьте Запустить эту программу от имени администратора .
Нажмите ОК, чтобы закрыть окно «Свойства».
Щелкните OK, чтобы закрыть окно свойств графического интерфейса OpenVPN.
Щелкните правой кнопкой мыши значок графического интерфейса OpenVPN (два красных экрана) на панели задач и выберите «Выход», чтобы закрыть графический интерфейс OpenVPN для повторного запуска от имени администратора.
.
Как подключиться
Найдите значок графического интерфейса OpenVPN на рабочем столе и дважды щелкните его, чтобы запустить OpenVPN, или щелкните правой кнопкой мыши значок графического интерфейса OpenVPN на панели задач.