Серверы по созданию мануалов

Предисловие

Я один из тех, кто использует VPN и для серфинга, и для работы.Тут нужна и скорость и бесперебойность. За последний год я перепробовал около десятка сервисов которые не могли похвастаться ни тем, ни другим. Ряд из них просто перестал работать, а некоторые и вовсе остановил работу на Российском рынке (например Касперский).

Основная цель

В связи с этим я заинтересовался поднятием своего сервиса на базе Российского хостинга с минимальным количеством приседаний и потраченных рублей.

Введение

Актуальность темы подтвержу цифрами взятыми с GoogleTrends.

интерес пользователей поисковика Google к VPN (за последние 5 лет)

интерес пользователей поисковика Google к VPN (за последние 5 лет)

Очевидно, что тренд выходит на качество новый уровень интереса. По России, плюс/минус такая-же картина. Интерес к VPN обгоняет даже React.js.

интерес пользователей поисковика Google к VPN и React.js (за последние 5 лет)

интерес пользователей поисковика Google к VPN и React.js (за последние 5 лет)

Хотя конечно есть темы и попопулярнее.

интерес пользователей поисковика Google к VPN, React.js и всякому разному (за последние 5 лет)

интерес пользователей поисковика Google к VPN, React.js и всякому разному (за последние 5 лет)

Я буду настраивать VPN на базе хостинга TimeWeb так как пользуюсь их сервисом с 2014г. Мне нравится панель, быстрая обратная связь и набор услуг которые они предоставляют

Шаг 1 — поиск подходящего хостинга / создание аккаунта

Так как я зарегистрирован и у меня есть активный «план», то я просто кликаю на кнопку «Вход для клиентов»

главная страница

главная страница

Затем кликаем на кнопку VDS/VPS Серверы (слева внизу)

Открывается модальное окно с запросом на регистрацию

После клика на кнопку произойдет два действия — отправится письмо на почту с данными вашего нового аккаунта и переход на страницу панели Cloud

Переходим на новое окно, я сразу переключил на темную тему (хорошо бы и на хабре такую получить). Удаляем облачный сервер который создался автоматически (в моем случае это Honest Maxwing). Иначе когда будете на этапе оплаты, то вам накинут пару десятков тысяч рублей. Я сначала не заметил и потом не сразу понял за что с меня столько хотят взять

Шаг 2 — покупка нужной конфигурации сервера

Жмем кнопку «Создать» -> «Облачный сервер». Переходим на окно конфигурации сервера. Я себе накликал следующие параметры (scalable NVMe, и плюс бэкапы)

Жмем кнопку «Заказать» и оплачиваем

Ура, у нас появился облачный сервер

На почту должно придти письмо с данными доступа

Переходим на главную страницу

Кликаем на новый сервер. Я его назвал VPN. Статистика пока по нулям

Шаг 3 — установка VPN на компьютер

Проходим на Github для того, чтобы скачать amnesia клиент. В моем случае актуальная версия — 2.1.2. Скачиваем нужный дистрибутив и устанавливаем. Вцелом там нужно кликнуть пару раз кнопку «Далее»

Появляется мастер настройки

Кликаем на кнопку «Setup your own server» и вписываем в поля данные которые пришли в последнем письме. Жмем кнопку «Connect»

Нажимаем «Run setup wizard»

Дальше жмем пару раз кнопку «Next» ничего не меняя пока не встретите кнопку «Start configuring»

Операция настройки может занять несколько минут

Как только настройка завершиться вы увидите следующее окно. Теперь нам нужно добавить новый протокол. Жмем на строчку напротив Proto

Тут стоит стрелочка напротив OpenVpn. Снимаем ее и добавляем новый — я добавлю WireGuard. Я его выбрал руководствуясь данной статьей

.

Протокол установлен и настроен. Возвращаемся на главную

Жмем кнопку «Подключиться»

Давайте сходим куда-нибудь, проверим

Ура, на компе работает

Шаг 4 — установка VPN на телефон

Устанавливаем на телефон приложение WireGuard (Iphone, Android). В моем случае я ставлю на iPhone но там нет разницы. Но прежде чем пойдем «туда», давайте сгенерируем конфиг для настройки VPN. Кликаем опять на строчку наротив Proto и кликаем на протокол WireGuard

Далее кликаем на иконку «Поделиться»

«Share for WireGuard» -> «Generate config»

Все, этот QR код не закрываем. Он нам пригодится для настройки VPN на телефоне.

