Приложение MyVPN с открытым исходным кодом позволяет автоматизировать управление виртуальными частными сетями. Для его использования не потребуются навыки системного администрирования.
При выборе провайдера VPN доверие играет более важную роль, чем стоимость услуг. Бесплатные сервисы часто обвиняют в отсутствии надежного шифрования и в слежке за пользователями, а коммерческие могут пойти на поводу у регулятора и начать блокировать доступ к запрещенным ресурсам или сами попадут в черный список Роскомнадзора. Идеальным с точки зрения возможности обеспечить анонимность вариантом считается собственный сервер, но заниматься его настройкой хотят немногие. MyVPN значительно упрощает его создание.
Зачем собственный VPN рядовому пользователю?
Обычно к VPN подключаются, чтобы обеспечить безопасную работу с публичными беспроводными точками доступа или для обхода блокировок, которые за последние годы ввели регулирующие органы ряда государств. Потоковые видеосервисы могут ограничивать доступ к контенту по географическому признаку — необходимость шифровать трафик или виртуально перемещаться в другую локацию возникает довольно часто.
Для решения проблем безопасности годится любой коммерческий провайдер с хорошей репутацией, однако с обходом блокировок дело обстоит сложнее. В прошлом году Роскомнадзор потребовал, чтобы крупные провайдеры VPN начали выполнять нормы отечественного законодательства. Пока стороны просто обменялись любезностями, но в любой момент популярные иностранные сервисы могут быть заблокированы. Заменить их непросто: низкую цену (2–3 доллара в месяц) пользователь получит только при оплате подписки минимум на год, а то и на три. Если РКН дотянется до поставщика услуг, эта подписка на территории России превратится в тыкву.
Здесь стоит учесть опыт китайских товарищей и не платить больше чем за месяц, но месячные тарифные планы у крупных провайдеров составляют 7–12 долларов. При таких ценах идея поднять свой VPN выглядит привлекательно, да и с точки зрения анонимности этот вариант более интересен: кто знает, какие данные о нас собирают провайдеры VPN? Рядовых пользователей останавливает только необходимость настраивать и администрировать сервер — эту проблему и решает проект MyVPN.
Как работает MyVPN?
Важно подчеркнуть, что MyVPN — это не сервис, а работающее через API хостинг-провайдера приложение для Windows, macOS, GNU/Linux и Android. Оно автоматизирует процессы создания и удаления серверов VPN в облачной инфраструктуре CryptoServers.Net, DigitalOcean или Linode. Пользователю необходимо установить приложение на компьютер или мобильное устройство, войти в аккаунт выбранного хостера (если аккаунта нет, придется зарегистрироваться) и указать нужный регион, а также протокол. Чтобы запустить свой сервер, достаточно нажать одну кнопку.
Создание сервера VPN занимает несколько минут, после чего приложение предложит сохранить реквизиты для доступа к нему. Этот шаг обязателен, поскольку программа не сохраняет данные ради повышения безопасности.
Возможности автоматически настроить соединения VPN в приложениях для настольных ОС нет (исключение сделано только в версии для Android): чтобы подключиться к серверу, придется воспользоваться системными средствами. Это также сделано по соображениям безопасности, но процесс не особенно сложен — на сайте MyVPN доступны подробные инструкции. Серверов можно создать несколько, а удаляются они буквально в один клик.
Почему MyVPN безопасен?
Приложение MyVPN с открытым исходным кодом запускается на устройстве пользователя, не передает разработчикам приватные данные и не сохраняет доступы к серверам VPN, которые создаются в твоем аккаунте поставщика услуг хостинга. Конечно, программе необходима авторизация в личном кабинете хостинг-провайдера, но без нее получить доступ к API и создавать/удалять серверы не получится, а открытый исходный код позволяет быть уверенным, что данные для входа не уйдут на сторону. К тому же в настольных версиях можно ввести API-ключ из кабинета выбранного провайдера.
Лучше всего реализована интеграция с CryptoServers.Net. Этот хостер хорошо заботится о приватности, его фишки — абсолютно анонимные VPS и возможность оплаты в биткойнах. DigitalOcean и Linode в шпионских скандалах тоже не замечены, но, помимо действующей банковской карты, иногда запрашивают сканы подтверждающих личность документов. В любом случае только пользователь знает IP сервера и имеет ключи доступа к нему — по сути это обычные VPS, а какие сервисы там запущены — дело третье. Такой вариант по уровню обеспечения приватности превосходит специализированные VPN-сервисы, которые потенциально могут сделать с вашими данными что угодно.
Сколько стоит MyVPN?
Приложение MyVPN не требует покупки лицензии и не предполагает комиссии за использование: оплачиваются только услуги хостинг-провайдера. К примеру, у CryptoServers.Net виртуальная машина VPN с каналом в 1 Гбит/с стоит 0,02 доллара в час и этот канал предназначен для одного абонента. Разработка приложения монетизируется за счет партнерских программ, при этом хостеры сами платят его авторам за привлечение клиентов. Простая и логичная схема, сравнимая по ценам с тарифами крупных VPN-провайдеров: при оплате сразу за год у них можно найти варианты подешевле, но с риском потерять внесенные деньги из-за внезапной блокировки Роскомнадзором. При использовании MyVPN тарифицируется только время жизни сервера — его можно удалить в любой момент и создать заново.
Сайт проекта
Проект на GitHub
Источник
vanyaindigo
То, что на CryptoServers.Net стоит 30$ в месяц, на Hetzner стоит 6$ в месяц.
P.S. А, так это надстройка над DO.
Invision70 Автор
Речь в статье не о cryptoservers, а об инструменте и выбрать можно другого провайдера, а также стать контрибьютором и добавить Hetzner в список, если у него есть API.
Если сравнивать цены, то нужно учитывать и предоставляемые каналы (скорость трафика) и анонимность. Раз мы говорим о VPN, то многим будет актуально возможность не добавлять свои карты, а оплатить криптовалютой.
vanyaindigo
Понятное дело, что речь об API. Но и скрытую рекламу CryptoServers.Net никто не отменял ;)
cjmaxik
У Hetzner, кстати, тоже REST-API имеется. Кто-нибудь бы заморочился с внедрением.
Invision70 Автор
Можно уложиться в 100 строк и реализовать методы: create, list, check, regions, delete
github.com/my0419/myvpn-desktop/tree/master/src/lib/providers
cjmaxik
Убедили :)
Georg_Kuzbass
В анонимности
vanyaindigo
Какая уж тут «анонимность» у компании с русскими корнями?
Invision70 Автор
В новой версии уже появилась поддержка Hetzner
AotD
А в чем отличие от Outline?
Invision70 Автор
В том что он работает только с digitalocean?
AotD
Ну по правде говоря он работает на всём где можно запустить Docker.
Invision70 Автор
Простому пользователю нужно знать как работает docker? В Outline насколько я понял только один протокол. Да и не к чему крутить docker демона на сервере для такой простой задачи.
Не думаю что у разработчиков стояла задача отличиться, сделали свой инструмент. Проект еще и в онлайн версии доступен с недавнего времени, не нужно ничего ставить.
vanyaindigo
Тем, что в Outline зашит DNS-резолвер, плюс он собирает кучу конфиденциальной информации.
Georg_Kuzbass
Опа, внезапно, спасибо, приму к сведению
ProRunner
А поподробнее можно?
Что там не так с DNS и какую информацию он собирает (и куда отсылает)?
vanyaindigo
support.getoutline.org/s/article/Data-collection?language=ru
wilderwind
1. Берёшь VPS с анлим-трафиком (желательно на Xen, OpenVZ дешевле, но изоляция виртуалок там похуже), от 5 евро в месяц
2. Ставишь туда любой Linux
3. За 10 минут ручками поднимаешь pptp
4.…
5. PROFIT!
Можно заморочиться и вместо pptp воткнуть OpenVPN или Strongswan, и получить шифрование с этими вашими диффи-хеллманами, и дополнительно завернуть исходящий траффик в Tor. А если провайдер с DPI и режет впн-хендшейк, то можно туннелировать его через ssh. На сам сервер поставить port-knocking, и всё лишнее порезать через firewalld или старый добрый iptables.
Каждой задаче — своё решение, в общем.
И есть вопрос доверия подобным сервисам-посредникам, предоставляющим удобства по развёртыванию.
Лучше один раз вкурить мануал и научиться делать это самостоятельно, будешь сам себе админ.
З.Ы. Прекратится внезапно поддержка этого проекта — и всё равно придётся разбираться самому.
Invision70 Автор
Вопрос доверия решается открытым исходным кодом.
В статье написано «Для его использования не потребуются навыки системного администрирования.».
wilderwind
Пользоваться чем-либо, не понимая, как оно работает, бывает довольно опрометчиво.
Будет такой впн торчать наружу всеми портами, что не есть хорошо.
Достаточно посмотреть, как неопытные пользователи относятся к собственной технике (ноутбукам, например). Да, такой ноут работает, показывает котиков на ютубчике, но при этом жутко греется из-за «пылевых валенок» на радиаторе. Потому что человек не в курсе, что не надо ставить ноут на мягкий плед, кулер начнёт насасывать с него пыль, шерсть и волокна ткани.
xdimquax
Всегда умиляло: "я не хочу разбираться, как это работает, но хочу, чтобы было безопасно".
Georg_Kuzbass
Меня успокаивают открытые исходники и стары на гите.
Zolg
Большинство людей не имеет ни малейшего представления о том, как работает, скажем, шарнир равных угловых скоростей, что не мешает им более-менее безопасно ездить на автомобиле.
Invision70 Автор
В итоге что ты предлагаешь? Освоить рядовому юзеру консоль и пакетный менеджер с вимом?
teamfighter
А почему бы и да?
Уж по простынке с набором команд и обезьянка сможет сделать.
C4ET4uK
Если простынку дал кто-то другой, а пользователь не понимает как это работает, то какие гарантии, что среди команд ничего лишнего нет? При таком раскладе нет никакой разницы с приложением.
Zolg
Рядовому юзеру как правило достаточно купить подписку на впн.
Georg_Kuzbass
В чем проблема проверить данное приложение на вшивость и прийти к нам уже с фактами? Исходники же открыты. Или тут чистый холивар интересен?
wilderwind
Проблема не столько в приложении, сколько в самом серваке, созданном с его помощью.
Когда я ставил свои первые VPS, то замечал, что буквально через час на свежий впн начинают стучаться боты, пытаясь брутануть пароль на ssh. И, если забыть поменять порт (или не знать про это вообще), то есть ненулевой риск принять участие в работе ботнета, с последующим баном от хостера.
Как настраивает VPN эта софтина? Учитывает ли элементарные требования безопасности?
Georg_Kuzbass
То что приложение поднимает сервер с ssh ключами а не паролем — это факт, пусть брутят. В исходниках есть гисты с которых тянется bash устанавливающий службы. Кто мешает проверить? Абсолютно уверен что открытый исходный код — это использование строго официальных гайдов по настройке, ибо иначе будет масса вопросов
Georg_Kuzbass
Как рядовой юзер понял 70% из текста комментария,
если стоит задача поднять сейчас ВПН для себя, то сколько времени займет раскурка?
Пока можно скачать приложение вообще пофиг. Оно просто сервер подняло и забыло, сервер в аккаунте моем.
vanyaindigo
Вот все уже раскурено: Shadowsocks через Cloudflare
Georg_Kuzbass
Ты серьезно? Посмотри на эту статью глазами человека не видевшего консоль ни разу. Он даже не поймет что там описано, и кто такой CloudFlare
vanyaindigo
Для такого юзера есть сервисы VPN, пусть их берет и не парит другим мозг.
Georg_Kuzbass
И забьет на свою безопасность? Свой сервер это свой сервер, и есть возможность его создать
vanyaindigo
Тогда учите матчасть! Или платите деньги тем, кто за вас все настроит.
Georg_Kuzbass
Ну вот как раз вот есть решение и денег не платить и манулы не курить, просто по кнопочкам натыкать себе сервер.
Georg_Kuzbass
На сайте же написана мотивация — дать возможность использовать ВПН всем желающим
dakuan
Ну «своим» сервер от облачного провайдера можно назвать лишь с большой натяжкой.
Invision70 Автор
Вы предлагаете VPN у себя на домашнем серваке развернуть или арендовать место в дата-центре по паспортным данным? :D
dakuan
Так и DigitalOcean вам придется оплачивать либо картой, либо Paypal, что, в сущности, эквивалентно предоставлению паспортных данных.
Georg_Kuzbass
Вот на этот случай они очевидно и примотали CryptoServers.Net, плати битками и ни о чем не парься
dakuan
Это не отвечает на главный вопрос — целевая аудитория-то кто? Пользователи «на разу не видевшие консоль» вряд ли заморачиваются такими вещами, как собственный VPN — они скорее поставят какое-нибудь расширение для браузера или воспользуются услугами VPN-провайдера. А те, кто задумывается о таких вещах, скорее сами все настроят. Единственный оправданный сценарий, который приходит в голову — это если человеку вдруг понадобилось настроить несколько VPN-серверов. Тогда, наверное, действительно будет удобнее воспользоваться приложением.
Georg_Kuzbass
Ну лично меня этот вопрос не парит, ребята запилили годный продукт, потребитель найдется
Zolg
А что, впн сервисов с оплатой битками нет ?
teamfighter
Как правило пользователю в глаза не видевшему консоль и безопасность особенно не важна. Котики на ютубе есть, телеграм работает — и ладно.
Zolg
Ой, мамочки, "свой сервер".
Он, естественно находитсяи на своем физическом железе в своей стойке под замком и сигнализацией?
В противном случае вся дополнительная безопасность проистекает исключительно из принципа неуловимого Джо
Georg_Kuzbass
Вы предлагаете VPN у себя на домашнем серваке развернуть или арендовать место в дата-центре по паспортным данным? :D
Zolg
Я прозрачно намекаю, что разница в безопасности между впн сервисом и арендованным виртуальным сервером если и есть, то базируется исключительно на лени хостера
Tangeman
Не позволяет. Уверенность это даст только в том случае если каждый будет проверять этот код лично и компилировать тоже лично (всю цепочку начиная от электрона), а для этого уже нужны навыки покруче системного администрирования.
Для тех кто скачивает exe и вообще никакими навыками не обладает нет и не может быть никакой уверенности.
gecube
+++
А самое мерзкое в опенсурсе — это транзитивные зависимости, которые превращаются в снежный ком. Кто их проверять будет? Причем ведь это надо делать в динамике, а не в статике. Сегодня зависимость корректная, а завтра ее заразили. Вспомните историю left-pad и аналогичные
0xd34df00d
А для этого нужны языки со строгими системами типов с контролем за эффектами. Если вы в типе функции, которую вызывает
main
, видите, что она лезет только на адреса на одном конкретном домене, вам ничего транзитивно проверять не нужно, компилятор сделает это за вас.