8 октября 2014 г.

Установка и настройка OpenVPN на Android устройствах

OpenVPN Connect Android

Использовать OpenVPN подключение на смартфоне или планшете очень просто. Рассмотрим этот процесс поближе.

И так, мы настроили OpenVPN сервер в роутере и создали тоннель на ПК. Рассмотрим в каких случаях нам может понадобится VPN тоннель на смартфоне или планшете.

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

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

Для начала нам понадобится официальный клиент: OpenVPN Connect. Запущенное приложение выглядит так:

OpenVPN Connect Android

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

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

Для подключения мобильного устройства к собственному серверу OpenVPN необходимо иметь:

  1. конфигурационный файл (.ovpn);
  2. клиентский ключ (client.key);
  3. клиентский сертификат (client.crt);
  4. доверенный сертификат (ca.crt);
  5. ключ Диффи-Хельмана (dh1024.pem).
Все эти файлы можно сложить в папку на SD карте или во внутреннее хранилище устройства. В таком случае, при утере устройства клиентский сертификат придется отозвать, да бы им не смог воспользовался злоумышленник. Или же необходимо шифровать содержимое SD карты, на которой хранятся ключи и сертификаты.

Альтернативной возможностью является использование хранилища формата PKCS#12 в виде одного запароленого файла, в котором будут находится все перечисленные выше ключи и сертификаты. Недостатком этого способа является то, что ваше Android устройство потребует обязательного использования защищенного экрана блокировки (PIN-код, графический ключ, и др.). Для тех, кто как и я, не использует защиту на экране блокировки этот способ будет не удобен.

Рассмотрим первый вариант настройки.

Запускаем OpenVPN Connect и открываем меню, в котором выбираем пункт Import:

OpenVPN Connect Android

Далее выбираем Import Profile from SD card:

OpenVPN Connect Android

На следующем этапе переходим в каталог с необходимыми файлами и выбираем свой .ovpn:

OpenVPN Connect Android

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

OpenVPN Connect Android

После нажатия кнопки Connect появится предупреждение системы о том, что OpenVPN Connect пытается установить VPN-соединение. На этом этапе необходимо поставить галку и нажать Ok. Должен заметить, такое предупреждение будет появляться каждый раз после перезагрузки устройства. Это особенности системы безопасности Android.

OpenVPN Connect Android

Успешно установленное соединение в OpenVPN Connect будет выглядеть следующим образом:

OpenVPN Connect Android

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

OpenVPN Connect Android

Спасибо за внимание!