Openvpn можно ли скачать у пользователя файлы. Использование OpenVPN в Android. Создаем клиентский ключ

Когда используешь openvpn клиент под windows существует ограничение на подключение только к одному серверу. Это связано с тем, что при установке openvpn создается только 1 tap адаптер, который обслуживает только одно vpn соединение.

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

TCP/UDP: Socket bind failed on local address : Address already in use (WSAEADDRINUSE)

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

Как оказалось, обойти данное ограничение очень просто. После установки клиента openvpn в windows создается папка:

C:\Program Files\TAP-Windows\bin

В этой папке в том числе есть файл addtap.bat . С помощью этого скрипта, запущенного с правами администратора, можно добавить еще один TAP адаптер в систему. Просто кликаете по нему и все. В сетевых подключениях создается еще один адаптер с названием — TAP-Windows Adapter V9 #2 :

Теперь нужно в папке

C:\Program Files\OpenVPN\config

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

Вот так просто решается задача создания нескольких активных openvpn подключений в windows.

Помогла статья? Есть возможность автора

Онлайн курс "Сетевой инженер"

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные сети, научиться настраивать VPN с шифрованием, разбираться, находить и устранять проблемы в маршрутизации OSPF и BGP, фильтровать и балансировать маршруты, рекомендую познакомиться с онлайн-курсом «Сетевой инженер» в OTUS. Курс не для новичков, для поступления нужны базовые знания по сетям. Обучение длится 4 месяца, после чего успешные выпускники курса смогут пройти собеседования у партнеров. Проверьте себя на вступительном тесте и смотрите программу детальнее по.
  • Подробная статья по .
  • Как настроить под Freebsd.

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

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

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

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

sudo openvpn -config /путь/к/скачанному/файлу

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

Лучшие OpenVPN серверы

1. vpnbook.com

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

Сервис не блокирует никаких сайтов. Серверы OpenVPN доступны на таких портах TCP 80, 443, а из UDP на 53 и 25000. Для доступа необходим логин и пароль. На данный момент это: vpnbook и VMdc6PJ. Торренты не поддерживаются. Можно выбрать один из серверов, которые расположены в разных странах. Скачать файл конфигурации для сервера нужно сервера можно на официальном сайте .

2. freevpn.me

Это еще один полностью бесплатный VPN сервис, который дает вам еще больше свободы. Как и в предыдущем варианте, здесь используется шифрование AES SSL, поэтому ваш провайдер не сможет узнать что вы делаете в сети и какие данные передаете. Вам доступны TCP порты 80, 443 и UDP - 53, 40000. Трафик не ограничен, а пропускная способностью с резервом в 10 Гбит/сек. К тому же здесь разрешена загрузка и раздача торрентов.

Сервер доступа только один, но для доступа к нему необходимо кроме конфигурационного файла логин и пароль. На данный момент логин freevpnme, а пароль RD9PNBE3iNu. Конфигурационный файл и адреса серверов OpenVPN доступны на этой странице .

3. www.freevpn.se

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

Вы можете безопасно подключаться к любым WiFi сетям. Логин freevpnse, пароль для доступа - uJCks3Ze. Конфигурационный файл вы можете скачать на этом сайте .

4. vpnme.me

5. securitykiss.com

Securitykiss - отличный выбор среди других OpenVPN сервисов. Здесь, кроме бесплатного тарифа есть несколько платных планов. Вы можете выбрать один из серверов, расположенных в Великобритании, США, Франции, Германии. Подключение к интернету не ограничено. Логин и пароль пользователя не требуется, нужно только настроить конфигурационный файл для OpenVPN. Инструкцию по установке и настройке вы можете найти на официальном сайте. Сервис использует TCP порт 123.

6. cyberghostvpn.com

Это бесплатный надежный сервис OpenVPN, который позволяет создать шифрованный туннель с шифрованием AES 256-бит. Серверы размещены в 15 странах и всего доступно 58 серверов. Также есть платные тарифные планы, которые работают гораздо быстрее, без рекламы и имеют приложения для Android и iOS.

Выводы

