пятница, 30 июня 2017 г.

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

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

Как работает OpenVPN?

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

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

Сначала рассмотрим как подключиться к OpenVPN из Ubuntu или любого другого Linux дистрибутива через терминал. Допустим, вы скачали файл конфигурации сервера .ovpn и хотите подключиться к этой сети. Для этого нужно установить клиент openvpn:
$ sudo apt install openvpn
А далее для подключения к сети достаточно выполнить команду openvpn и передать ей в параметры нужный вам файл:
$ sudo openvpn ~/Загрузки/config.ovpn
После этого окно терминала закрывать нельзя и если OpenVPN сервер был настроен правильно, то он уже передал на машину правильные маршруты и ваш трафик идет через виртуальную сеть. Давайте посмотрим маршруты:
$ sudo ip route
Здесь стоит обратить внимание на две строки:
0.0.0.0/1 via 192.168.243.1 dev tun0
169.254.0.0/16 dev enp2s0 scope link metric 1000
Первая направляет весь трафик системы на интерфейс tun0, а вторая более интересная, она разворачивает трафик ip сети 169.254.0.0 на реальный интерфейс. Если ее не будет, то весь трафик будет идти на tun0, в том числе и трафик от программы OpenVPN, который уже прошел этот интерфейс и получиться петля. Чтобы разорвать подключение в таком варианте достаточно нажать Ctrl+C в терминале, где вы запустили openvpn.
Второй способ использовать OpenVPN в Linux - это установить плагин openvpn для NetworkManager и подключатся с помощью него. Для установки этого пакета в Ubuntu выполните такую команду:
$ sudo apt-get install network-manager-openvpn
Теперь откройте апплет Network Manager, разверните "Соединение VPN" и выберите"Настроить соединение":
В открывшемся окне нажмите кнопку "+":
Затем выберите надпись "VPN".
Далее, вы можете взять "OpenVPN", но нас будет интересовать пункт "Импорт из файла".
Далее, просто выберите файл *.ovpn, который вы скачали на сервере. Осталось нажать кнопку "Добавить". Дальше вы можете активировать нужную сеть с помощью переключателя в окне настроек или аплета:
Снова смотрим таблицу маршрутизации:
$ sudo ip route
В целом, NetworkManager создает другие правила, но они работают так же. Настройка клиента openvpn на ubuntu завершена.

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

Вы можете пользоваться OpenVPN на любой платформе, в том числе и на Android. Для устройств было выпущено официальное приложение OpenVPN Connect. С помощью него вы можете подключиться к сети, как и в предыдущем варианте, с помощью ovpn файла. Вы можете установить это приложение из Google Play:
Откройте приложение, нажмите на кнопку меню, затем выберите "Import" -> "Import profile from SDCard":
Выберите нужный файл и нажмите "Select":
Затем осталось нажать "Connect" для подключения к сети:
Настройка клиента openvpn включает только импорт конфигурационного файла, больше ничего не нужно. Дальше ваш трафик будет направлен через VPN, здесь тоже вы можете посмотреть таблицу маршрутизации, если установлен эмулятор терминала:
Правда, здесь мы не увидим такой ситуации, как в Linux, маршрутизация на VPN в Android осуществляется немного по-другому.

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

Нельзя было не рассказать в этой статье как пользоваться OpenVPN GUI в Windows, тем более что это ненамного сложнее чем в Android. Нам нужно установить клиент OpenVPN. Вы можете скачать его на официальном сайте:
После загрузки запустите программу от имени администратора и пройдите все шаги мастера:
Далее, запустите программу, найдите ее значок в трее, кликните по нему и выберите "Import":
Далее, просто выберите файл конфигурации *.ovpn для нужного VPN сервера:
Затем еще раз кликните по значку OpenVPN на панели, начнется инициализация и вы будете подключены к сети VPN, значок программы изменится на зеленый:
Теперь ваш трафик в операционной системе Windows тоже направлен через VPN. Как видите, использование OpenVPN очень просто во всех операционных системах.

Выводы

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

Комментариев нет: