Всем привет! Я расскажу о том как в течении 10 минут создать личный VPN сервер в нужном регионе.
Очевидно, что для настройки потребуется доступ к Azure. Я сделал такой доступ через Azure Benefit (google 'how to activate azure benefit for msdn subscribers'). В марте-апреле этого года данная штука активировалась для жителей нашей страны, а вот в этом месяце с этим как мне сказали уже есть проблемы. В таком случае - обращайтесь к друзьям с доступом к Azure.
Сразу отвечу на возможные вопросы:
Сколько это стоит? - виртуалка стоит 1000р в месяц. Azure Benefit позволяет каждый месяц тратить на опыты с облаком 12500р. То есть если не пользуетесь другими ресурсами в подписке, то сможете бесплатно поднять VPN и себе, и нескольким друзьям.
Нужно это поддерживать, перезагружать, обновлять? - у меня сервер проработал несколько месяцев 24*7 без каких либо вмешательств. Теоретически как и любая виртуалка может заглючить и его потребуется перезагрузить с Azure портала.
Какова скорость? - у меня выдает практически такую же скорость как и без VPN (88Mbps в обе стороны на 100Mbps тарифе).
Что с ограничениями? - можно использовать не более двух одновременных подключений (иначе потребуется платный OpenVPN сервер). Еще мне не понравилось, что под OpenVPN нет Chrome extension.
Сколько времени займет процесс создания сервака? - менее 10 минут. С первого раза наверно чуть подольше будет.
Мануал с большим количеством картинок
Выбираем создать виртуалку из заданного образа
Идем далее
Выбираем самые простые настройки
Идем далее
Выбираем создать виртуалку в новой ресурс группе, задаем имя машины, выбираем регион, выбираем образ OpenVPN сервера
4. На этой же странице ниже задаем самый дешевый размер B1, меняем Authentication type и задаем креды для коннекта к серваку
Идем далее
На странице с дисками выбираем самый дешевый диск
Идем далее
На странице с сетевыми настройками поставим чекбокс для удаления
Идем далее
Здесь ОБЯЗАТЕЛЬНО отключаем автоматическое выключение
Идем далее
Убеждаемся, что валидация прошла нормально, жмем Create
Ждем когда машина создастся
Нажимаем 'Go to resource' чтобы перейти к созданной машине
В настройках машины кликаем на IP
Меняем IP на статический
Не забываем нажать кнопку Save
Запускаем у себя на машине консоль и коннектимся к созданному серваку ssh <username>@<ip>. Креды берем из шага 4, IP из шага 11
Сервак стартанет конфигурацию автоматически
Далее принимаем лицензионное соглашение и жмем Enter на все остальные вопросы
Последний шаг - задаем пароль для клиентского пользователя 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)
pvs043
02.07.2022 22:03Респект за подробный мануал!
Предлагаю добавить абзац про ограничение доступа только из сетей своего провайдера (раздел Networking/Inbound Port Rules в свойствах VM)
Darkhon
02.07.2022 23:34+2Так-то персональный сервер AmneziaVPN с автоматической настройкой — $5 в месяц. И там вам сразу и OpenVPN, и Wireguard, и Shadowsocks/Cloak. И подключений там больше двух...
IvanFilippov Автор
03.07.2022 01:11+1Ребят, спасибо за комменты, оценки в том числе и негативные (если напишите подробнее чем не устроил технический уровень - постараюсь подправить)
По образам - выбрал из бесплатных тот который доступен в библиотеке и быстро настраивается. До него пробовал парочку других, но с ними хорошего ничего не вышло.
По рулзам - дельное замечание - постараюсь попозже добавить абзац. Инструкцию хотелось сделать максимально простой, чтобы народ не пугался)
По альтернативным решениям - здорово, что их предлагаете - спасибо!
litos
03.07.2022 05:51+1А там можно получить сервер с каким-нибудь актуальным Debian/Ubuntu, зайти по ssh и поставить бесплатный OpenVPN скриптом типа вот этого https://github.com/angristan/openvpn-install ?
Также займёт 10 минут и пользователей будет неограниченно, может только вопрос возникнуть у новичков в линуксе как .ovpn-файлы скачивать к себе на компьютер, тут можно использовать клиент с поддержкой scp, тот же winscp )
scruff
03.07.2022 11:41тоже использую данную сброку уже много лет в том числе и в проде. Возиться с ручной установкой простейшейго сервака по чьим-нибудь кривым мануалам нет ни времени ни желания.
IvanFilippov Автор
03.07.2022 12:33Да - сервер с обычным актуальным Debian/Ubuntu можно конечно же создать. Большое спасибо за ссылку - добавлю в статью для желающих)
Didimus
03.07.2022 06:18Использование ресурса на нескольких производителей опасно. Если что, трясти будут всех
Rebeiro1976
03.07.2022 07:17+1зачем городить что то, когда за 86 рублей в месяц(в России), в моем случае 250 р., потому что в Германии, купить vps, поставить debian и поднять там openvpn, вместе с покупкой, делов на полчаса, если без наворотов, 23 минуты и вуаля)
DonAgosto
03.07.2022 08:46Цены на NAT VPS, на которых можно поднять OpenVPN, начинаются с ~0.3 USD в месяц. В РФ правда их тоже коснулись известные проблемы с оплатой зарубежных сервисов.
litos
03.07.2022 13:32А можете уточнить что это за сервера за 30 центов в месяц, какой хостер? Да и за 250р тоже, так как сейчас цены сильно выросли у всех и хотят рублей 500 так за сервер
Ilyasyakubov
03.07.2022 14:03+2Vdsina за 200₽/месяц предоставляет VDS в Нидерландах с 1core/1GB/30GB и 32TB трафика. Оплата с российских карт. Чтобы развернуть сервер VPN я использовал скрипт Wirehole.
Запасной сервер у меня на Beget за 7₽/сутки, правда, в Москве, спеки: 1core/1GB/10GB, трафик, вроде как, не ограничен.
DonAgosto
03.07.2022 14:57+1что это за сервера за 30 центов в месяц
Их довольно много. Можно подобрать подходящий напрмер на lowendstock.com или cheapvpslist.com
Учитывайте только, что за эту цену это будет скоре всего именно NAT VPS, соответственно стандартных портов не будет (что впрочем не критично для ssh+OpenVPN)
neuotq
03.07.2022 21:29+1ИМХО, если нужен vpn для обхода ограничений и тп, то лучше использовать outline. Ставится легко и непринуждённо в полклика.
https://getoutline.org/
Всем советуюlitos
04.07.2022 05:08+1Мне очень нравится, как работает WireGuard на iOS/Android устройствах, стабильно работает, батарейку не расходует, ставится также скриптом https://github.com/angristan/wireguard-install
hudson
03.07.2022 22:28А что с оплатой Azure в нынешних реалиях? Безотносительно VPN тоже интересно.
DO оплачивать уже проблематично...
IvanFilippov Автор
04.07.2022 10:47Тоже данный момент интересен. Использование Azure benefit хорошо как раз в плане полной бесплатности. Наша компания покидает российский рынок, а с Azure хотелось бы продолжить опыты - за время работы с ним были только положительные впчеталения.
TerAnYu
А зачем платный OpenVPN?Ах, вы использовали готовый образ OpenVPN Access, а не православный бесплатный...