В этой статье мы рассмотрели список серверов OpenVPN, которые можно использовать полностью бесплатно для увеличения своей безопасности. А какие OpenVPN серверы вы используете? Какие вам известны из тех, что нет в списке? Напишите в комментариях!

1) На сайте openvpn.net переходим в раздел Community . Во вкладке Downloads нажимаем на Community Downloads .

2) Выбираем установочный файл в соответствии с разрядностью ОС (32bit /64bit ), установленной на и скачиваем его.

3) Запускаем установочный файл и выполняем шаги установки.

5) В процессе установки OpenVPN программа может запросить подтверждение установки TAP -драйвера. Данный запрос необходимо подтвердить нажатием на кнопку Установить .

6) На этом процесс установки завершается.

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

Рассмотрим пример настройки OpenVPN-соединения с использованием самоподписанного SSL-сертификата.

1) Запускаем командную строку.

Пуск (Start) -> Выполнить (Run) -> cmd

2) Переходим в директорию C:\Program Files\OpenVPN\easy-rsa при помощи команды:

Cd \Program Files\OpenVPN\easy-rsa

3) Запускаем файл init-config.bat в командной строке:

Init-config.bat

После запуска файла будет создан файл vars.bat .

4) Файл vars.bat необходимо открыть в текстовом редакторе (блокнот или Wordpad) и изменить данные для подписи ключей на свои личные. Отредактировать можно информацию в следующих строках:

Set KEY_COUNTRY=US #Страна set KEY_PROVINCE=CA #Область set KEY_CITY=SanFrancisco #Город set KEY_ORG=OpenVPN #Название компании set [email protected] #Контактный e-mail

Также, в случае отсутствия записи вида:

Set OPENSSL_CONF=C:\Program Files\OpenVPN\easy-rsa\openssl-1.0.0.cnf

необходимо её добавить под строкой:

Set KEY_CONFIG=openssl-1.0.0.cnf

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

5) Для создания index и serial файлов, выполняем поочередно следующие команды в командной строке:

Vars clean-all

6) Следующей командой создается СА-ключ, которым будет подписываться будущий SSL-сертификат. После запуска команды будут запрошены значения параметров. Если до этого вы внесли корректировки в файл vars.bat , то на параметры, указанные в 4-м шаге можно отвечать путём нажатия Enter . Исключением является параметр – Common Name . В нём необходимо ввести хостнейм сервера, либо доменное имя.

Build-ca

7) Создаем ключ Диффи-Хельмана.

Build-key-server <имя_сервера>

В нашем случае будет следующая команда:

Build-key-server server

Заполнение производится по аналогии 6-го шага. В поле Common Name в нашем случае указываем server . На оба вопроса «Sign the certificate? » и «1 out of 1 certificate requests certified, commit? » отвечаем согласием путём ввода «y «, и затем нажимаем Enter .

9) Cоздаем отдельный ключ для каждого клиента:

Build-key client1

Вводим необходимые контактные данные. В Common Name указываем client1 .

Переносим файлы из папки /keys в папку /config .

10) Из папки /sample-config копируем файл server.ovpn в папку /config

Настройка файервола

Убеждаемся в том, что порты 5194 и 1194 не заблокированы файерволом, иначе добавляем разрешающие правила на входящий и исходящий трафик:

11) Переходим в Start (Пуск) -> All programs -> Administrative Tools -> Windows Firewall with Advanced Security .

12) Нажимаем в левой части окна на Inbound Rules и в разделе Actions нажимаем на New rule . В результате должен появиться мастер создания правил.

13) Предложенные 5 шагов заполняем следующим образом:

Шаг 1 — Rule type: Port;

Шаг 2 — Protocol and Ports: По умолчанию в настройках OpenVPN сервера используется UDP-протокол. Если данная конфигурация не изменялась, то выбираем в данном шаге UDP . В противном случае — TCP . В поле Specific local ports указываем 5194 .

Шаг 3 – Action: Allow the connection;

Шаг 4 – Profile: Оставляем галочки включенными.

Шаг 5 – Name: Указываем название правила на своё усмотрение и нажимаем Finish .

