- PVSM.RU - https://www.pvsm.ru -

Установка OpenVPN в несколько кликов

image

Не так давно мне пришла в голову мысль, что подключение к Linux-серверу по SSH, установка пакетов, запуск скриптов — все это однотипная рутина, для которой не нужно участие человека, ее может сделать робот. Конечно, я пользуюсь Ansible, но он ведь тоже "не для всех".

В результате была написана программа "для всех" в которой просто есть одна кнопка "сделать хорошо". Программа с открытым исходным кодом и доступна для изучения и скачивания на GitHub.

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

Всего нужно выполнить 4 простых шага:

  1. Создать сервер (обычно достаточно просто нажать кнопку "Создать")
  2. Установить и запустить приложение SSHeller
  3. Нажать кнопку Install и дождаться завершения установки
  4. Скачать ovpn файл и подключиться к VPN с его помощью

Создание сервера

Подойдет практически любой виртуальный (VPS [1], VDS [1]) или физический сервер (у виртуального должен быть tun интерфейс). Для примера, ниже приведена инструкция по использованию DigitalOcean, как наиболее стабильного, простого и удобного в использовании облачного провайдера.

Подготовка

Для активации аккаунта необходимо одно из двух:

  • аккаунт PayPal
  • кредитная карта (именно кредитная, по которой можно уйти в минус, зарплатная/дебетовая не подойдет)

Если будете использовать PayPal — нужно будет внести $5. С кредитной карты-же заблокируют $1 и вернут.

Регистрация на DigitalOcean

Лучше всего регистрироваться по реферальной ссылке — тогда будет автоматически применён промокод на $10. Но я не буду здесь приводить ссылку. А можно зарегистрироваться заполнив форму на главной странице [2] и позже ввести любой промокод — он легко ищется через google. Их много разных и все по $10.

Перейдя по ссылке, достаточно ввести e-mail и придумать пароль.

DigitalOcean register form

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

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

DigitalOcean PayPal

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

DigitalOcean PayPal Confirm

Нужно нажать View conversion options и выбрать вариант Convert with card issuer

DigitalOcean PayPal Conversation

После окончания оплаты, вы попадете на главную страницу Dashboard. Можно перейти в Settings -> Billing чтобы посмотреть баланс.

Здесь Your credit $15 — внесенный аванс. А Usage $0.00 — сумма, которую нужно оплатить. Оплата обычно производится по факту — сколько потратили за месяц, столько вас и попросят оплатить(после исчерпания аванса). В самом низу можно посмотреть, какие были начисления.

DigitalOcean PayPal Billing

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

Сверху-справа нажимаем Create -> Droplets

DigitalOcean Create Droplet

Откроется страница создания сервера. Нужно задать 3 основных параметра.

Операционная система: Fedora 27. Это самая маленькая, быстрая и стабильная из доступных. Хотя Debian 9 — тоже хороший выбор. Более того, поддерживаются все доступные ОС, кроме FreeBSD и Debian 7.

DigitalOcean Droplet Fedora

Размер: будет достаточно самого маленького за $5.

DigitalOcean Droplet size

Регион — нужно выбрать тот, который территориально к вам ближе. Для Европейской части России — это Amsterdam.

DigitalOcean Datacenter Amsterdam

Этого достаточно. В самом низу можно изменить имя, но можно оставить по умолчанию и нажать большую зеленую кнопку Create. Виртуальная машина начнет создаваться, и вскоре вам придет e-mail с ее адресом и паролем.

Установка SSHeller

Для установки достаточно перейти на страницу релизов [3], скачать соответствующий файл и запустить его.

  • Для Windows: SSHeller.Setup.X.X.X.exe
  • Для macOS: SSHeller-X.X.X.dmg
  • Для Linux: SSHeller-X.X.X-x86_64.AppImage — после загрузки сделать исполняемым и запустить

Теперь SSHeller можно запустить из списка приложений.

Установка сервера OpenVPN

Письмо от DigitalOcean уже должно было прийти. Из него нам нужны 4 параметра.

DigitalOcean E-Mail

Запускаем SSheller и жмем Add

SSHeller servers list SSHeller servers add

Копируем параметры из письма:

  • Droplet Name -> Name
  • IP Address -> Host
  • Username -> User
  • Password -> Password

Нажатием Save возвращаемся к списку серверов.

SSHeller connect

В списке выбираем созданный сервер и нажимаем Connect. Первое подключение займет немного больше времени, так как DigitalOcean создает виртуальные машины с истекшим паролем, и приложению будет необходимо его обновить. После подключения отобразится состояние сервера (Dashboard). Слева сверху нужно открыть меню и выбрать OpenVPN.

SSHeller plugin OpenVPN

На экране OpenVPN, достаточно нажать зеленую кнопку Install и подождать.

SSHeller OpenVPN install

Сколько нужно ждать — невозможно предсказать. Иногда это может быть 3 минуты, а иногда — доходить до получаса. Зависит от сервера, на котором запускается ваша виртуальная машина. Чем меньше у сервера заполнен пул энтропии — тем дольше ждать. Если простыми словами: компьютер очень медленно создает новые случайные числа, но делает это постоянно и копит их. А для создания ключей шифрования нужно очень много случайных чисел. Если их кто-то уже использовал — придется подождать.

