Всем привет! Я расскажу о том как в течении 10 минут создать личный VPN сервер в нужном регионе.

Очевидно, что для настройки потребуется доступ к Azure. Я сделал такой доступ через Azure Benefit (google 'how to activate azure benefit for msdn subscribers'). В марте-апреле этого года данная штука активировалась для жителей нашей страны, а вот в этом месяце с этим как мне сказали уже есть проблемы. В таком случае - обращайтесь к друзьям с доступом к Azure.

Сразу отвечу на возможные вопросы:

  1. Сколько это стоит? - виртуалка стоит 1000р в месяц. Azure Benefit позволяет каждый месяц тратить на опыты с облаком 12500р. То есть если не пользуетесь другими ресурсами в подписке, то сможете бесплатно поднять VPN и себе, и нескольким друзьям.

  2. Нужно это поддерживать, перезагружать, обновлять? - у меня сервер проработал несколько месяцев 24*7 без каких либо вмешательств. Теоретически как и любая виртуалка может заглючить и его потребуется перезагрузить с Azure портала.

  3. Какова скорость? - у меня выдает практически такую же скорость как и без VPN (88Mbps в обе стороны на 100Mbps тарифе).

  4. Что с ограничениями? - можно использовать не более двух одновременных подключений (иначе потребуется платный OpenVPN сервер). Еще мне не понравилось, что под OpenVPN нет Chrome extension.

  5. Сколько времени займет процесс создания сервака? - менее 10 минут. С первого раза наверно чуть подольше будет.

Мануал с большим количеством картинок
  1. Выбираем создать виртуалку из заданного образа

Идем далее

  1. Выбираем самые простые настройки

Идем далее

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

4. На этой же странице ниже задаем самый дешевый размер B1, меняем Authentication type и задаем креды для коннекта к серваку

Идем далее

  1. На странице с дисками выбираем самый дешевый диск

Идем далее

  1. На странице с сетевыми настройками поставим чекбокс для удаления

Идем далее

  1. Здесь ОБЯЗАТЕЛЬНО отключаем автоматическое выключение

Идем далее

  1. Убеждаемся, что валидация прошла нормально, жмем Create

Ждем когда машина создастся

  1. Нажимаем 'Go to resource' чтобы перейти к созданной машине

  1. В настройках машины кликаем на IP

  1. Меняем IP на статический

Не забываем нажать кнопку Save

  1. Запускаем у себя на машине консоль и коннектимся к созданному серваку ssh <username>@<ip>. Креды берем из шага 4, IP из шага 11

Сервак стартанет конфигурацию автоматически

  1. Далее принимаем лицензионное соглашение и жмем Enter на все остальные вопросы

  1. Последний шаг - задаем пароль для клиентского пользователя openvpn

Если работаем на компе качаем клиента со ссылки ClientUI из шага 14. Соглашаемся с предупреждением о сертификате. Пользователь 'openvpn' и пароль из шага 14.

Для мобильных девайсов ищем OpenVPN client приложение в app store\google play. Для коннекта в мобильных приложениях так же используем ClientUI, пользователя 'openvpn' и пароль из шага 14.

В завершение картинка из Speedtest c проверкой скорости. На 100Mbps сетке получилось 88Mbps в обе стороны

P.S. Огромное спасибо комментаторам за замечания и альтернативные варианты:
@pvs043 "Предлагаю добавить абзац про ограничение доступа только из сетей своего провайдера (раздел Networking/Inbound Port Rules в свойствах VM)".

Комментарий уже содержит всю информацию - если нужно, можно ограничить доступ к созданному серверу - https://docs.microsoft.com/en-us/azure/virtual-machines/windows/nsg-quickstart-portal#create-an-inbound-security-rule

@litos"А там можно получить сервер с каким-нибудь актуальным Debian/Ubuntu, зайти по ssh и поставить бесплатный OpenVPN скриптом типа вот этого https://github.com/angristan/openvpn-install ? Также займёт 10 минут и пользователей будет неограниченно, может только вопрос возникнуть у новичков в линуксе как .ovpn-файлы скачивать к себе на компьютер, тут можно использовать клиент с поддержкой scp, тот же winscp)"

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

@Ilyasyakubov "Vdsina за 200₽/месяц предоставляет VDS в Нидерландах с 1core/1GB/30GB и 32TB трафика. Оплата с российских карт. Чтобы развернуть сервер VPN я использовал скрипт Wirehole. Запасной сервер у меня на Beget за 7₽/сутки, правда, в Москве, спеки: 1core/1GB/10GB, трафик, вроде как, не ограничен."

@DonAgosto "Можно подобрать подходящий сервер например на lowendstock.com или cheapvpslist.com. Учитывайте только, что за эту цену это будет скоре всего именно NAT VPS, соответственно стандартных портов не будет (что впрочем не критично для ssh+OpenVPN)"