14) Аналогичным образом добавляем правило для порта 1194 , после чего переходим в Outbound Rules и создаем два правила, идентичные тем, которые были созданы в Inbound .

Запуск сервера

15) Запускаем сервер OpenVPN путём нажатия правой кнопкой мыши на файле server.ovpn Sarting OpenVPN on this config file .

16) В результате появится командная строка, в которой будет отображен процесс запуска VPN-сервера. Если по окончанию будет выведена строка Initialization Sequence Completed , значит запуск прошел успешно.

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

Следующие шаги предполагают наличие уже установленного OpenVPN-клиента.

1) Из папки /sample-config на сервере скачиваем на компьютер файл client.ovpn в папку OpenVPN/config/

2) Из папки /config на сервере скачиваем файлы ca.crt , client1.crt , client1.key на компьютер в папку OpenVPN/config/

3) Открываем скачанный файл client.ovpn в текстовом редакторе и вносим следующие корректировки:

В записи remote my-server-1 1194 заменяем my-server-1 на IP-адрес сервера. В cert client.crt изменяем client.crt на client1.crt В key client.key изменяем client.key на client1.key

После этого сохраняем изменения.

4) Запускаем OPENVPN-GUI . В системном трее нажимаем правой кнопкой на иконке OpenVPN и в контекстном меню выбираем пункт Edit config .

Если открывшаяся конфигурация не соответствует файлу client.ovpn , то приводим настройки в соответствующий вид. Если соответствует, то закрываем редактор, вновь нажимаем правой кнопкой на иконке в системном трее и выбираем пункт Connect . Если в появившемся окне процесса соединения отобразятся строки:

Initialization Sequence Completed MANAGEMENT: >STATE: ********,CONNECTED,SUCCESS

Возможные ошибки

failed to update database TXT_DB error number 2

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

Решение: указание другой контактной информации.

WARNING: can"t open config file: /etc/ssl/openssl.cnf

Причина: некорректно установленный путь в переменной окружения OPENSSL_CONF .

Решение: необходимо объявить данную переменную в файле vars.bat , как указано в шаге 4 настройки на стороне сервера.

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

И так нам нужно организовать VPN канал между двумя офисами. Сеть Офис 1 (назовем его С_ОФ1) и Сеть Офис 2 (назовем его С_ОФ2).

Скажу сразу что в моем случае OpenVPN в обоих офисах установлен на Windows 7.

С_ОФ1 включает:
Машина куда ставим OpenVPN Server имеет 2 сетевых интерфейса.
Также на ней установлен прокси-сервер который раздает инет в локалку, тем самым являясь для всех машин в локалке основным шлюзом(192.168.0.100)
192.168.0.100 смотрит в сеть
192.168.1.2 смотрит в мир через роутер. Роутер имеет статический IP скажем 111.222.333.444. На роутере сделан проброс порта 1190 (в моем случае порт 1190 проброшена на 192.168.1.2)
Пользователь в сети: 192.168.0.50

С_ОФ2 включает:
Машина куда ставим OpenVPN Client имеет 2 сетевых интерфейса.
Также на ней установлен прокси-сервер который раздает инет в локалку, тем самым являясь для всех машин в локалке основным шлюзом(172.17.10.10)
172.17.10.10смотрит в сеть
192.168.1.2 смотрит в мир через роутер.
Пользователь в сети: 172.17.10.50

Задача: Пользователь С_ОФ1(192.168.0.50) должен видеть расшареные ресурсы на Пользователе С_ОФ2 (172.17.10.50) и наоборот.

Приступаем к настройке

Скачиваем OpenVPN с в соответствии с разрядностью системы.

Запускаем установку, на 3-м шаге активируем неактивные пункты.

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

В процессе установки в систему инсталлируется виртуальный сетевой адаптер TAP-Win32 Adapter V9 и, соответственно, драйвер к нему. Этому интерфейсу программа OpenVPN как раз и будет назначать IP адрес и маску виртуальной сети OpenVPN. В нашем случае ему назначен адрес 10.10.10.1с маской 255.255.255.0 на сервере С_ОФ1 и 10.10.10.2 с аналогичной маской на клиенте С_ОФ2.

