В связи с последними событиями в России хочу рассказать вам о классном self-hosted VPN-сервере. После простой установки, без особого труда и углубленных знаний вы сможете создавать пользователей, генерировать VPN-профили и смотреть графики использования сети.
А обеспечив VPN-подключением себя и ваших близких, вы можете попробовать разделить траты за виртуальный сервер с вашими друзьями и знакомыми.
В результате чего пятидоллоравая VPS'ка может превратится в мощный инструмент обхода блокировок
Обзор
На самом деле Pritunl — это надстройка над OpenVPN с красивой web-мордой, которая легко устанавливается и сразу работает. Для подключения сгодится любой openvpn-клиент, а для десктопов предусмотрен отдельный штатный клиент.
Говорить тут больше особо не о чем, лучше приведу вам несколько скриншотов:
Список профилей:
График использования:
Логи сервера:
Установка
Установка крайне проста и с ней может справиться даже любой начинающий энтузиаст:
- Для начала вам нужно купить VPS-сервер где-нибудь за пределами вашей страны.
- На этой VPS достаточно выполнить команды описанные в руководсвте.
- После этого можно продолжить настройку через веб-интерфес.
- Если у вас есть доменое имя с настроенной A-записью, можете указать его в настройках, для него автоматически будет получен Letsencrypt-сертификат.
Вот так легко и не принужденно можно получить свой собственный VPN-сервер.
Подключение
- Для каждого пользователя нужно создать отдельный профиль в Pritunl.
- Ссылку на профиль (или сам профиль) необходимо отправить пользователю.
- Пользователю достаточно открыть этот профиль приложением и нажать подключиться.
Рекомендуемые клиенты:
- Для Android:
- Для iOS:
- Для Windows, Mac и Linux:
Помоги всем. Обеспечь VPN себя и своих друзей.
Комментарии (78)
Softer
11.05.2018 12:53Если это надстройка над OpenVPN — зачем отдельный клиент на десктоп?
kvaps Автор
11.05.2018 13:00Для простоты настройки, многим проще вставить ссылочку в клиент нежели скачивать и импортировать какой-то профиль.
Но это дело вкуса конечно, на linux я использую NetworkManager с плагином для openvpn.
immaculate
11.05.2018 13:14У сервиса AirVPN тоже есть десктопный клиент для Windows и Linux. Для мобильных ОС не вспомню, но помню, что без труда настроил использование их VPN у себя на телефоне с Android.
cooladmin
11.05.2018 13:32Неплохая альтернатива для OpenVPN AS получилась.
Правильно понимаю, что никакой финансовой модели не просматривается? (ни лицензий, ни суппорта, ни +\super\turbo\advanced версии?)kvaps Автор
11.05.2018 13:43Ну, у них есть версии с поддержкой и расширенным функционалом.
Pricingnafigat
11.05.2018 14:12Есть ли возможность перенести сертификаты имеющегося сервера OpenVPN на сервер Pritunl? Или как-то «накатить» Pritunl на существующий сервер OpenVPN?
valery1707
11.05.2018 14:16Тоже интересует этот вопрос.
Есть сервер streisand — можно ли к нему подключить Pritunl и получать удовольствие?Vovanys
11.05.2018 19:14+1Нет просто так накатить не получится.
Нужно заново все создавать. Но ключи и т.д. можно попробовать подпихнуть в бд mongo. Он там все настройки хранит.
wilderwind
11.05.2018 14:32Для себя и друзей подойдёт и простой pptpd на бубунте, поднимается с полпинка на самом дешёвом минимальном VPS, никаких специальных клиентов, всё уже встроено и в Android, и в Windows. Конфиг лежит в паре файлов, акки заводятся открытым текстом в chap-secrets. Вряд ли типичному пользователю нужны все эти ключи, Диффи-Хеллманы и монструозное шифрование в 4096…
gudvinr
11.05.2018 15:27К сожалению, некоторые сети просматривают трафик при помощи DPI и даже openvpn до версии 2.4, который не завернут в tls, обрубается в таких сетях. Не говоря о pptp
dmitry_dvm
11.05.2018 14:44Какие преимущества от решений на openvpn по сравнению с IPsec ikev2, например? Во втором случае вообще клиенты не нужны, на всех актуальных осях работает из коробки.
IgorGIV
11.05.2018 15:32А как сейчас обстоят дела с клиентом l2tp/ipsec под линукс?
dmitry_dvm
11.05.2018 16:18-1Я не специалист, но насколько знаю — всё поддерживается и работает так же из коробки.
Serge78rus
11.05.2018 16:38всё поддерживается и работает так же из коробки
Где-то год или два назад безуспешно пытался подключиться клиентской машиной с Debian к l2tp/ipsec серверу на винде. Может дело в кривизне моих рук, но очень хотелось бы доходчивой инструкции по открыванию этой «коробки». Все, что нашел тогда в интернете — реализовывалось на давно протухших версиях openswan/strongswan.
IgorGIV
11.05.2018 18:31Из коробки клиента под l2tp/ipsec нету, что удивительно. Думал, может Вы посоветуете простое решение/клиент для него.
dmitry_dvm
11.05.2018 22:28Не скажу про l2tp, но ikev2 настраивается буквально в несколько строк в strongswan.conf или ipsec.conf, в зависимости от дистра.
m0nym
12.05.2018 20:36Ага.
И потом не работает на половине платформ.
Завести его на Win 7 не удалось вообще
На Android — только через родной клиент Strongswan
На Win 10 — да, работает.
Silvarum
11.05.2018 17:23Для OpenVPN нужен один любой порт. IPSec нуждается в нескольких фиксированных портах (500 для IKEv2, 50 для ESP, 4500 для NAT traversal). Следовательно, заблокировать OpenVPN труднее.
Теоретически, IPSec может жрать меньше ресурсов за счёт работы на уровне ядра, но на практике разницы не замечал.
Barafu_Albino_Cheetah
11.05.2018 18:05Из коробки, но не очень. Например в Win10 подключиться-то можно, а чтобы настроить автозапуск — добро пожаловать в коммандную строку с нужными заклинаниями. А чтобы настроить защиту при отключении — только внешний файрволл ставить.
На Андроиде требуется устанавливать пароль на экран. Мне пароль не нужен…
Так что в итоге всё равно сторонние клиенты лучше работают.
throttle
11.05.2018 14:47Gateway links
Create a gateway link to route traffic for a local network to a vpn client. Allowing the vpn clients to access the remote network that is available to the linked vpn client
Я правильно понял — они берут деньги за директивуiroute
в ccd?
lex_dev
11.05.2018 15:53Было бы неплохо узнать мнения по поводу того, как определить подходящую конфигурацию сервера под определенное количество людей (допустим, сразу на максимальной нагрузке, т.е. когда все сидят через впн одновременно). Т.е. какая конфигурация подойдет лучше под 10 человек, а 20?
lug32
11.05.2018 15:53Подскажите пожалуйста, никто не встречал аналогичного, но только для настройки прокси?
да, знаю, легко и в сети куча манулов, но хотелось бы чтобы с админкой и прочим и чтоб одна красная кнопка
dimatl
11.05.2018 16:23Было бы интересно узнать мнение знающих людей про SSTP, он как-то вроде сильно похож на обычный https, и не смотря на родителя есть вроде и под линукс реализация.
Vovanys
11.05.2018 19:26К openvpn прикручиваете stunnel и отлично работает. DPI думает что это обычный ssl трафик. Проверено там где openvpn не работал вообще.
dimatl
11.05.2018 19:39Опять же, было бы интересно. Но это какая-то абстракция над впн, sstp всё таки более приземлённый и простой.
Darkhon
12.05.2018 02:56Не пробовали вместо этого использовать <tls-crypt> в современных версиях OpenVPN? В мануале заявляется, что это затрудняет обнаружение OpenVPN, но хотелось бы узнать достоверно, насколько это помогает на практике
konchok
12.05.2018 08:51У SSTP всё плохо с клиентами для смартфонов и это не то чтобы прям https, китайский DPI детектит его почти сразу.
Macilnor
11.05.2018 16:34А есть что нибудь подобное только с IKEv2 или L2TP и чтобы клиенты за NAT нормально работали? А то на домашнем интернете Билайн OpenVPN как то очень уж плохо работает, подключается но никакие сайты не грузит.
kvaps Автор
11.05.2018 16:55А есть что нибудь подобное только с IKEv2 или L2TP
Можете попробовать посмотреть в сторону Mikrotik's Cloud Hosted Router.
чтобы клиенты за NAT нормально работали? А то на домашнем интернете Билайн OpenVPN как то очень уж плохо работает, подключается но никакие сайты не грузит.
Мне кажется у вас что-то не так с конфигурацией OpenVPN было, должно без проблем работать за NAT.
konchok
12.05.2018 08:57На Микротике IKEv2 до недавнего времени был один сплошной глюкодром, ветки на их форуме можно изучить. Но что ещё хуже, для немикротиковых клиентов ему нужен внешний сервер аутентификации — тот же StrongSwan итд
Macilnor
12.05.2018 11:45Я пробовал IKEv2 и L2TP на Strongswan — там не получилось подключиться одновременно с двух компов за одним роутером. А OpenVPN хорошо работал через Мастертел, а через Билайн подключался но данные не передавал от слова совсем так что на подключение двух клиентов я его даже не проверял.
Barafu_Albino_Cheetah
11.05.2018 18:10Shadowsocks попробуйте или Wireguard. OpenVPN могут тормозить, особенно на мобильном.
Newcss
11.05.2018 20:18На домашнем билайне поднимал сию программулину. Все работало. У вас скорее всего запрещен трафик во внешний мир, там в настройки галочку нужно поставить. У билайна и так l2tp, под ним openvpn работает очень и очень странно, по крайней мере — картинку с видео камеры на другом конце получить проблема была. Перешел на SkyNet и ценник ниже и качество интернета выше на голову.
wild_one
11.05.2018 17:48+1Наткнулся на замечательный проект Streisand.
Streisand (https://github.com/StreisandEffect/streisand) автоматически, используя Ansible (открытый инструмент для развертывания сервисов), настраивает для Вас на выбранном вами сервере или VPS сразу несколько сервисов, предназначенных для обхода цензуры и обеспечения приватности в Сети.
Настраиваются серверы OpenVPN, Shadowsocks, мост (bridge) для Tor, Openconnect (ocserv) и прочее. Рядом ставится понятный веб-интерфейс для легкого управления.
TL;DR: автоматическая развертывалка машины для борьбы с РКН и прочими. Надо только осилить поставить Ansible, скачать Streisand и натравить его на купленную VPS. Не "нажать пару кнопок", но уже гораздо лучше, чем настраивать весь этот ворох софта вручную.
Перевода на русский пока нет (кроме README), но я над ним работаю.
Self_Perfection
11.05.2018 18:09Ну такое. Я пробовал натравить на OpenVZ виртуалку, а оно сказало "кря" и сломалось. Вместо того чтобы настроить хотя бы часть сервисов, которые могли бы жить в этих условиях.
wild_one
11.05.2018 18:36Багрепорт? Я думаю, штука полезная.
Она, например, поднимает скрытый сервис в Tor, к которому можно подключиться и скачать себе (друзьям) конфигурации для VPN.
ky0
11.05.2018 21:59Потому что в контейнерах с OpenVPN вообще всё довольно сложно, хотя бы из-за того, что может быть недоступен по умолчанию какой-нибудь модуль ядра.
Sabubu
12.05.2018 15:00-1Наверно потому, что в OpenVZ нельзя настраивать iptables и ipsec. Это вообще довольно плохая технология (например, в ней так настроен учет памяти, что ее расходуется раза в 2 больше чем на KVM).
OpenVZ годится для хостинга сайта, но не для чего-то более сложного. Я виртуалки с OpenVZ никогда не покупаю.Self_Perfection
12.05.2018 16:49+1Вы в принципе никогда не покупаете или когда-то всё-таки пробовали и не понравилось? Возможно, вы недооцениваете OpenVZ. Таблица filter в iptables у меня вполне настраивается. Использование памяти пока совершенно не оправдывает мои худшие опасение.
Да и вообще, задачи, под которые я VPS он вполне выполняет. Претензия к streisand. ShadowSocks и много другое успешно работало бы и в OpenVZ контейнере.
valery1707
11.05.2018 18:24Да вроде README вполне хватает чтобы запустить это на своём сервере.
Единственное что мне было не ясно — логин+пароль для доступа к веб-интерфесу, но это довольно легко обнаружилось.wild_one
11.05.2018 18:36Я перевожу странички для встроенного веб-сервера. Чтобы можно было сказать человеку "вот тебе URL и пароль, а ты там уже сам разберешься, как скачать сертификат и зацепиться".
А то на английском не комильфо.
Vovanys
11.05.2018 19:03Не плохо в целом. Можно много серверов на одном создавать. IPV6 умеет из коробки.
Есть расширенные настройки. Есть скачивание готовых профайлов как в streisand.
LetsEncrypt сразу для web морды.
Pusk1
11.05.2018 20:44Клиент OpenVPN для Android неудобен, мягко говоря. Файл с ключами — слишком долгая история для обхода блокировок. После того, как я поднял Pritunl роскомнадзор IP через неделю заблокировал сайт. Переезд на другой IP это новые ключи. Даже при наличии доменного имени.
Установка Pritunl и его администрирование — это просто сказка. Настоятельно рекомендую, если OpenVPN вам подходит.vconst
11.05.2018 22:16+1Я поражаюсь таким заявлениям…
Человеку дают файл, он автоматически открывается клиентом, без всяких трудов от пользователя. Потом только нажать одну кнопку в программе. Или ещё проще — сделать два ярлыка для коннекта и дисконнекта…
decomeron
11.05.2018 20:49Для iOS:
OpenVPN Connect
Читаю в коммментариях на апсторе-не работает. Может есть что то еще?
Space_Cowboy
11.05.2018 21:39Удивлен почему до сих пор не было неичего подобного под опенвпн, Достаточно удобная вещь для бытовых целей, осталось убедиться что твои сертификатики не отправляет куда не нужно)
super-guest
11.05.2018 22:15Если хотите, чтобы это стало популярным, то вот этот пункт нужно раскрыть подробнее:
1. Для начала вам нужно купить VPS-сервер где-нибудь за пределами вашей страны.
GennPen
11.05.2018 22:19+1vds.menu или poiskvps.ru например, выбираете нужную страну, параметры. Не ради рекламы, первое что нагуглилось.
rostislav-zp
12.05.2018 00:22Отличная статья, как и множество других на эту тему на сайте.но для настройки vpn на своем сервере нет описания того, как настраивать порты.во всех видео, во всех инструкциях одно-ставим линукс, качаем то и то.Но не работает же так ничего.на cloud google как не пытался порты пробросить на сервере, так и не смог.может кто-то знающий может носом ткнуть на нужное обсуждение?
Alexsey
12.05.2018 00:51Большая часть статей расчитана на классические vps, которые смотрят в интернет без ограничений и внешних фаерволов. На облаках все совсем иначе. В случае с гуглом попробуйте так:
Go to cloud.google.com
Go to my Console
Choose you Project.
Choose Networking > VPC network
Choose «Firewalls rules»
Choose Create Firewall Rule
To apply the rule only to select VM instances, select Targets «Specified target tags», and enter into «Target tags» the tag which determine to which instances the rule is applied. Then make sure the instances have the network tag applied.
To allow incoming TCP port 9090, in «Protocols and Ports» enter tcp:9090
Click Create
AhJong
12.05.2018 02:59Я так экзамены по матану сдавал, когда билет не помнил, как Вы статьи пишете — «а здесь, с помощью элементарных математических преобразований, получаем такой результат».
kvaps Автор
12.05.2018 03:13Ну статья скорее обзорная чем туториал, так что тот кому нужно — поймет, а кто не поймет — нагуглит.
Дословно описывать каждое конкретное действие — не вижу смысла.
konchok
12.05.2018 09:06+1Только тут нужен не просто первый попавшийся VPS, а VPS на котором нормально работают tun/tap, NAT итд А это уже другая история, требующая всё-таки минимального понимания происходящего. Поэтому OpenVPN считаю не очень подходящее решение для прям совсем начинающих обходителей блокировок.
AquiHostStrider
12.05.2018 12:48-1Интересная штука, но всё равно для работы с ней необходимо понимание работы OpenVPN, а для тех, кто понимает механизм его работы, такие штуки и не особо-то нужны.
Самый лучший обход блокировок — собственный оптоволоконный кабель, прокинутый через госграницу. Заглублённый под землю метров хотя бы на 10. (Есть мнение, что ещё более лучший вариант — проезд своим трактором через эту самую госграницу в один конец, но дабы не загромождать дискуссию много раз обсуждавшейся темой, этот вариант здесь давайте рассматривать не будем.) Посему, хочется портативный проходческий комбайн размером с чемодан, который сзади себя сразу бы обделывал микротоннель камнем и оставлял рельсы, по которым можно было бы сзади подкатывать роботизированные вагонетки для выгрузки выкопанного грунта. Не знаю только, если такой комбайн наткнётся на скрытую полость/пещеру и свалится в неё, или попадёт в подземный водоём.
Вопрос к геологам: какие на сегодня существуют самые маленькие проходческие комбайны? (Гугл какую-то фигню выдаёт, извините.)
fennikami
13.05.2018 21:35Огромное спасибо автору! Давно искал что-то подобное OpenVPN AS, но вот наконец-то! Пишу с туннеля :)
Nengchak
14.05.2018 02:32Здравствуйте. Как я понимаю, этот клиент работает только с pritunl? А есть ли клиент для openvpn/возможность создать установщик уже готовым конфигом и одной кнопкой — ПОДКЛЮЧИТЬ?
institor
Вот только надо еще найти VPS с адресом не в заблокированной подсети :(
Zava
Я воспользовался Scaleway и наследующий день попал в блок РКН. Но поигравшись с местным «генератором» IP сумел найти и зарезервировать два адреса в разных не заблокированных подсетях. Установил образ с OpenVPN и поставил dante — socks5 proxy. Сейчас все работает.
UPD: добавлю, что обладаю весьма поверхностными знаниями. Но достаточно уметь читать не хитрые инструкции и документации, — и сможет справится с задачей любой человек, способный понять с какой стороны включается компьютер.
hashtet
Зря видимо сюда пишем, но так же зарегистрировался и через день мой IP попал в блок, не разобравшись написал им в саппорт, и в догонку сам же написал, что всё нормально — это наше е**чее правительство.
Они ответили, что да… сочувствуем, а ещё через день сами написали, мол «мы нашли тут вам хорошие IP — смотрите в личном кабинете». Поддержка на высоте, в общем.(но у меня пока на амазоне всё работает)
Zava
Я думаю нас накрыло после поста про веерные блокировки, где в комментариях рассказали про ScaleWay, в тот же день Дуров воспользовался там несколькими IP, около 5 штук, которые были конкретно указаны в реестре, а следом вся подсеть 51.15.0.0/16.
PS: в смысле Дуров не узнал из комментов про scaleway =) а просто нам не повезло, ну вы поняли )
Кстати до сих пор блокируют, отпустили только Амазон и Гугл
Barnaby
А вот мне не нашли. Смог получить из другой подсети в Париже, но не в Амстердаме.
m0nym
Любой мелкий хостер, не облачный, без API — то есть те, которые не интересны Телеграму.
Rampages
Можно использовать digitalocean (ссылка с рефералом и дает вам $10 на пробу). Если IP вашего «дроплета» не открывается, то просто создаете новый «дроплет», а старый удаляете. Самый дешевый «дроплет» за $5 имеет 1Тб трафика на месяц, дополнительный трафик будет стоить $.01/GB, более подробно.