@neuotq "если нужен vpn для обхода ограничений и тп, то лучше использовать outline. Ставится легко и непринуждённо в полклика.https://getoutline.org/"

@litos "Мне очень нравится, как работает WireGuard на iOS/Android устройствах, стабильно работает, батарейку не расходует, ставится также скриптом https://github.com/angristan/wireguard-install "

Комментарии (18)


  1. TerAnYu
    02.07.2022 21:20
    +5

    А зачем платный OpenVPN?

    Ах, вы использовали готовый образ OpenVPN Access, а не православный бесплатный...


  1. pvs043
    02.07.2022 22:03

    Респект за подробный мануал!

    Предлагаю добавить абзац про ограничение доступа только из сетей своего провайдера (раздел Networking/Inbound Port Rules в свойствах VM)


  1. Darkhon
    02.07.2022 23:34
    +2

    Так-то персональный сервер AmneziaVPN с автоматической настройкой — $5 в месяц. И там вам сразу и OpenVPN, и Wireguard, и Shadowsocks/Cloak. И подключений там больше двух...


  1. IvanFilippov Автор
    03.07.2022 01:11
    +1

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

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

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

    По альтернативным решениям - здорово, что их предлагаете - спасибо!


  1. litos
    03.07.2022 05:51
    +1

    А там можно получить сервер с каким-нибудь актуальным Debian/Ubuntu, зайти по ssh и поставить бесплатный OpenVPN скриптом типа вот этого https://github.com/angristan/openvpn-install ?

    Также займёт 10 минут и пользователей будет неограниченно, может только вопрос возникнуть у новичков в линуксе как .ovpn-файлы скачивать к себе на компьютер, тут можно использовать клиент с поддержкой scp, тот же winscp )


    1. scruff
      03.07.2022 11:41

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


    1. IvanFilippov Автор
      03.07.2022 12:33

      Да - сервер с обычным актуальным Debian/Ubuntu можно конечно же создать. Большое спасибо за ссылку - добавлю в статью для желающих)


  1. Didimus
    03.07.2022 06:18

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


  1. Rebeiro1976
    03.07.2022 07:17
    +1

    зачем городить что то, когда за 86 рублей в месяц(в России), в моем случае 250 р., потому что в Германии, купить vps, поставить debian и поднять там openvpn, вместе с покупкой, делов на полчаса, если без наворотов, 23 минуты и вуаля)


    1. DonAgosto
      03.07.2022 08:46

      Цены на NAT VPS, на которых можно поднять OpenVPN, начинаются с ~0.3 USD в месяц. В РФ правда их тоже коснулись известные проблемы с оплатой зарубежных сервисов.


      1. litos
        03.07.2022 13:32

        А можете уточнить что это за сервера за 30 центов в месяц, какой хостер? Да и за 250р тоже, так как сейчас цены сильно выросли у всех и хотят рублей 500 так за сервер


        1. Ilyasyakubov
          03.07.2022 14:03
          +2

          Vdsina за 200₽/месяц предоставляет VDS в Нидерландах с 1core/1GB/30GB и 32TB трафика. Оплата с российских карт. Чтобы развернуть сервер VPN я использовал скрипт Wirehole.

          Запасной сервер у меня на Beget за 7₽/сутки, правда, в Москве, спеки: 1core/1GB/10GB, трафик, вроде как, не ограничен.


        1. DonAgosto
          03.07.2022 14:57
          +1

          что это за сервера за 30 центов в месяц
          Их довольно много. Можно подобрать подходящий напрмер на lowendstock.com или cheapvpslist.com
          Учитывайте только, что за эту цену это будет скоре всего именно NAT VPS, соответственно стандартных портов не будет (что впрочем не критично для ssh+OpenVPN)


  1. kaasnake
    03.07.2022 08:24
    -1

    Но ведь есть же pfsense community edition... А он очень круто наворочен.


  1. neuotq
    03.07.2022 21:29
    +1

    ИМХО, если нужен vpn для обхода ограничений и тп, то лучше использовать outline. Ставится легко и непринуждённо в полклика.
    https://getoutline.org/
    Всем советую


    1. litos
      04.07.2022 05:08
      +1

      Мне очень нравится, как работает WireGuard на iOS/Android устройствах, стабильно работает, батарейку не расходует, ставится также скриптом https://github.com/angristan/wireguard-install


  1. hudson
    03.07.2022 22:28

    А что с оплатой Azure в нынешних реалиях? Безотносительно VPN тоже интересно.

    DO оплачивать уже проблематично...


    1. IvanFilippov Автор
      04.07.2022 10:47

      Тоже данный момент интересен. Использование Azure benefit хорошо как раз в плане полной бесплатности. Наша компания покидает российский рынок, а с Azure хотелось бы продолжить опыты - за время работы с ним были только положительные впчеталения.