Переименуем его в "VPN"


В директории "C:\OpenVPN" следует сразу же создать дополнительно папку ssl (здесь мы будем хранить ключи аутентификации) папку ccd (здесь будут находится конфигурация настроек сервера для клиента).

В папке easy-rsa создаем файл vars.bat , данный пакетный файл будет задавать переменные для сеанса генерации сертификатов, в той части что касается организации и расположения заполняем своими данными.

Set HOME=C:\OpenVPN\easy-rsa
set KEY_CONFIG=openssl-1.0.0.cnf
set KEY_DIR=C:\OpenVPN\ssl
set KEY_SIZE=1024
set KEY_COUNTRY=RU
set KEY_PROVINCE=Stavropol
set KEY_CITY= Stavropol
set KEY_ORG=ServerVPN
set KEY_EMAIL=admin@localhost
set KEY_CN=test
set KEY_NAME=test
set KEY_OU=test
set PKCS11_MODULE_PATH=test
set PKCS11_PIN=1234

Запускаем командную строку от имени администратора.


Переходим по пути C:\OpenVPN\easy-rsa, набрав для перехода в командной строке команду

Cd C:\OpenVPN\easy-rsa

Запускаем vars.bat :

Теперь запускаем build-ca.bat . Так как вся информация о сервере у нас уже заполнена, все оставляем без изменений:

после этого у нас в папке ssl появится два файла ca.crt и ca.key .

Запускаем build-dh.bat :

в результате у нас в папке ssl появится файл dh1024.pem.

Создаем серверный ключ, для этого вводим команду:

Build-key-server.bat ServerVPN

где "ServerVPN " это название нащего VPN сервера, как в моем случае,

Важно! Указываем параметр "commonname" - пишем имя нашего VPN сервера. Все остальные параметры оставляем по умолчанию, на все вопросы отвечаем yes

в результате у нас в папке ssl появятся файлы ServerVPN.crt , ServerVPN.csr , ServerVPN.key.

Приступаем к формированию клиентских ключей.

Выполняем команду:

Build-key.bat UserVPN_1

где "UserVPN_1 " имя нашего клиента.

Важно! Указываем параметр "commonname" - пишем имя нашего VPN клиента(UserVPN_1). Все остальные параметры оставляем по умолчанию, на все вопросы отвечаем yes

В результате у нас в папке ssl появятся файлы UserVPN_1.crt , UserVPN_1.csr , UserVPN_1.key .

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

Build-key.bat UserVPN_2
build-key.bat UserVPN_3

Генерация ключа tls-auth (ta.key) для аутентификации пакетов, для этого переходим в корневую папку OpenVPN:

и выполняем команду:

Openvpn --genkey --secret ssl/ta.key

в результате в папке ssl плучим файл ta.key .

Приступаем к созданию конфига сервера. В папке config создаем файл OpenVPN.ovpn :

#Порт для работы OpenVPN
port 1190


proto udp

#Тип интерфейса
dev tun

#Имя интерфейса
dev-node "VPN"

#Сертификат для шифрования подключения
dh C:\\OpenVPN\\ssl\\dh1024.pem


ca C:\\OpenVPN\\ssl\\ca.crt

#Сертификат сервера
cert C:\\OpenVPN\\ssl\\ServerVPN.crt

#ключ сервера
key C:\\OpenVPN\\ssl\\ServerVPN.key

# Защита от DOS атак (для сервера, после пути к ключу, ставим 0 а для клиента 1)
tls-server
tls-auth C:\\OpenVPN\\keys\\ta.key 0
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450

#Диапазон IP адресов для VPN сети
server 10.10.10.0 255.255.255.0


cipher AES-256-CBC

#Логи

#Каталог, в которой лежит файл с названием нашего клиента, в моем случае UserVPN_1 без расширения, и в нем записать команды, которые будут выполнятся на клиенте:
client-config-dir "C:\\OpenVPN\\ccd"


verb 3


mute 20