Идем в магазин приложений, устанавливаем WireGuard -> «Add a tunnel» -> «Add from QR code» -> «Allow» -> называем свое соединение как вам угодно -> включаем VPN и проверяем его. Ура, работает )

 (

(

Кстати, статистика в панели вашего cloud сервера уже должна обновиться. Пики показывают на тот момент где мы настраивали соединение. Потом оно так сильно уже не скачет

Заключение

В результате проделанной работы вы настроете VPN который вполне годится как для серфинга, так и для работы

Потратили

  • ~10 минут

  • 2279 рублей

Благодарности

  • @a_povalза грамматические правки

  • всем кто оставил комментарии

  • всем кто проголосовал

Спасибо всем за участие, буду более ответственно подходить к теме и содержимому. Статью оставлю, будет мне напоминанием о том как писать не нужно :)

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

Стоит ли публиковать подобные посты?


16.24%
хочу посмотреть результаты
32

Проголосовали 197 пользователей.

Воздержался 21 пользователь.

Данная инструкция позволит вам самостоятельно создать свой собственный VPN-сервер и настроить VPN-соединения на iPhone, iPad и Mac. Вы получите доступ к заблокированным в стране ресурсам, а также скроете ваш трафик от злоумышленников, провайдеров и спецслужб.

Последнее обновление статьи: 22 марта 2022 года.

Инструкция была обкатана и проверена сотни раз и гарантированно сработает без каких-либо ошибок, если вы будете ей следовать. Актуальна для всех версий macOS, вплоть до macOS Monterey, а также всех версий iOS, вплоть до iOS 15.3+.

Настройка займет от 15 минут времени, в зависимости от скорости вашей работы.

Оглавление:

  • Преамбула
  • Немного теории: как работает VPN
  • Плюсы использования VPN
  • Недостатки VPN
  • О коммерческих VPN-сервисах: NordVPN, ExpressVPN, Cyberghost, и почему не стоит их использовать
  • В какой стране поднять свой VPN-сервер
  • Выбираем хостера и инструментарий
  • Сама инструкция по созданию собственного VPN-сервера на базе Linux Debian

Преамбула

В январе 2019 года я путешествовал по Азии. Находясь в Гуанчжоу, мне не удалось получить доступ к Google, YouTube и ряду других популярных сервисов. Они в принципе не работают на территории Китая и заблокированы правительством.

Помимо этого, в путешествиях вообще всегда есть определенная проблема с безопасным доступом в Интернет. Не всегда удается купить местную SIM-карту, поэтому приходится подключаться к Wi-Fi-сетям отелей, аэропортов и кафе. Фактически, мы ничего не знаем об этих сетях: кем они были созданы и насколько надежны.

То же самое и в родной стране. Если вы беззаботно подключаетесь к Wi-Fi-сети кафе, то у меня для вас плохие новости. Возможно прямо сейчас весь ваш трафик прослушивается злоумышленниками за соседним столиком.

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

Использование VPN — оптимальное решение двух обозначенных проблем сразу. Мы получаем доступ к заблокированным в стране ресурсам, а по пути еще и защищаем себя от прослушки.

Реализовать VPN можно двумя способами:

  • Воспользоваться коммерческим VPN-сервисом, например, Nord VPN.
  • Создать свой VPN-сервер.

Для меня использование коммерческого VPN было в принципе неприемлемым решением, и по ходу статьи я объясню почему я категорически не рекомендую пользоваться подобными сервисами. А так как я уже имел навык настройки серверов на Linux, я решил поднять собственный VPN-сервер: размять пальцы, прокачать скилл.

Однако, побродив по Интернету, я не нашел ни одной нормально работающей инструкции: все они были либо с ошибками, либо были заточены под слишком специфические кейсы, что не подойдет для обычного пользователя. Поэтому, я решил написать свою.

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

Инструкция написана для широкого круга читателей, однако, предполагает хотя бы минимальные знания Linux на уровне начального пользователя, который умеет обращаться с базовыми командами консоли (это правда очень и очень просто!). Настройка займет от 15 минут времени, в зависимости от скорости вашей работы.

К сожалению, Windows и Android в данной статье не рассматриваются, поскольку Windows последний раз я пользовался лет 15 назад, а Android — вообще совокупно 2 часа за всю жизнь, поэтому не представляю, что и как как сегодня все устроено в этих ОС. Не исключаю, что подходы, описанные здесь, сработают и для них. Инструкция в первую очередь создана для пользователей iPhone, iPad и Mac.

Сначала будет немного теории для понимания происходящего, желающие же сразу могут перейти к инструкции.

Немного теории: как работает VPN

С помощью вашего обычного интернет-соединения между вашим устройством и VPN-сервером устанавливается специальное соединение — VPN-туннель. Все передаваемые и получаемые данные в этом соединении шифруются. С этого момента вся ваша сетевая активность осуществляется через данный туннель, а не через основной канал провайдера, и вы пользуетесь Интернетом как бы с самого VPN-сервера, а не с вашего устройства.

Для простоты понимания можно представить, что основной канал провайдера — это большая труба, а внутри этой трубы вы прокладываете свою собственную, защищенную, отсекая всем доступ в нее. И через эту трубу попадаете на свой сервер и сидите в Интернете как бы со своего сервера: там, где он физически располагается. That’s all.

Для вашего провайдера, администратора Wi-Fi-сети или же злоумышленников, которые сканируют трафик в Wi-Fi-сетях, вся ваша сетевая активность выглядит как одно единственное соединение к одному единственному IP-адресу — адресу вашего VPN-сервера. Это все, что они видят. Что же именно происходит внутри этой вашей трубы, они не знают и не узнают.

Случаи взлома VPN-туннеля (вашей трубы), при условии, что применяются нормальные алгоритмы шифрования и все настроено корректно, мне не удалось найти. Можно попробовать взломать и сам VPN-сервер и получить доступ к вашему трафику уже на нем, но это так же весьма сложная задача, и при условии нормальной защищенности сервера, стремится к невыполнимой. Никто просто не будет этим заниматься.

Плюсы использования VPN

  • VPN полностью скроет ваш трафик от прослушки при подключении к ненадежным (не лично вашим) Wi-Fi-сетям, и особенно полезен в путешествиях. Ни администратор Wi-Fi-сети, ни злоумышленники, сканирующие трафик, не смогут понять на какие сайты вы ходите, какие данные передаете или получаете.

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

  • VPN позволяет скрыть трафик от интернет-провайдера и, соответственно, от спецслужб. В России уже имеются прецеденты посадки людей в тюрьмы за комментарии в соцсетях, а согласно «закону Яровой» весь ваш трафик и сетевая активность записываются сроком на 1 год. Некоторые считают, что законопослушному гражданину бояться вроде бы нечего, однако, на мой взгляд, это существенное упущение в персональной безопасности. Кто знает, как изменится ваша личная ситуация или ситуация в стране. Вполне возможно, что в один прекрасный день к вам придут и предъявят обвинения за посещение неугодного правительству сайта. В конце концов, зачем вам давать кому-то больше информации о себе, если можно дать меньше? Соответственно, с использованием VPN, будет совершенно невозможно установить характер вашей интернет-деятельности.

Однако, не стоит воспринимать VPN как панацею. Тем паче не стоит думать, что с использованием VPN вы можете начать заниматься хакингом, ломать сети и воровать кредитки, как это часто показывают в популярных кинофильмах, а ля Mr.Robot. Во-первых, такая деятельность в принципе незаконна. Во-вторых, вас очень быстро обнаружат, обратившись к хостеру, у которого размещен ваш VPN-сервер, и последний сдаст ваши реальные координаты с потрохами. В-третьих, для этого существуют совершенно другие методы и подходы.

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

Недостатки VPN

  • Некоторые сайты начнут загружаться на языке страны, в которой располагается VPN-сервер. Однако, это легко исправить. Чаще всего мы приходим на какие-либо сайты через поиск в Google, и достаточно один раз настроить его выдачу на нужные вам языки, и с этого момента вы будете направляться на сайты с нужной вам локализацией. В конце концов, всегда можно выбрать другой язык на самом сайте.

  • Вы увидите рекламу для страны, в которой расположен ваш VPN-сервер. Какие-то площадки уже научились понимать, что на самом деле вы русскоговорящий пользователь и находитесь совсем не в Германии, однако, YouTube, например, по-прежнему этого не умеет и шпарит видео-рекламу на немецком даже при принудительной установке страны в настройках. Иногда это даже интересно: можно посмотреть какие продукты и услуги сейчас актуальны в других странах.
  • Некоторые сервисы, например, Амедиатека или Авито блокируют доступ с нероссийских IP-адресов, поэтому VPN при их использовании придется на время отключать. Опять же, для Амедиатеки есть хак: достаточно выключить VPN, запустить видео в сервисе и сразу же включить VPN обратно. Видео будет проигрываться дальше.
  • Снизится скорость загрузки сайтов. По замерам это действительно так, однако, на практике падение скорости для обычного пользователя настолько незначительно и усредняется (ведь какие-то ресурсы наоборот начнут загружаться быстрее), что данным недостатком в целом можно пренебречь.

  • В играх, критичных к пингу, а ля CS:GO, VPN придется выключать.

О коммерческих VPN-сервисах: NordVPN, ExpressVPN, Cyberghost, и почему не стоит их использовать

В настоящее время существуют так называемые коммерческие VPN-сервисы — компании, которые предоставляют вам свои VPN-сервера за определенную месячную плату. Например, NordVPN, ExpressVPN, CyberGhost и прочие.

На мой взгляд, использование подобных сервисов, несмотря на их предназначение, еще больше снижает безопасность ваших данных. Все просто: эти компании видят весь ваш трафик. Все, что вы получаете и передаете, на какие сайты ходите, какими сервисами пользуетесь. Конечно, все они заявляют о том, что не хранят клиентские логи и данные, однако, это невозможно проверить на практике. Более того, некоторые VPN-сервисы изначально были созданы именно для того, чтобы воровать ваши данные, и, по-факту, это является их основной «бизнес-моделью».

Кроме того, вы получите большие пинги и существенные просадки в скорости. Ведь на одном VPN-сервере располагаются тысячи таких же клиентов, как и вы.

Таким образом, использование коммерческих VPN-сервисов «для всех» абсурдно само по себе. Лучше уж тогда вообще не использовать никакой VPN, чем сливать свои данные неизвестно кому.

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

В целом: не делайте этого.

В какой стране поднять свой VPN-сервер

Выбирайте страну для размещения VPN-сервера исходя из следующих критериев:

  • Кратчайшее расстояние до вас: это обеспечит наименьший пинг и просадки по скорости.
  • Минимальное количество запретов на свободу Интернета, доступность любых популярных мировых сервисов в этой стране.
  • Наименьшая политическая напряженность между вашей страной и страной VPN-сервера. В этом случае ваш трафик теперь уже с VPN-сервера не будут читать спецслужбы другого государства. Наверное :) Но здесь палка о двух концах. Например, многие российские пользователи предпочитают располагать VPN-сервер в Великобритании именно из-за высокой напряженности между странами, ведь в случае чего, последняя ни за что не сдаст ваш трафик российским спецслужбам. Поэтому, данный подход также может быть оправданным.

