Как настроить удаленный доступ через openvpn

Содержание
  1. Настройка OpenVPN клиента
  2. Установка
  3. Windows
  4. Linux CentOS
  5. Linux Ubuntu
  6. Android
  7. Настройка
  8. Пример конфигурационного файла
  9. Параметры конфигурационного файла
  10. Сертификаты
  11. ПРИМЕР 1: УДАЛЕННЫЙ РАБОЧИЙ СТОЛ WINDOWS ЧЕРЕЗ OPENVPN
  12. Результат: удаленный доступ к рабочему столу Windows с серым IP через OpenVPN и RDP
  13. Исходные данные
  14. Шаг 1. Установка программ OpenVPN на оба компьютера
  15. Результат: OpenVPN установлен на оба компьютера
  16. Шаг 2. Создаем туннели на сайте VPNKI
  17. Результат: Туннели созданы, процесс OpenVPN на сервере запущен, скачан профиль подключения на оба компьютера
  18. Шаг 3. Подключение VPN туннелей
  19. Результат: Оба туннеля подключены
  20. Шаг 4. Пинг удаленного компьютера
  21. Результат: Пинг удаленного компьютера успешен
  22. Шаг 4. Доступ к удаленному рабочему столу компьютера
  23. Результат: Вы получили доступ к удаленному рабочему столу Компьютера 2
  24. Вы успешно прошли все пункты и получили удаленный доступ к рабочему столу Windows на удаленном компьютере!

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

В данной инструкции подробно описан процесс настройки клиента OpenVPN на примере операционных систем Windows и Linux. Также, с ее помощью можно настроить скиента на Android.

Установка

Windows

Заходим на официальную страницу загрузки openvpn и скачиваем клиента для нужной Windows:

Запускаем скачанный файл и устанавливаем программу, нажимая «Далее».

Linux CentOS

Устанавливаем репозиторий EPEL:

yum install epel-release

yum install openvpn

Linux Ubuntu

apt-get install openvpn

Android

Установка выполняется из Google Play. Набираем в поиске OpenVPN Connect — нажимаем установить и принимаем условия.

Настройка

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

В системах Windows создаем файл config.ovpn в папке %programfiles%\OpenVPN\config.

* имя файла может быть любым, расширение должно быть .ovpn.

Для создания конфигурационного файла в Linux выполняем команду:

* чтобы служба openvpn автоматически выполняла соединение, необходимо, чтобы конфигурационный файл назывался client.conf.

Пример конфигурационного файла

client
dev tun
proto udp
remote 192.168.0.15 443
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
dh dh2048.pem
tls-client
tls-auth ta.key 1
float
keepalive 10 120
comp-lzo
verb 0

Параметры конфигурационного файла