# Максимальное количество одновременно подключенных клиенты мы хотим разрешить
max-clients 2

#Время жизни неактивной сессии
keepalive 10 120

#Разрешаем клиентам видеть друг друга
client-to-client

#Включаем сжатие
comp-lzo
persist-key
persist-tun

#Маршруты добавляются через.exe если без него, то не у всех прописываются маршруты
route-method exe

#Задержка перед добавлением маршрута
route-delay 5

#Команда которая сообщает клиентам что за сервером локальная сеть с адресами 192.168.0.0 255.255.255.0
push "route 192.168.0.0 255.255.255.0"

#Прописывает маршрут на сервере чтобы видеть сеть за клиентом
route 172.17.10.0 255.255.255.0 10.10.10.2

#Шлюз
route-gateway 10.10.10.1

# каждому клиенту выдается по 1 адресу, без виртуальных портов маршрутизатора
topology subnet

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

#Присваиваем клиенту постоянный IP 10.10.10.2
ifconfig-push 10.10.10.2 255.255.255.0

#сообщаем серверу что за клиентом сеть 172.17.10.0
iroute 172.17.10.0 255.255.255.0

#если раскоментировать следующую строку, то клиент будет отключен (на случай если нужно этого клиента отключить от сервера, а остальные будут работать)
# disable

Создаем конфиг клиента.

#Говорим, чтобы клиент забирал информацию о маршрутизации с сервера (push опции)
client

#Порт для работы OpenVPN
port 1190

#Указываем по какому протоколу работает OpenVPN
proto udp

#Тип интерфейса
dev tun

#Имя интерфейса
dev-node "VPN"

# Адрес сервера, к которому подключаемся
remote 444.333.222.111 1190

#защита
remote-cert-tls server

#Сертификат центра сертификации
ca C:\\OpenVPN\\ssl\\ca.crt

#Сертификат сервера
cert C:\\OpenVPN\\ssl\\ UserVPN_1.crt

#ключ
key C:\\OpenVPN\\ssl\\ UserVPN_1.key

# Защита от DOS атак
tls-auth C:\\OpenVPN\\keys\\ta.key 1
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
ping-restart 60
ping 10

#Включаем сжатие
comp-lzo
persist-key
persist-tun

# Выбор криптографического шифра
cipher AES-256-CBC

#Логи
status C:\\OpenVPN\\log\\openvpn-status.log
log C:\\OpenVPN\\log\\openvpn.log

#Уровень отладочной информации
verb 3

#Количество повторяющихся сообщений
mute 20

Устанавливаем на клиенте OpenVPN, предаём ему ca.crt , UserVPN_1.crt , UserVPN_1.key , ta.key .

Настраиваем файрволы и антивирусы на клиенте и на сервере для беспрепятственного прохождения пакетов. Описывать не буду все зависит от установленных антивирусов и файрволов.

После всего этого запускаем наш сервер и клиент.

Если все правильно сделали наш сервер получит IP 10.10.10.1 и подключится к нему клиент и получит IP 10.10.10.2 . И так подключение у нас состоялось теперь сервер и клиент пингуют друг друга по IP нашей VPN сети, то есть 10.10.10.1 и 10.10.10.2.

Для того чтобы пинг шел по внутренним адресам наших С_ОФ1 и С_ОФ2 нужно включить службу Маршрутизации и удаленного доступа .


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

После этого мы сможем пинговать внутренние IP сервера и клиента (172.17.10.10 клиент и 192.168.0.100 сервер).

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

При этом все сети работают в штатном режиме. Лично меня этот крест раздражает и иногда сбивает с толку.

Есть второй способ как сделать видимыми внутренние IP сетей наших сервера и клиента.

Для этого заходим в реестр, открываем ветку реестра:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\TcpIP\Parameters

Находим параметр и меняем значение: IPEnableRouter типа REG_DWORD значение 1 .

Не забываем перезагрузить машину, чтобы настройки вступили в силу!

Это нужно проделать и на сервере, и на клиенте.