Для российских пользователей в целом подходит любая страна Евросоюза, однако, практика показывает, что лучшим решением является Германия: минимальный пинг, высокая скорость и великолепная доступность любых мировых ресурсов.

Выбираем хостера и инструменты

Выбираем хостера

Внимание!

С 8 марта Amazon Web Services (AWS) закрыл регистрацию аккаунтов из России. Услуги же прочих зарубежных хостеров невозможно оплатить из-за неработающих карт Visa/MasterCard.

Рекомендую попробовать хостера VDSina.ru по моей партнерской ссылке, у них есть серверы в Нидерландах. Данная инструкция не зависит от хостера и сработает на любой площадке, просто делайте все по образу и подобию.

Для того, чтобы создать свой VPN-сервер, нам нужно арендовать виртуальный сервер (Virtual Private Server) у одного из хостинг-провайдеров. На него мы установим Linux и затем настроим его.

Наиболее популярные хостинговые компании сегодня:

  • Amazon Web Services (AWS)
  • DigitalOcean
  • Hetzner
  • Vultr
  • Bluehost
  • Arubacloud
  • и прочие, которые вы найдете в бесчисленных топиках на форумах в духе «где поднять свой VPN-сервер»

Для себя я выбрал AWS. В основном, из-за большого количества доступных географических зон для размещения сервера и высокой стабильности. Многие популярные интернет-сервисы работают на базе AWS, арендуя там сервера для своих нужд, например, Facebook. Компания была пионером в облачных технологиях и, по сути, открыла эту отрасль.

Сегодня AWS предоставляет множество решений для облачных вычислений на любой вкус и цвет, но нам с вами нужна обычная виртуальная машина. Ее мы возьмем в одной из разработок AWS — Lightsail.

Lightsail — это упрощенное решение для создания виртуальных серверов, в отличие от своего старшего собрата EC2. Все завернуто в очень простой интерфейс, в котором разберется даже новичок. И для нашей столь нетребовательной к вычислительным ресурсам задаче как VPN-сервер, AWS Lightsail подходит лучше всего.

Вообще, вы можете арендовать сервер у любой компании. Данная инструкция не сильно зависит от площадки и сработает у любого хостера.

Сколько стоит

Использование VPN-сервера на базе AWS Lightsail будет обходиться вам в $3,5/мес.. За эти деньги вы получаете машину с 512 Мб оперативной памяти. Подобная конфигурация легко справляется с обработкой VPN-трафика с трех устройств, даже если вы нагружаете их по самые помидоры. В комплекте идет 1TB трафика в месяц, сверх нормы — за деньги. Первые три месяца у AWS будут бесплатными.

Почему Debian, а не Ubuntu

Поднимать VPN-сервер мы будем на основе операционной системы Linux Debian, а не Ubuntu, которая довольно часто фигурирует в подобных инструкциях.

Лично я не люблю Ubuntu с самого ее появления из-за какой-то умозрительной нестабильности и общей аляповатости. К тому же, Ubuntu изначально создавалась именно как пользовательская система, а не серверная. Debian же надежен и стабилен как слон. В моей компании мы используем Debian во всех интернет-проектах последние 11 лет и никогда не имели с ним никаких проблем, получая великолепные быстродействие и надежность. С Ubuntu же вечно что-то происходит.

Протоколы VPN-соединения: почему IPsec IKEv2, а не Open VPN

Сегодня существуют разные протоколы VPN-соединения, их детальный разбор выходит за рамки этой статьи. Среди них наиболее популярны IPsec IKEv2 и OpenVPN.

Оба хороши и надежны, но мы будем использовать IKEv2, поскольку у OpenVPN, на мой взгляд, имеется огромный недостаток, который перекрывает его прочие достоинства.

OpenVPN требует установки своего приложения, которое всегда должно быть запущено на устройствах, что, во-первых, неудобно в использовании, а во-вторых, дополнительно жрет процессор и как следствие быстрее расходует батарею iPhone, iPad и, в меньшей степени, Mac.

IKEv2 же вшит в iOS и macOS и является для этих ОС нативным, не требуя установки никакого дополнительного ПО. Так же, считается, что IKEv2 гораздо быстрее и безопасней, чем OpenVPN.

В качестве серверной части мы будем использовать strongSwan — популярный VPN-сервер для Linux.

Готовые скрипты для развертывания VPN-сервера: Algo, Streisand и почему не стоит их использовать

