Лучший VPN - когда свой, и вот почему:
сторонние VPN сервисы могут мониторить ваш трафик и хранить логи
скорость публичного VPN сервера может оказаться невысокой, т.к. с вами его обычно использует еще сотня-другая клиентов
проблемы с оплатой зарубежных VPN сервисов, а также возможные их блокировки в любой момент времени
спорная репутация IP адресов публичных VPN сервисов и частые капчи с доказыванием того, что вы не робот или хакер
частный VPN можно настроить под свои задачи: нестандартный порт, выбор протокола и т.п.
Рассмотрим краткую инструкцию по быстрой настройке собственного VPN.
Шаг 1. Аренда виртуального сервера
Для создания своего VPN нам нужен виртуальный сервер (VPS). Имеет смысл рассматривать поставщиков услуг VPS в нейтральных юрисдикциях.
Хороший вариант - это PQ.HOSTING, его преимущества:
компания в относительно нейтральной юрисдикции с серверами в 15+ локациях на разных континентах
быстрая регистрация и множество способов оплаты, включая криптовалюты, карты МИР, онлайн-банкинг, оплату с мобильного телефона
при необходимости могут настроить VPN за вас (услуга платная)
У PQ.хостинг сервера работают на базе виртуализации KVM и для нашего VPN достаточно будет в нужной локации заказать VPS с минимальной конфигурацией: 1 vCore, 1GB RAM, 15GB NVMe, 1Gbps. Если планируете подключать большое число клиентов, а также использовать сервер для других целей, то лучше выбрать конфиг помощнее.
При оформлении заказа указываем месторасположение датацентра VPS и операционную систему Ubuntu 20.04 или Debian 10. После оплаты мы получим необходимые данные для доступа к серверу: IP адрес и root-пароль.
Шаг 2. Установка и подключение к VPN
Для установки собственного VPN и дальнейшего подключения к нему мы будем использовать бесплатный VPN-клиент с открытым исходным кодом. О проекте ранее писали на Habr.
Клиент доступен для Windows, MacOS и Android. Для Linux и iOS можно использовать альтернативный клиент, хотя в скором времени разработчики обещают поддержку и этих ОС.
При первом запуске VPN-клиента выбираем Set up your own server и вводим данные доступа к серверу (IP адрес и root-пароль). Далее выбрав Run Setup Wizard следуем подсказкам мастера установки. На этапе выбора уровня цензуры отмечаем Low censorship, что подразумевает установку OpenVPN. В дальнейшем, если надо, можно включить другие поддерживаемые протоколы.
Клиент подключится к вашему серверу, установит Docker, запустит необходимые серверные контейнеры и уже через несколько минут мы сможем использовать свой VPN.
У некоторых пользователей Windows клиент бывает не подключается из-за отсутствия драйвера TAP. Драйвер можно загрузить здесь или запустив установку OpenVPN в выборочном режиме:
А еще может появиться сообщение, что не хватает VCRUNTIME140_1.dll, это решается установкой компонента Visual C++.
Подключение других устройств
На настроенном VPN клиенте можно сгенерировать файл готовой конфигурации .vpn для быстрого импорта настроек на таких же клиентах, а также универсальный файл конфигурации .ovpn для использования на альтернативных OpenVPN клиентах.
Ниже пример настройки альтернативного клиента для Linux и iOS:
Генерируем в Amnezia файл конфигурации OpenVPN (.ovpn): Settings → Server settings → Protocols and Services → OpenVPN, нажать на иконку расшаривания → Share for OpenVPN → Generate config → Save to file
Загружаем сгенерированный файл конфигурации на нужный Linux ПК или iOS устройство
-
Импортируем настройки VPN подключения из загруженного файла:
на iOS нужно установить OpenVPN клиент и при первом его запуске выбрать файл конфигурации .ovpn
-
на Linux ПК есть встроенный OpenVPN, поэтому переходим в Настройки → Сеть → в разделе VPN жмем + (добавить) → Импортировать из файла. Эту же операцию можно выполнить одной командой в консоли, указав последним параметром путь к файлу .ovpn:
sudo nmcli connection import type openvpn file имяфайла.ovpn
Описанным способом также можно к VPN подключить роутеры со встроенной поддержкой OpenVPN. К примеру, у некоторых моделей ASUS есть прямой импорт конфигурационных файлов .ovpn (VPN → VPN клиент → вкладка OpenVPN → Импорт .ovpn файла). С роутерами без такой функции придется настройки из файла .ovpn, включая содержимое ключей и сертификатов, переносить вручную.
Комментарии (22)
ChePeter
29.03.2022 09:35+41GB RAM, 15GB NVMe да ещё и докер !
Всё это сильно избыточно.
VPN сервер отлично работает на FreeBSD, которая отлично работает на 256М и 2G без NVM.
Такие сервера предлагают по 2 доллара за месяц и это без скидок и распродаж.
Ровно такой использовал в своей статье https://habr.com/ru/post/588580/ в Люксембурге около 6 месяцев. Не стал продлять аренду, т.к. статью перестали читать.
yarkovoy
29.03.2022 10:12Цены за последний месяц выросли у многих хостеров. Видимо из за курса доллара. Но в статье и правда дороговато и конфиг избыточен. Можно найти подешевле.
T968
29.03.2022 09:55сторонние VPN сервисы могут мониторить ваш трафик и хранить логи
А разве владелец железа и рута не в состоянии контролировать полностью KVM машину?
NikaLapka
29.03.2022 10:37И да и нет, т.е. с одной стороны вы можете(если хостер позволяет) ipxe + шифрование дисков использовать, ОС установите самостоятельно с iso(к примеру всё это доступно у vultr), и спать спокойно(от спецслужб всё равно не поможет, но от любопытных глаз вполне достаточно), с другой стороны владельцы железа всё равно увидят ваш не зашифрованный трафик и если он, как и нагрузка на инфраструктуру, окажется в пределах разумного, то им абсолютно всё равно.
Не совсем поятна паранойя и рекомендация использовать "дефолтный ovpn community" с иными настройками, установщиком :)
А так же хочется заметить про хостинг описанный выше - лично я всегда просто закрываю такие странички, если компания не может доступно и грамотно заполнить раздел "О нас".
svr_91
29.03.2022 10:34+3Мне вот интересно, если я разверну в какой-то иностранной юрисдикции таким образом сервис и "совершенно случайно" скачаю через него пиратский фильм с торрента (или сделаю какое-то другое незаконное по мнению юрисдикции этого государства действие), не прилетит ли мне абьюза на пару тысяч долларов?
sarmanovcom
29.03.2022 10:45Которую невозможно оплатить в текущих реалиях, можно признать ничтожной из-за форс-мажора.
svr_91
29.03.2022 10:51+1Что значит невозможно? Выставят овердрафт по карте, а дальше разбирайся с банком как хочешь.
ganzmavag
29.03.2022 11:08Это кстати реально интересный вопрос, подробного ответа на который я как-то не встречал.
Интересно, кстати, как эту проблему решают крупные VPN-сервисы.ClearAirTurbulence
29.03.2022 11:18Не знаю, как там в итоге все решается, но видел несколько свидетельств, что абуза прилетала хостеру VPN, а он ее переправлял фактическому владельцу. Так что торренты надо пускать в обход vpn.
TimsTims
29.03.2022 11:01+2На этапе выбора уровня цензуры отмечаем Low censorship, что подразумевает установку OpenVPN.
Ну зачем OpenVPN, когда уже очень даже существует WireGuard? Намного более производителен, многовероятно отсутствуют закладки.
ValdikSS
29.03.2022 11:16Только это простой, даже примитивный, туннель, а OpenVPN — полноценный комплекс, который покрывает все потребности при использовании VPN.
Софт Wireguard в Windows, при добавлении маршрута по умолчанию, даже добавлять маршрут на VPN-сервер через интернет-интерфейс не умеет, и при подключении возникает routing loop.
maledog
29.03.2022 11:42Транспорт только UDP. Что не очень способствует преодолению цензуры. Сложно скрывать, стожно маскировать. Тот же openvpn работает через TCP/UDP и даже через прокси.
Urvin
29.03.2022 11:45Хороший вариант - это PQ.HOSTING, его преимущества:
Нехороший, они продают ресурсов больше, чем на самом деле есть. Поэтому порой виртуалка, в отсутствие доступных ресурсов, намертво встает даже для выполнения каких-то мелких и нетребовательных задач.
VPN с такими результатами работы уже не доверишь.
GennPen
Не доверяю всем хостингам которые поштучно выдают IPv6 адреса.
Olegun
Можно узнать причину? Или увидеть ссылку на статью/обоснование?
yoz
Обоснование простое. Возможное количество ipv6 адресов очень большое. Обычно выдают подсетями по маске. Всем удобнее-проще-безопаснее.
50 адресов - экономия на спичках.
Loxmatiymamont
В IPv6 единица учёта адресов это подсеть. Выдавать их поштучно, это действительно крайне странная затея, в массе своей показывающая, что хостингом управляют люди подзастрявшие в реалиях устаревших технологий. Сейчас даже домонеты выдают всем желающим /64. Некоторые даже больше, если попросить.
raamid
Может быть они выдают их *не подряд* для того, чтобы уменьшить вероятность блокировки. Я не знаю, возможно ли такое, чтобы например клиент 1 получил по одному адресу из первых 50 пулов, клиент 2 тоже по одному адресу из первых 50 пулов и т.д.
ValdikSS
Это всё тянется из ограничений софта/панели — они не позволяют простым способом выделить подсеть на VPS.