Итак мы пингуем наши сети по внутренним IP, а так как у нас и сервер и клиент для своих сетей являются шлюзами, то и машины из сети 1 могут видеть машины из сети 2 и наоборот. то есть Пользователь С_ОФ1(192.168.0.50) может видеть расшаренные папки Пользователя С_ОФ2 (172.17.10.50) и наоборот.

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

Пример для С_ОФ1:

Route -p 172.17.10.0 255.255.255.0 192.168.0.100 (машина где установлен OpenVPN)

Пример для С_ОФ2:

Route -p 192.168.0.0 255.255.255.0 172.17.10.10(машина где установлен OpenVPN)

в моем случае этого не понадобилось.

Для автоматического запуска сервера и клиента нам нужно включить службу OpenVPN Service

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

Дополнительная защита

Как известно в OpenVPN есть возможность аутентификации по сертификатам, как описано выше, а так же по логину и паролю, но можно еще и объединить их вместе. Насколько мне известно только в Linux есть возможность штатными средствами настроить аутентификацию по логину и паролю, но в Windows это тоже можно решить. Для этого в папке config создаем файл auth.vbs и пишем в него следующее

"VBscript auth.vbs для аутентификации в OpenVPN - auth-user-pass-verify auth.vbs via-file "(c) 2007 vinni http://forum.ixbt.com/users.cgi?id=info:vinni "Support: http://forum.ixbt.com/topic.cgi?id=14:49976 " в скрипте производится сравнение имени пользователя без учёта регистра. " Если нужно иначе - уберите UCase(...) в 2 или 4 местах On Error Resume Next " открываем файл, имя которого передано OpenVPN-ом в скрипт через параметр Set fso = CreateObject("scripting.filesystemobject") Set CurrentUserPasswordFile = fso.OpenTextFile(WScript.Arguments(0),1) "1 = for reading if Err.Number<>0 Then WScript.Quit(1) " читаем из этого файла 2 строки - имя и пароль, которые ввёл пользователь "на том конце" if CurrentUserPasswordFile.AtEndOfStream then WScript.Quit(1) UserName=CurrentUserPasswordFile.ReadLine if CurrentUserPasswordFile.AtEndOfStream then WScript.Quit(1) Password=CurrentUserPasswordFile.ReadLine CurrentUserPasswordFile.Close " открываем переменную окружения common_name (это CN предъявленного клиентом сертификата) " и сравниваем её с введенным именем пользователя. " если это сравнение не нужно, то следующие 2 строки удалить или закомменировать CurrentCommonName = CreateObject("Wscript.Shell").ExpandEnvironmentStrings("%common_name%") if UCase(CurrentCommonName) <> UCase(UserName) then WScript.Quit(1) " открываем наш файл с базой логинов и паролей " по умолчанию это Users.pw в текущем каталоге Set UserPasswordFileBase = fso.OpenTextFile("Users.pw",1) "1 = for reading if Err.Number<>0 Then WScript.Quit(1) " читаем в цикле пары строк, пропуская пустые МЕЖДУ ЭТИМИ ПАРАМИ, " и сравниваем их с тем, что ввёл пользователь. Do while not(UserPasswordFileBase.AtEndOfStream) NextUserName=UserPasswordFileBase.ReadLine if Err.Number<>0 Then WScript.Quit(1) if NextUserName<>"" then " если имя пользователя надо сравнивать с учётом регистра, то удалите здесь UCase(...) if UCase(UserName)=UCase(NextUserName) then if Password=UserPasswordFileBase.ReadLine then " если имя и пароль совпали с парой из базы, то завершаем скрипт с результатом 0 " так нужно для OpenVPN"a, это признак успешной аутентификации UserPasswordFileBase.Close WScript.Quit(0) end if else UserPasswordFileBase.ReadLine end if end if Loop " если поиск завершился безуспешно, то завершаем скрипт с результатом 1 " так нужно для OpenVPN"a, это признак НЕуспешной аутентификации UserPasswordFileBase.Close WScript.Quit(1)

Так же в папке config содаем файл Users.pw туда пише логин и пароль нашего клиента

UserVPN_1
123456

Если несколько клиентов то:

UserVPN_1
123456

UserVPN_2
365214

UserVPN_3
14578

Дальше нужно в конфиге клиента прописать строку auth-user-pass , теперь когда клиент будет подключаться к серверу у него будет выплывать окно авторизации где нужно ввести логин и пароль, который вы назначили ему в Users.pw ,их нужно будет сообщить клиенту.

У меня настроено что имя пользователь(логин) соответствует имени клиента в сертификате, то есть UserVPN_1 . но можно задать и другое имя отличное от имени в сертификате, для этого нужно смотреть настройки в auth.vbs .

" открываем переменную окружения common_name (это CN предъявленного клиентом сертификата)
" и сравниваем её с введенным именем пользователя.
" если это сравнение не нужно, то следующие 2 строки удалить или закомменировать

CurrentCommonName = CreateObject("WscrIPt.Shell").ExpandEnvironmentStrings("%common_name%")
if UCase(CurrentCommonName) <> UCase(UserName) then WScrIPt.Quit(1)
WScrIPt.Echo "Debug: CurrentCommonName= " & CurrentCommonName

А для того чтобы аутентификация работала и по сертификату, и по логину с паролем, но при этом не выплывало окно авторизации пользователя, так как это будет задерживать подключение клиента к серверу если, например, у вас включена автоматическая загрузка службы OpenVPN Service (как настроено у меня) или вы просто не хотите каждый раз вводить логин и пароль, в этом случае на клиенте в папке ssl создаем файл pass.txt и пишем в него наш логин и пароль вот так:

UserVPN_1
123456

а в конфиге клиента меняем строку auth-user-pass на auth-user-pass C:\\OpenVPN\\ssl\\pass.txt .

Теперь я включаю машину где установлен OpenVPN -Server, запускается служба и сервер VPN автоматически поднимается. Клиент запускает машину и у него также проходит автоматическое подключение к моему серверу. Теперь можно заходить в общие папки или по RDP работать, например, в 1С, установленной в другой организации.

контакты [email protected]

  • Теги:

Please enable JavaScript to view the

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

Интернет вчера и сегодня

Еще пятнадцать лет назад никто и представить себе не мог, насколько сильно мы привяжемся к глобальной паутине. Появилась новая болезнь - интернет-зависимость, от которой лечат так же недавно появившиеся специалисты. Открылся ранее неведомый необъятный рынок сбыта. Расширились горизонты для маркетинга и рекламы. Знания и технологии стали доступны, как никогда раньше. Чем сегодня занимаются люди в сети? Кто-то публикует интересные мысли в формате блога, кто-то ведет бизнес, а кто-то проходит онлайн-обучение в престижном вузе. У каждого свои интересы, но есть общие понятия и явления, с которыми рано или поздно сталкивался практический любой пользователь. Это вирусы и шпионские программы, защитное ПО и прокси-сервера, социальные сети, VPN. Именно о последнем и пойдет речь в статье.

Что такое VPN

VPN - это сеть внутри сети. Дополнительное соединение, которое создается поверх уже имеющегося. Чаще всего это обособленное пространство внутри интернета, островок защищенной информации в океане свободного доступа. Чем же отличается зона или туннель VPN? Прежде всего тем, что доступ к нему имеют только аутентифицированные пользователи, заранее добавленные в список клиентов VPN-сервиса. Кроме того, весь трафик внутри передается в зашифрованном виде и недоступен извне. А еще VPN обеспечивает анонимность и помогает обходить настройки прокси, если таковые имеются. Разумеется, каждому хотелось бы защищенности, а значит, услуга сия достаточно востребованна. Закон рынка, гласящий, что благодаря растущему спросу увеличивается и количество предложений, все еще в силе, поэтому выбор поставщиков услуги очень широк. Но мы рассмотрим общее на примере частного. Настройка OpenVPN - достаточно популярного решения туннелирования - и будет образцом работы с технологией в целом.

Преимущества

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

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

OpenVPN: настройка клиента