Сегодня существуют готовые решения для развертывания своего VPN-сервера на платформе Linux, например, скрипт Algo (для IKEv2) или Streisand (для OpenVPN), которые нужно просто скачать, распаковать и запустить на сервере. Данные скрипты сами установят и настроят все необходимые пакеты и на выходе предоставят для вас работающий VPN-сервер.

Streisand нам не подходит в принципе, поскольку заточен под OpenVPN. Что же касается Algo, то пробежавшись по диагонали, я увидел, что данный скрипт устанавливает много лишних пакетов, без которых вполне можно обойтись, а также каких-то подозрительных пакетов, неизвестно кем созданных и кем проверенных. Кроме того, Algo устанавливается только на Ubuntu, что нам, опять же, не подходит.

Таким образом, мы будем создавать свой VPN-сервер, используя следующие технологии:

  • AWS Lightsail в качестве виртуального сервера
  • IKEv2 как протокол VPN
  • Linux Debian в качестве серверной ОС
  • strongSwan в качестве VPN-сервера
  • никаких готовых скриптов, всё настроим руками.

Итак, с теоретической частью покончено, приступаем к созданию своего VPN-сервера.

Инструкция по созданию собственного VPN-сервера на базе Linux Debian

Внимание!

С 8 марта Amazon Web Services (AWS) закрыл регистрацию аккаунтов из России. Услуги же прочих зарубежных хостеров невозможно оплатить из-за неработающих карт Visa/MasterCard.

Рекомендую попробовать хостера VDSina.ru по моей партнерской ссылке, у них есть серверы в Нидерландах. Данная инструкция не зависит от хостера и сработает на любой площадке, просто делайте все по образу и подобию.

Регистрируемся в Amazon AWS и подключаемся к серверу

Процесс регистрации в AWS очень прост и вы пройдете его самостоятельно. После регистрации перейдите в Lightsail, выберите гео-зону в которой вы хотите поднять свой VPN-сервер. Создайте новый инстанс, выберите «OS Only» и операционную систему Debian самой высокой версии:

Нам подойдет простейшая машина с 512 Мб оперативной памяти:

Чтобы закрепить за сервером статический IP-адрес и он не менялся после каждой перезагрузки, перейдем в «Networking» и выделим себе Static IP. Назначим его на созданный нами инстанс:

Осталось скачать уже созданный самим Lightsail дефолтный приватный ключ для доступа по SSH. Он находится в разделе «Account > SSH keys»:

Подключаемся

Открываем Terminal в macOS.

В первую очередь, чтобы избежать кое-какой известной проблемы терминала с локалью, зайдем в настройки Терминала, перейдем в Profiles и снимем галочку с “Set locale environment variables on startup”:

Закроем терминал с помощью Cmd+Q и запустим его снова.

Ограничим права нашему скачанному с Lightsail ключу, иначе macOS не позволит его использовать. Исхожу из того, что ключ вы скачали через Safari в папку Downloads. Если нет — подставьте свой путь до папки с ключем.

cd ~/Downloads/
chmod 600 YOUR_DOWNLOADED_KEY.pem

Совет: введите несколько первых символов имени файла ключа и нажмите Tab, терминал подставит остальное автоматически.

И подключимся к нашей Lightsail-машине, вписав вместо YOUR_LIGHTSAIL_IP ее внешний статический IP-адрес, который мы создали в разделе Static IP, а вместо YOURD_DOWNLOADED_KEY имя вашего ключа:

Нас спросят:


Are you sure you want to continue connecting (yes/no/[fingerprint])?

Напишем “Yes” и нажмем Enter.

Нас приветствует радостная надпись, мы подключились:

Обновим Debian

Все манипуляции будем осуществлять из-под пользователя root. Поехали:

sudo su

Обновим индекс пакетов в репозиториях, возможно, есть обновления:

apt-get update

А затем установим эти обновления:

apt-get upgrade

Установим strongSwan

apt-get install strongswan

И набор стандартных плагинов:

apt-get install libstrongswan-standard-plugins

К детальной настройке strongSwan мы вернемся чуть позже, а пока создадим сертификаты доступа, чтобы наши устройства смогли подключиться к VPN серверу.

Создаем сертификаты доступа

Мы будем использовать самозаверенные сертификаты, поскольку VPN-сервером планируем пользоваться только мы. Для того чтобы создать сертификаты, нам потребуется пакет strongswan-pki. Установим его:

apt-get install strongswan-pki

Теперь нам нужно создать корневой сертификат, он же “CA” (Certificate Authority), который выпустит нам все остальные сертификаты. Создадим его в файле ca.pem.

В следующих двух блоках вместо YOUR_SERVER_IP подставляйте внешний IP-адрес машины в AWS Lightsail. Команды вводятся одна за другой:

cd /etc/ipsec.d
ipsec pki —gen —type rsa —size 4096 —outform pem > private/ca.pem
ipsec pki —self —ca —lifetime 3650 —in private/ca.pem
—type rsa —digest sha256
—dn «CN=YOUR_SERVER_IP»
—outform pem > cacerts/ca.pem

Далее создадим сертификат для самого VPN-сервера в файле debian.pem:

ipsec pki —gen —type rsa —size 4096 —outform pem > private/debian.pem
ipsec pki —pub —in private/debian.pem —type rsa |
ipsec pki —issue —lifetime 3650 —digest sha256
—cacert cacerts/ca.pem —cakey private/ca.pem
—dn «CN=YOUR_SERVER_IP»
—san YOUR_SERVER_IP
—flag serverAuth —outform pem > certs/debian.pem

И сертификат для самих устройств в файле me.pem. В следующем блоке ничего (в том числе в “CN=me”) менять не нужно:

ipsec pki —gen —type rsa —size 4096 —outform pem > private/me.pem
ipsec pki —pub —in private/me.pem —type rsa |
ipsec pki —issue —lifetime 3650 —digest sha256
—cacert cacerts/ca.pem —cakey private/ca.pem
—dn «CN=me» —san me
—flag clientAuth
—outform pem > certs/me.pem

Для надежности удалим файл ca.pem, он нам больше не потребуется:

rm /etc/ipsec.d/private/ca.pem

Создание сертификатов завершено.

Настроим strongSwan

Очистим дефолтный конфиг strongSwan командой:

> /etc/ipsec.conf

И создадим свой в текстовом редакторе nano:

nano /etc/ipsec.conf

Вставьте в него данный текст, заменив YOUR_SERVER_IP на внешний IP-адрес машины в AWS Lightsail. Больше в конфиге ничего менять не нужно.

config setup
uniqueids=never
charondebug=»ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2″