SSHeller OpenVPN progress

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

Сразу будет создан профиль по умолчанию и соответствующий ему файл настроек — client.ovpn. Можно скачать его, а можно создать еще один, или несколько, введя имя нового профиля и нажав кнопку Add.

SSHeller OpenVPN ovpn files

Для загрузки достаточно кликнуть на соответствующий файл профиля.

Подключение

  • Для Windows и Linux нужно установить OpenVPN
  • Для macOSTunnelblick
  • Для Android и iOSOpenVPN Connect из магазина приложений

Windows

  1. Скачиваем openvpn-install-X.X.X-I601.exe c официального сайта [4] и устанавливаем
  2. Сохраненный файл client.ovpn нужно скопировать в папку C:Program FilesOpenVPNconfig — потребуется подтверждение прав Администратора
  3. В меню "Пуск" выбрать OpenVPN -> OpenVPN GUI
  4. В трее (иконки возле часов) нажать правой клавишей мыши на иконку монитора с замком и выбрать Подключиться

OpenVPN Windows

Если в папке config будет несколько файлов, то появится подменю для каждого файла.

macOS

  1. Скачиваем Tunnelblick_XXX.dmg с официального сайта [5] (Stable) и запускаем
  2. В открывшемся окне два раза кликаем по иконке с подписью Tunnelblick
  3. Появится предупреждение, что эта программа скачена из интернета — нажимаем Открыть
  4. В окне приветствия нажимаем Продолжить
  5. Далее будет необходимо ввести пароль Администратора
  6. На вопрос о файле конфигурации ответить: У меня ЕСТЬ файл конфигурации, а в следующем окне нажать OK
  7. Через Finder найти client.ovpn файл и открыть его; указать хотите ли только вы пользоваться им, либо также разрешить другим пользователям компьютера
  8. В трее (иконки возле часов) нажать левой клавишей мыши на иконку ворот и выбрать соединить client
  9. Может быть выведено сообщение "Unrecognized option or missing or extra parameter(s)" — оно не влияет на работоспособность

OpenVPN macOS

Linux

  1. Установите пакет OpenVPN пакетным менеджером. Например в Debian и Ubuntu достаточно выполнить: sudo apt-get install -y openvpn
  2. Подключение устанавливается командой sudo openvpn --config client.ovpn

iOS

  1. Установите OpenVPN Connect из App Strore [6]
  2. Отправьте файл на свое мобильное устройство. Например, можно самому себе с компьютера отправить письмо
  3. Запустите приложение OpenVPN Connect, выберите Import you Private Tunnel Profile
  4. Выберите сохраненный client.ovpn файл
  5. Переместите появившийся переключатель в положение On

OpenVPN iOS

Android

  1. Установите OpenVPN Connect из Google Play [7]
  2. Отправьте файл на свое мобильное устройство. Например, можно самому себе с компьютера отправить письмо
  3. Запустите приложение OpenVPN Connect, выберите OVPN Profile
  4. Выберите сохраненный client.ovpn файл (обычно он сохраняется в папку Downloads) и нажмите IMPORT
  5. Введите отображаемое имя профиля или оставьте без изменений, нажмите ADD
  6. Переместите появившийся переключатель в положение On

OpenVPN Android

Как можно сэкономить

В DigitalOcean почасовая оплата

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

  1. Доступный трафик пропорционален времени работы сервера. Если сервер работал только 1/10 месяца (3 дня), то будет доступно только 1/10 трафика (100Гб). За превышение придется доплачивать (1 цент за каждый Гб)
  2. Чтобы деньги перестали списываться за сервер, его нужно не просто остановить, а полностью уничтожить, нажав на меню возле сервера и далее Destroy, а на появившейся странице сервера еще раз нажать Destroy. В следующий раз нужно будет заново повторять всю настройку, создавать новые ovpn файлы и отправлять их на устройства.

DigitalOcean destroy

Делитесь с родными и друзьями

Чисто технически, вы можете создать множество профилей, как для разных устройств, так и для разных людей. Вдвоем цена для каждого уже будет $2.5, впятером — $1.

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

Автор: delfer

Источник [8]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/linux/279143

Ссылки в тексте:

[1] VPS: https://www.reg.ru/?rlink=reflink-717

[2] главной странице: https://www.digitalocean.com/

[3] страницу релизов: https://github.com/delfer/ssheller/releases

[4] официального сайта: https://openvpn.net/index.php/open-source/downloads.html

[5] официального сайта: https://tunnelblick.net/downloads.html

[6] App Strore: https://itunes.apple.com/us/app/openvpn-connect/id590379981?mt=8

[7] Google Play: https://play.google.com/store/apps/details?id=net.openvpn.openvpn&hl=ru

[8] Источник: https://geektimes.com/post/300487/?utm_source=habrahabr&utm_medium=rss&utm_campaign=sandbox