Обычно сервисы такого плана принято разворачивать на *nix-системах: Gentoo, CentOS, Ubuntu и т. д. Однако в случае с OpenVPN (тем более с клиентской частью) нам не суть важно, Ubuntu ли установлена на компьютере, где будет выполняться настройка OpenVPN, Windows 7 ли: как минимум первоначальные шаги не будут сильно отличаться. Для удобства выберем достаточно распространенную, привычную и удобную ОС от Windows. Дистрибутив программы можно без проблем найти в свободном доступе. Скачиваем на компьютер последнюю версию клиента OpenVPN, запускаем инсталлятор и соглашаемся по очереди со всем, что он рекомендует. В окне выбора компонентов необходимо отметить галочкой нужные. После завершения установки имеет смысл дополнительно проинсталлировать пользовательский интерфейс OpenVPN GUI, что значительно облегчит вам процесс настройки и дальнейшего управления клиентом. Для корректной работы OpenVPN должен запускаться в Чтобы этого добиться, нужно всего лишь поставить галочку в свойствах ярлыка. На этом процесс развертывания VPN-клиента завершен. Осталось только получить от администратора файл с ключами и сертификатами, а также конфигурационный файл для вашего подключения.

Следующий шаг - настройка сервера OpenVPN. Windows поддерживает не только клиентскую, но и серверную часть приложения.

OpenVPN -сервер на Windows

Серверная часть OpenVPN устанавливается так же, как и клиент: скачиваете дистрибутив и поочередно соглашаетесь с предложенным. Но здесь вы уже сами будете выступать в качестве администратора. Соответственно, вносить изменения в конфигурационный файл, генерировать ключи и сертификаты вы должны будете самостоятельно. Но не нужно пугаться: настройка OpenVPN сервера на Windows - задача не из невыполнимых, это касается даже новичков. Операции выполняются посредством командной строки. Точный текст команд вы найдете в любом установочном гиде OpenVPN. Если все сделано правильно, состояние нового, созданного в системе после установки VPN-сервера, виртуального адаптера изменится с «Кабель не подключен» на «Подключено». В свойствах адаптера вы увидите настроенный адрес внутренней сети.

OpenVPN вне компьютера

Мы рассмотрели с вами варианты развертывания клиентской и серверной части OpenVPN на операционную систему Windows. Учитывая кроссплатформенность программы, ее можно устанавливать и на другие версии ОС (Debian, Linux Mint и т. д.). Что еще, кроме стационарного компьютера, может выступать в роли клиента или сервера VPN? Им может служить Активировав там службу рассматриваемого нами сервера, вы сможете подключиться VPN-клиентом непосредственно к накопителю. Большинство маршрутизаторов также поддерживают OpenVPN. С бурным развитием информационных технологий все современные устройства выпускаются как можно более функциональными. Это не просто принтер, но 3 в 1, совмещающий в себе и сканер, и копировальный аппарат. Это не только мобильный телефон, но и фотоаппарат, плейер, GPS-навигатор, считыватель QR-кодов и многое другое. Если встроенного функционала не хватает, постоянно обновляющееся содержимое магазинов приложений поможет расширить возможности карманных устройств. Поэтому нет ничего необычного в том, чтобы выбрать новое поле деятельности для установки OpenVPN. Windows - уже пройденный этап, теперь речь пойдет о маршрутизаторе Mikrotik.

Развертывание OpenVPN на Mikrotik

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

Немного о VPN-серверах вместо заключения

Есть высказывание о том, что ни одна технология не завоюет широкого признания, пока обычный пользователь или системный администратор не сможет ее легко установить. Желательно, чтобы это было в рамках одного мастера, где нужно просто нажимать на кнопку "Далее". В действительности же у каждого продукта будут свои поклонники, независимо от того, какие действия придется предпринять перед непосредственным использованием. Настройка OpenVPN под Windows требует командной строки, но при этом не отличается особой сложностью. В то время как встроенные инструменты операционной системы или некоторые отдельные решения действительно устанавливаются и настраиваются за несколько кликов мышкой. Но за 12 лет OpenVPN не исчез, а продолжил развиваться, и до сих пор остается востребованным продуктом, качественным и некапризным.