conn %default
keyexchange=ikev2
ike=aes128gcm16-sha2_256-prfsha256-ecp256!
esp=aes128gcm16-sha2_256-ecp256!
fragmentation=yes
rekey=no
compress=yes
dpdaction=clear
left=%any
leftauth=pubkey
leftsourceip=YOUR_SERVER_IP
leftid=YOUR_SERVER_IP
leftcert=debian.pem
leftsendcert=always
leftsubnet=0.0.0.0/0
right=%any
rightauth=pubkey
rightsourceip=10.10.10.0/24
rightdns=8.8.8.8,8.8.4.4

conn ikev2-pubkey
auto=add

Внимание! strongSwan требователен к отступам в конфиге, поэтому убедитесь, что параметры каждого раздела конфига отбиты через Tab, как это показано на примере, или хотя бы через пробел, иначе strongSwan не запустится.

Сохраним файл с помощью Ctrl+X и пойдем дальше.

Добавим в файл ipsec.secrets, который является хранилищем ссылок на сертификаты и ключи аутентификации, указатель на наш сертификат сервера:

nano /etc/ipsec.secrets

Вставим в этот файл последней строкой указатель на наш сертификат сервера (да, прям вот так, начиная с двоеточия):

: RSA debian.pem

На этом настройка Strongswan завершена, можно рестартнуть службу:

ipsec restart

Если все хорошо, то сервер запустится:


Starting strongSwan 5.7.2 IPsec [starter]…

Если упадет в ошибку, то можно посмотреть, что именно произошло, почитав логи. Команда выведет 50 последних строк лога:

tail -n 50 > /var/log/syslog

Настроим сетевые параметры ядра

Теперь нам необходимо внести некоторые изменения в файл /etc/sysctl.conf:

nano /etc/sysctl.conf

Через Ctrl+W найдем в файле следующие переменные и внесем в них изменения:

#Раскомментируем (уберем решетку перед параметром) данный параметр, чтобы включить переадресацию пакетов
net.ipv4.ip_forward=1

#Раскомментируем данный параметр, чтобы предотвратить MITM-атаки
net.ipv4.conf.all.accept_redirects = 0

#Раскомментируем данный параметр, чтобы запретить отправку ICMP-редиректов
net.ipv4.conf.all.send_redirects = 0

#В любом месте файла на новой строке добавьте этот параметр, запретив поиск PMTU
net.ipv4.ip_no_pmtu_disc = 1

Сохраним файл через Ctrl+X и подгрузим новые значения:

sysctl -p

Настройка сетевых параметров завершена.

Настроим iptables

iptables — это утилита, которая управляет встроенным в Linux файрволом netfilter. Для того, чтобы сохранить правила iptables в файле и подгружать их при каждом запуске системы, установим пакет iptables-persistent:

apt-get install iptables-persistent

После установки нас спросят, сохранить ли текущие правила IPv4 и IPv6. Ответим «Нет», так как у нас новая система, и нечего сохранять.

Перейдем к формированию правил iptables. На всякий пожарный, очистим все цепочки:

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -Z

Разрешим соединения по SSH на 22 порту, чтобы не потерять доступ к машине:

iptables -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp —dport 22 -j ACCEPT

Разрешим соединения на loopback-интерфейсе:

iptables -A INPUT -i lo -j ACCEPT

Теперь разрешим входящие соединения на UDP-портах 500 и 4500:

iptables -A INPUT -p udp —dport 500 -j ACCEPT
iptables -A INPUT -p udp —dport 4500 -j ACCEPT

Разрешим переадресацию ESP-трафика:

iptables -A FORWARD —match policy —pol ipsec —dir in —proto esp -s 10.10.10.0/24 -j ACCEPT
iptables -A FORWARD —match policy —pol ipsec —dir out —proto esp -d 10.10.10.0/24 -j ACCEPT

Настроим маскирование трафика, так как наш VPN-сервер, по сути, выступает как шлюз между Интернетом и VPN-клиентами:

iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -m policy —pol ipsec —dir out -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE

Настроим максимальный размер сегмента пакетов:

iptables -t mangle -A FORWARD —match policy —pol ipsec —dir in -s 10.10.10.0/24 -o eth0 -p tcp -m tcp —tcp-flags SYN,RST SYN -m tcpmss —mss 1361:1536 -j TCPMSS —set-mss 1360

Запретим все прочие соединения к серверу:

iptables -A INPUT -j DROP
iptables -A FORWARD -j DROP

Сохраним правила, чтобы они загружались после каждой перезагрузки:

netfilter-persistent save
netfilter-persistent reload

Настройка iptables завершена.

Перезагрузим машину:

reboot

И посмотрим работают ли правила iptables:

sudo su
iptables -S


[email protected]
X.XX.XX:/home/admin# iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A INPUT -m state —state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp —dport 22 -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p udp -m udp —dport 500 -j ACCEPT
-A INPUT -p udp -m udp —dport 4500 -j ACCEPT
-A INPUT -j DROP
-A FORWARD -s 10.10.10.0/24 -m policy —dir in —pol ipsec —proto esp -j ACCEPT
-A FORWARD -d 10.10.10.0/24 -m policy —dir out —pol ipsec —proto esp -j ACCEPT
-A FORWARD -j DROP

Да, всё работает.

Работает ли strongSwan:

ipsec statusall


[email protected]:/home/admin# ipsec statusall
Status of IKE charon daemon (strongSwan 5.7.2, Linux 4.19.0-14-amd64, x86_64):
uptime: 71 seconds, since Mar 05 23:22:16 2022

Да, всё работает.

Разрешаем соединения в файрволе Lightsail

AWS Lightsail использует также и свой файрвол для защиты виртуальных машин. Если в нем не разрешить соединения на UDP-портах 500 и 4500, к VPN-серверу нельзя будет подключиться. Выберем наш инстанс в Lightsail, перейдем в «Networking», добавим эти порты и по пути удалим ненужный нам 80-й порт:

Удалите 80-й порт так же и в разделе IPv6 firewall, ниже по странице.

Настройка файрвола Lightsail завершена.

Создаем .mobileconfig для iPhone, iPad и Mac

Мы будем использовать один и тот же VPN-профайл .mobileconfig для всех наших устройств.

Конфиг, который мы сделаем, устроен таким образом, чтобы инициировать соединение “On Demand”. Это означает, что при попытке любой службы или приложения выйти в Интернет, VPN-соединение будет всегда устанавливаться принудительно и автоматически. Таким образом, удастся избежать ситуации, когда вы забыли установить VPN-соединение, например, после перезагрузки девайса, а трафик в итоге пошел через провайдера, что нам совсем не нужно.

Скачаем скрипт, который сгенерирует для нас данный конфиг:

wget https://gist.githubusercontent.com/borisovonline/955b7c583c049464c878bbe43329a521/raw/b2d9dba73da633fcfcca6a03d877517c5b2d9485/mobileconfig.sh