Параметр Значения Описание
client Строка говорит о том, что конфигурационный файл описывает клиентское подключение (программа сама устанавливает соединение, а не ждет, как сервер).
dev tap или tun Выбор виртуального сетевого драйвера. TUN — сетевой уровень модели OSI, оперирует IP-пакетами. TAP — эмулирует Ethernet устройство и работает на канальном уровне модели OSI, оперируя кадрами Ethernet. Настраивая OpenVPN клиента, в большинстве случаев, необходимо выбирать tun. TAP необходимо использовать для работы определенных сервисов, например DHCP.
dev-node любая строка Параметр используется в системах Windows в случаях, если имеется несколько сетевых интерфейсов. Значение этого параметра должно содержать название сетевого подключения, через который должен работать OpenVPN.
proto udp или tcp Указывает, какой протокол использовать для передачи данных. В большинстве случаев, лучше использовать UDP, так как данный протокол создает меньше нагрузки на сеть.
remote VPN-сервер и порт Задает сервер, к которому должен подключаться клиент, а также сетевой порт (по умолчанию 1194), на котором OpenVPN принимает запросы. Можно указать несколько строк.
remote-random Если указано несколько строк remote, данный параметр говорит, что необходимо подключаться к удаленным серверам в случайном порядке.
resolv-retry количество секунд или infinite Используется в тех случаях, когда в качестве сервера указано доменное имя. Параметр задает время в секундах для повторного переподключения, если не удалось узнать имя сервера. infinite — держать связь с сервером постоянно.
nobind Клиент использует динамический порт для подключения.
user учетная запись Задает определенного пользователя для работы клиента (только для UNIX-систем).
group группа Задает определенную группу для работы клиента (только для UNIX-систем).
persist-key Не перечитывает ключи при перезагрузке сервиса OpenVPN.
persist-tun Не перечитывает параметры туннеля при перезагрузке сервиса OpenVPN.
http-proxy сервер прокси и порт Использовать прокси-сервер для подключения.
http-proxy-retry Переподключаться к прокси-серверу, если связь была разорвана.
http-proxy-timeout количество секунд Время, через которое выполнять попытки переподключения к прокси-серверу.
mute-replay-warnings Параметр стоит задавать при использовании беспроводного соединения. Он отключит дублирование предупреждений пакетов.
ca пут к сертификату Корневой сертификат удостоверяющего центра. Генерируем на сервере.
cert пут к сертификату Открытый ключ клиента. Генерируем на сервере.
key пут к сертификату Закрытый ключ клиента. Генерируем на сервере.
dh пут к сертификату Ключ с алгоритмом Diffie-Hellman (Диффи-Хеллмана).
remote-cert-tls сервер Исключает возможность mitm атаки, включая верификацию сертификата сервера.
tls-client Указание на то, что это клиент TLS.
tls-auth ta.key 1 Дополнительный уровень аутентификации посредством ключа TLS.
float Удаленный хост может менять IP-адрес в процессе соединения, при этом последнее не будет разорвано.
keepalive секунд1 секунд2 Пинговать каждые секунд1 сервер и если в течение секунд2 не будут получены ответные пакеты, перезапустить подключение.
cipher алгоритм Указывает алгоритм шифрования. Примеры: AES-256-CBC, AES-128-CBC, BF-CBC, DES-EDE3-CBC.
comp-lzo Использовать сжатие.
verb число от 0 до 9 Уровень детализации лога. 0 отключает отладочную информацию.
mute число Указывает сколько лог-сообщений может отображаться для каждой категории события.
auth-user-pass ничего или путь к файлу Говорит клиенту, что необходима аутентификация. Если не указан путь к файлу, клиент выкинет окно для авторизации, иначе прочитает данные из файла.
ipchange команда или путь к скрипту Выполняет команду при смене IP.
connect-retry секунд Переподключиться к серверу через указанное количество секунд, если соединение было разорвано.
connect-retry-max число Сколько раз повторять соединение, если оно было разорвано.
shaper байт Задает максимальную скорость передачи данных для исходящего трафика.
tun-mtu число Задает MTU.
status путь к файлу Путь к фалу хранения статуса.
log путь к файлу Путь к лог-файлу.
askpass путь к файлу Путь к файлу с паролем для приватного ключа (private key password).

Наиболее полный и актуальный список параметров для OpenVPN можно получить командой openvpn —help (в Linux и Windows).

Сертификаты

Клиентские сертификаты генерируются на стороне сервера. Процедура следующая.

Источник

ПРИМЕР 1: УДАЛЕННЫЙ РАБОЧИЙ СТОЛ WINDOWS ЧЕРЕЗ OPENVPN

Результат: удаленный доступ к рабочему столу Windows с серым IP через OpenVPN и RDP

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

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

PS: Если вы читаете этот раздел уже после «некоторых экспериментов», то имеет смысл очистить все настройки на сайте в разделе «Дополнительно», а также на ваших устройствах и начать все заново.

В этом примере приведены вымышленные данные. В вашем случае, используемые адреса устройств будут другими.

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

Исходные данные

Итак, мы хотим получить удаленный доступ к компьютеру с ОС Windows с другого компьютера с ОС Windows через Интернет. Будем считать, что оба компьютера обладают «серыми» адресами от операторов связи и напрямую из сети Интернет не доступны.

Давайте представим, что мы хотим получить удаленный доступ с Компьютера 1 (дом) на Компьютер 2 (офис). Для этого мы будем использовать подключения двух компьютеров с протоколом OpenVPN, систему VPNKI и штатное средство Windows для удаленного доступа к компьютеру под названием «Подключение к удаленному рабочему столу».

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

Шаг 1. Установка программ OpenVPN на оба компьютера

Результат: OpenVPN установлен на оба компьютера

Шаг 1.0. Скачайте с сайта проекта OpenVPN последнюю версию этой программы.

Например нас интересует версия для Windows7/8/8.1 и т.д..

Шаг 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

*** Если вдруг что-то не получилось, обращайтесь на Форум

Источник

Читайте также:  Если не работает стиральная машина самсунг причины
Оцените статью