Для того, чтобы скрипт отработал, нам потребуется пакет zsh, установим его:

apt-get install zsh

Отредактируем название сервера по вкусу, а также пропишем внешний IP-адрес машины Lightsail:

nano mobileconfig.sh

SERVER=»AWS Frankfurt»
FQDN=»YOUR_LIGHTSAIL_IP»

Запустим скрипт и на выходе получим готовый файл iphone.mobileconfig:

chmod u+x mobileconfig.sh
./mobileconfig.sh > iphone.mobileconfig

Заберите этот файл с сервера, подключившись по SFTP, например, с помощью Cyberduck. Для подключения используйте тот же ключ от Lightsail, внешний IP-адрес сервера и имя пользователя admin.

Отправьте скачанный файл iphone.mobileconfig на все ваши устройства через Airdrop. Подтвердите на устройствах установку конфигурации.

В macOS профайл устанавливается из System Preferences > Profiles. В iOS он появится в Settings > Profile Downloaded:

Готово! Соединения с VPN-сервером установятся автоматически.

Если захочется временно отключить VPN, чтобы получить доступ, например, к Авито, в macOS зайдите в System Preferences > Network, выберите VPN-соединение и снимите галочку “Connect on Demand”, нажмите Apply.

В iOS: Settings > General > VPN & Device Management > VPN > нажмите на иконку “i” у установленной VPN конфигурации и выключите тумблер “Connect On Demand”. Чтобы вернуться обратно к автоматическому принудительному установлению соединений, соответственно, верните эти галки/тумблеры обратно:

Кстати, в macOS так же стоит поставить галку “Show VPN status in menu bar”. Будет удобно быстро чекать активно ли сейчас VPN-соединение.

Приберемся за собой:

rm mobileconfig.sh
rm iphone.mobileconfig

Если соединения VPN успешно установились, но нет интернета

Скорее всего, ваш хостер переименовал обычно принятый дефолтным сетевой интерфейс eth0 во что-то другое по своему усмотрению (это нормально). И созданные нами правила роутинга iptables просто не могут отработать, поскольку обращаются к интерфейсу, которого нет.

Выполните команду ip addr или ifconfig, чтобы отобразить ваши сетевые интерфейсы:

И если вместо eth0 вы увидите что-то типа ens3, enp0s5 и т.п, как на скриншоте выше, то просто замените через

nano /etc/iptables/rules.v4

название eth0 в строках

-A POSTROUTING -s 10.10.10.0/24 -o eth0 -m policy —dir out —pol ipsec -j ACCEPT

-A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE

-A FORWARD -s 10.10.10.0/24 -o eth0 -p tcp -m policy —dir in —pol ipsec -m tcp —tcp-flags SYN,RST SYN -m tcpmss —mss 1361:1536 -j TCPMSS —set-mss 1360

на ваше название интерфейса. Перезагрузите сервер. Интернет заработает.

Прокачаем безопасность SSH (необязательный пункт)

Наш VPN-сервер уже работает и неплохо защищен, однако, я предлагаю еще чуток прокачать безопасность SSH, не вдаваясь в дебри.

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

Вы можете выбрать любой порт по вкусу, начиная с 1024, однако, я рекомендую поискать такой порт, который не был замечен в использовании вирусами, троянами, а также не используется какими-либо известными сервисами, программным обеспечением или производителями оборудования. Найдите себе такой «чистый» порт на SpeedGuide или adminsubnet.

В нашем примере мы будем использовать порт 45323.

Внимание! Не перезапускайте службы SSH и iptables и не перезагружайте машину, пока не пройдете данный раздел до конца, иначе вы потеряете доступ к машине!

Добавим новый 45323 TCP-порт в Lightsail:

Теперь настроим сам SSH:

nano /etc/ssh/sshd_config

#Раскомментируем и пропишем новый порт
Port 45323

#Раскомментируем и запретим попытки соединения с пустым паролем
PermitEmptyPasswords no

#Раскомментируем и настроим автоматический разрыв соединения при бездействии через 360 секунд. Это будет полезно, если вы забыли, что у вас на экране осталась активная сессия и отошли от компьютера. Сервер автоматически разорвет SSH-соединение через 6 минут.
ClientAliveInterval 360
ClientAliveCountMax 0

Теперь обновим информацию в правилах iptables и заменим старый порт SSH на новый:

nano /etc/iptables/rules.v4

Заменим «22» в строке

-A INPUT -p tcp -m tcp —dport 22 -j ACCEPT

на «45323»:

-A INPUT -p tcp -m tcp —dport 45323 -j ACCEPT

Сохраним файл через Ctrl+X и перезапустим машину:

reboot

После перезагрузки сервера проверьте соединение по SSH, добавив флаг «-p» и новый порт:

Всё должно работать.

Не забудьте удалить старый порт 22 в настройках файрвола Lightsail.

Заключение

Итак, мы с нуля настроили свой собственный защищенный VPN-сервер и получили VPN-конфигурации для всех наших устройств. Теперь весь наш трафик зашифрован и недоступен ни провайдеру, ни администратору Wi-Fi-сети, ни злоумышленникам, которые раньше могли его прослушивать. Теперь мы можем свободно подключаться к любым Wi-Fi сетям, не опасаясь за собственные данные. Кроме того, теперь нам доступны любые заблокированные в стране ресурсы.

Вообще, вы можете создать себе сколько угодно VPN-серверов и переключаться между ними. Если вы часто путешествуете, то можно создать серверы в тех географических зонах, где вы чаще всего бываете: это обеспечит меньший пинг и более высокую скорость передачи данных. Для замера этих параметров удобно использовать приложение Speedtest.

Бывает и так, что для определенной страны какой-либо ресурс недоступен по техническим причинам, в то время как из другой он работает корректно. В этом случае достаточно просто подключиться к другому VPN-серверу.

Делитесь инструкцией с друзьями, распространяйте в соцсетях.

Если вы нашли какие-либо ошибки в статье, пожалуйста, сообщите об этом.

Спасибо!

Дополнительные материалы к статье, которые могут быть интересны:

  • Ассиметричное шифрование. Как это работает?

Судя по последним новостям, в ближайшее время Роскомнадзор заблокирует в России ещё семь VPN-сервисов, в том числе Windscribe, Proton VPN и VPN Proxy Master. Это очень популярные публичные сервисы, которые, увы, в ближайшее время работать не будут.

Чтобы иметь доступ к необходимым для вас сайтам, расскажу о простом способе настройки собственного VPN-сервера на базе OpenVPN при помощи всего одной команды. Я уже рассказывал про способы с Outline и Amnezia.

Так что теперь есть целых три рабочих и довольно простых способа сделать свой VPN, который никто не заблокирует. Но этот мой самый любимый.

Почему личный VPN лучше

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

Подготовка

Учтите, что делать все операции мы будем по ssh-подключению к серверу. Не бойтесь, это несложно, нужно будет всего лишь копировать и вставлять команды приведённые в статье, их немного. Но перед этим установите следующий софт:

— Putty (для SSH-подключения на старых версиях Windows. На десятки, на macOS и Linux можно использовать встроенный терминал)

— OpenVPN Client (для установки соединения ваших устройств с вашим сервером)

— FileZilla (программа понадобится для загрузки полученных VPN-ключей для их последующей установки)

После этого переходим к следующему, пожалуй, самому важному шагу.

Арендуем сервер

Сделать это вы можете где угодно, но имейте ввиду, что большинство платформ, вроде Amazon Web Services, Digitalocean и Google Cloud для граждан России не работают, так как не принимают оплату банковскими картами, выпущенными в РФ.

Поэтому я могу посоветовать провайдера VDSina (реф). Стоимость аренды составит порядка 200 рублей в месяц. Два года уже арендую у них сервера не только для VPN, но и для веб-проектов, и никаких проблем не было.

VDSina принимает российские банковские карты, криптовалюты и электронные кошельки, вроде WebMoney и QIWI. Но вы можете воспользоваться и другим хостингом.

Настраивайте сервер по следующим параметрам:

В качестве операционной системы выберите Ubuntu 20.04

Тип сервера: стандартный

Тариф: 6,6 рублей в день (около 200 рублей в месяц, это хватит для VPN)

Локация: Амстердам

Опционально можете включить резервное копирование, оно стоит сверху еще 6 рублей в день, но позволяет в случае возникновения неполадок откатить всю программную начинку сервера к рабочему состоянию. В таком случае аренда обойдётся вам 300 рублей в месяц.

На этом все, переходим к следующему этапу

Устанавливаем VPN

Для этого открываем терминал или Putty и вводим следующие команды. После ввода каждой команды нужно нажимать Enter:

1. ssh [email protected]адрес сервера (его можно найти в Поддержка/Тикеты)

2. Согласитесь с подключением — yes

3. После введите пароль сервера (его также можно найти в тикете)

4. После вводим комманду wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh (исходный код утилиты можно найти на Github)

5. Выберите протокол подключения UDP — введите цифру 1

6. Согласитесь со стандартным портом. Просто нажмите enter

7. Выберите стандартные настройки сервера для DNS, введя цифру 1

8. Введите имя ключа клиента

9. Нажмите Enter

После того как ключ будет создан, открывайте FileZilla.

Скачиваем ключ для соединения на другом устройстве

В строке хост введите IP-адрес сервера

Имя пользователя: root

Пароль тот же, что вы получили в тикете

Порт: 22 (если не подключается, тогда 21)

FileZilla обычно сразу открывает папку root, если нет, то в корневом разделе откройте её самостоятельно.

В ней вы найдете файл с расширением «.ovpn». Он нам и нужен, просто нажимаем на него правой кнопкой мыши и выбираем «Скачать». После этого файл вы можете передать на другое устройство и открыть его в приложении OpenVPN.

Ключ-файл вы можете использовать на всех своих устройствах. При желании можно предоставить его и другим пользователям.

Если вам будет нужно создать новый файл конфигурации, просто приделайте все команды, приведенные выше.

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

Если устали постоянно перебирать бесплатные сервера с низкой скоростью соединения, а перед приобретением платного тарифа останавливает возможная блокировка сервиса, рекомендуем настроить собственный VPN по нашей простой и доступной инструкции.

Год назад мы уже рассказывали как пройти этот путь с минимальными затратами времени и сил, но за последние месяцы все сильно изменилось. Разработчики сервисов предлагают новые возможности, беря всю рутину и конфигурирование на себя. Нам остается только выбрать нужные параметры и оплатить хостинг.

Для создания своего VPN больше не придется возиться с командной строкой, подключаться к серверу по SSH и устанавливать сторонний клиент для добавления конфигурации.

Как настроить свой VPN прямо с iPhone

Нам потребуются услуги по аренде сервера с возможностью развернуть на нем свой VPN. Можно воспользоваться услугами таких провайдеров:

IPhoster – хороший выбор заграничных серверов;
ServerSpace – большое количество облачных сервисов;
VDSsh – широкий выбор конфигураций сервера;
VDSina – минимальный тариф за 198 руб. в месяц.

Предлагаю пошаговую инструкцию на примере последнего.

1. Перейдите на сайт VDSina и зарегистрируйтесь.

Можете воспользоваться услугами другого хостинга, тогда перечень шагов в инструкции будет немного отличаться.

2. В личном кабинете нажмите кнопку Создать сервер.

3. При выборе операционной системы укажите Предустановленные приложения – IPsec VPN.

4. В разделе Тип сервера отметьте Стандартные серверы.

5. Далее укажите базовую конфигурацию за 6.6 руб. в сутки и поменяйте местоположение сервера на Амстердам.

6. Отключите ежедневное создание бекапов на сервере.

7. Нажмите кнопку Создать.

8. Оплатите сервер любым доступным способом. Есть несколько вариантов, в том числе криптовалютой, через СБП, российской или заграничной картой.

Как обычно, чем больше вносимая сумма, тем меньше размер комиссии.

9. После окончания операции на почту придет письмо с данными созданного сервера и параметрами для VPN-подключения.

10. Перенесите данные из письма в параметры iPhone (Настройки – VPN – Добавить конфигурацию VPN). Не забудьте поменять тип соединения на IPsec.

Адрес VPN-сервера → Сервер
Пользователь → Учетная запись
Пароль → Пароль
IPsec PSK → Общий ключ

Сохраняйте настройки VPN и можете пользоваться.

Вот так за несколько минут настраивается собственный VPN, а его параметры переносятся в настройки iPhone. Все работает без командной строки, SSH-подключения и сторонних клиентов на смартфоне для установки профиля.

Вы можете добавить конфигурацию на компьютер Mac, введя соответствующие параметры в системных настройках.

Разумеется, использовать подключение можно на Windows, Linux, Android и других операционных системах.

Как прокачать работу своего VPN на iPhone

Вы можете воспользоваться другими фишками и опциями, сделав работу своего сервера еще удобнее.

Настроить быстрое включение и отключение VPN при помощи ярлыка или виджета на рабочем столе можно по этой инструкции.

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

Включать VPN для отдельных приложений на iPhone поможет специальная команда автоматизации.

Теперь ваш iPhone будет подключаться к VPN по расписанию, во время работы в определенных приложениях или просто фильтровать трафик по определенным правилам.

1 Звезд2 Звезды3 Звезды4 Звезды5 Звезд (33 голосов, общий рейтинг: 4.67 из 5)

🤓 Хочешь больше? Подпишись на наш Telegram.

undefined

iPhones.ru


Без сторонних приложений и командной строки.

  • iOS,
  • iPhone,
  • Vpn,
  • инструкции,
  • Сервисы

Артём Суровцев avatar

Артём Суровцев

@artyomsurovtsev

Люблю технологии и все, что с ними связано. Верю, что величайшие открытия человечества еще впереди!

Для работы проектов iXBT.com нужны файлы cookie и сервисы аналитики.
Продолжая посещать сайты проектов вы соглашаетесь с нашей
Политикой в отношении файлов cookie

До недавнего времени VPN был уделом гиков и тех, кому необходимо передавать важную информацию максимально конфиденциально. К сожалению, сегодня VPN утратил свое первоначальное предназначение, теперь его используют для доступа к заблокированным в России интернет-ресурсам.

Но у публичных сервисов (даже платных) есть один большой минус — низкая скорость подключения. Вероятно, сервисы не были к такому массовому наплыву пользователей из России.

Недавний опыт показывает, что публичные VPN в России могут заблокировать. Недавно жители Сибири и Ростовской области отмечали недоступность VPN-сервисов. Вероятно, это было тестирование блокировки популярных протоколов VPN.

К счастью, всегда есть выход!

За 20 минут вы можете настроить свой личный VPN-сервер с трафиком 32 Тбайт в месяц и неограниченной скоростью всего за 200 рублей. И, да, ему будут нестрашны любые блокировки.

Что такое Outline

Outline — это не привычный VPN-сервис, к которым многие привыкли. По сути, это self-hosted продукт, который вы настраиваете на своём или арендованном облачном сервере. Конфигурация Outline позволяет удобно подключаться к вашему VPN-серверу и предоставлять доступ другим людям на ваше усмотрение.

Outline был разработан компанией Jigsaw — внутренней командой Google, но не переживайте, никаких скрытых опций для сбора персональных данных в приложении нет.

Как минимум потому, что исходный код можно найти в свободном доступе на GitHub и изучить его на наличие подводных камней. Но их вы не найдёте, потому что сервис проходил в 2018 году проверку безопасности специалистами двух независимых организаций: Radically Open Security и Cure53. Они подтвердили, что Outline отвечает новейшим стандартам безопасности.

Более того, все передаваемые через сервер данные, Outline шифрует по стандарту AEAD 256-bit Chacha2020 IETF Poly 1305. То есть, никто из вне, даже среди тех людей, кто имеет доступ к подключению, не сможет перехватить информацию других пользователей. В том числе и вы, даже будучи владельцем сервера.

Вкратце о плюсах:

1. Сам по себе протокол Outline VPN бесплатен, платите вы только за аренду сервера (в районе 200 рублей в месяц)
2. Никто извне не сможет получить доступ к вашим данным
3. Outline устойчив к блокировкам VPN-сервисов на основе DNS или IP-адресов. То есть, ваш VPN-сервер будет работать, даже если другие публичные VPN будут заблокированы
4. Блокировки VPN со стороны провайдеров и государственных ведомств нацелены на публичные VPN-сервисы. Заблокировать ваш, частный сервер с VPN-конфигурацией они не смогут

 Теперь, переходим к делу.

Арендуем сервер

Такие популярные хостинги, как Amazon Web Services, Google Cloud и Digitalocean не принимают российские банковские карты, поэтому остаётся использовать российские варианты. Лично я рекомендую использовать VDSina (реф). Они принимают российские и иностранные карты (Mastercard, Visa, «МИР»). Пополнить счёт также можно с QIWI-кошелька, ЮMoney, WebMoney и даже при помощи криптовалюты.

После регистрации заранее пополните баланс на 200 рублей (месячная стоимость аренды сервера), зайдите в панель управления и нажмите на пункт «Добавить сервер».

Параметры настройки сервера:

  • Тип: стандартный
  • Операционная система: CentOS 7
  • Тариф: младший за 6 рублей в день (около 200 рублей в месяц) с трафиком 32 Тбайт в месяц
  • Местоположение: Амстердам
  • Автоматический бэкап можно отключить

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

Подключаем VPN к серверу

Для этого воспользуемся бесплатным VPN-протоколом Outline. Скачиваем Outline Manager для установки конфигурации на сервер.

После запуска Outline Manager выберите «Настройте Outline где угодно». Теперь переходим к основной работе: открываем терминал (для Windows можете скачать ssh-клиент Putty). Но встроенной командной строки тоже должно хватить.

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

Для начала обновим сервер:

1. ssh root@(IP-адрес вашего сервера, без скобок)
2. Соглашаемся с подключением, пишем yes и нажимаем enter
3. Вводим пароль из тикета и нажимаем enter
4. Обновляем сервер: yum update и нажимаем enter
5. Соглашаемся: вводим «y» (без кавычек), нажимаем enter
6. Снова соглашаемся с изменениями: вводим «y» (без кавычек), нажимаем enter

Устанавливаем Docker:

1. Вводим команду: wget -O — https://get.docker.com | bash и нажимаем enter
2. Запускам docker, вводим команду: systemctl enable docker && systemctl start docker

Устанавливаем Outline:

1. Копируем из Outline Manager команду и вставляем её в Терминал: sudo bash -c «$(wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server/master/src/server_manager/install_scripts/install_server.sh)»
2. Нажимаем enter
3. Копируем ключ, выделенный зелёным текстом в Outline
3. Iptables: sudo yum install iptables и нажимаем enter
4. Завершаем шаг и и запускаем установку сервисов командой: sudo yum -y install iptables-services и нажимаем enter
5. Вводим команду: iptables -L -v -n и нажимаем enter
6. Сбрасываем параметры командой: sudo iptables -F

Разрешаем входящие и исходящие подключения:

1. sudo iptables -A INPUT -i lo -j ACCEPT и нажимаем enter
2. sudo iptables -A OUTPUT -o lo -j ACCEPT и нажимаем enter
3. sudo iptables -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT и нажимаем enter

На этом этапе переходим в Ouline Manager и подключаемся к серверу. Если вы всё сделали правильно, то в программе появится возможность создания ключей для последующих подключений.

Важно: для каждого устройства необходим свой ключ. На этом всё. Если у вас в процессе возникнут какие-то вопросы, то смело пишите их в комментарии.

Понравилась статья? Поделить с друзьями:
  • Sjcam sj4000 wifi инструкция на русском
  • Конфликт с руководством последствия
  • Неотрависил пастилки для рассасывания цена инструкция по применению взрослым
  • Руководство phison mpall
  • Сложить из бумаги лягушку пошаговая инструкция