Будни техпода. Поднимаем VPN на VDS сервере
В последнее время достаточно сильно выросла популярность различных VPN сервисов, и думаю, почти каждый, так или иначе, сталкивался с необходимостью получить доступ к тому или иному ресурсу, который по какой-либо причине недоступен на территории РФ. Да, есть множество бесплатных решений, которые позволяют спрятать свой IP адрес или получить доступ к нужному ресурсу, но, как говорится, «бесплатный сыр только в мышеловке», и такие сервисы, для обеспечения своего существования спокойно могут продавать всю информацию, содержащуюся в вашем трафике.
В связи с этим нам в поддержке также не удалось избежать вопросов о возможности поднятия своего VPN на наших серверах. Выделить хотел бы два вопроса: 1. IP-адрес будет принадлежать только мне, и другие пользователи не смогут его использовать? 2. Возможно ли с помощью VPN настроить доступ к корпоративной информации компании. Чтобы доступ был лишь с определённых IP? На оба вопроса ответ положительный. Одной из особенностей VDS сервера является то, что серверу присваивается статический IP-адрес, и на протяжении всего использования, он меняться не будет. Адрес может быть присвоен только одному серверу, так что другие пользователи, пока существует ваш сервер, не смогут им воспользоваться. То есть, и VPN настроенный на вашем VDS сервере всегда будет иметь один и тот же IP адрес.
Другие статьи серии «Будни техпода»
- Пробрасываем USB наĸопитель через RDP соединение
- Разворачиваем Android на Hyper-V
- Подготовка сервера с Linux для работы по RDP
- Стриминг через VDS-сервер
- Разворачиваем сайт из конструктора на vds за 130 рублей
- Размещение игрового сервера на VDS
- Поднимаем VPN на VDS сервере ← Вы здесь
При желании можете рассмотреть вариант ручной настройки, например, OpenVPN на linux, подробная инструкция об этом есть в нашем справочнике, но мы для удобства подготовили два готовых шаблона с предустановленными VPN (L2TP на Windows Server 2019 и StrongSwan IKEv2/IPSec на Debian 11), чтобы упростить процесс настройки и позволить даже самым неопытным пользователям получить свой личный VPN-сервер. Больше всего вопросов приходят от пользователей MacOS и Windows, поэтому настройку на этих системах рассмотрим в первую очередь. Также рассмотрим установку на Android и IOS.
Заказ сервера на основе шаблона VPN L2TP
Для начала нам необходим сам VDS-сервер. Создать его можно через конфигуратор на нашем сайте, после регистрации и авторизации, нажав на кнопку « Заказать ».

В первую очередь нам необходимо выбрать расположение сервера (в моём случае это дата-центр Telehouse, Франкфурт). Далее выбираем саму конфигурацию (минимальной конфигурации: 1 CPU, 1 RAM и 20гб HDD, как правило, достаточно для работы VPN). В качестве операционной системы выбираем шаблон сервера — VPN L2TP — Windows Server 2019. Выбираем срок аренды сервера и жмём «оплатить» (вы можете также воспользоваться нашим промокодом HABR15 , чтобы получить дополнительную скидку в 15%, которая суммируется со всеми остальными скидками).

Дожидаемся завершения установки сервера и переходим во вкладку «Мои серверы», где мы сможем увидеть сам сервер, а также посмотреть данные для подключения к нему. Нас интересуют IP адрес сервера, логин и пароль.

▍ Настройка и подключение к VPN L2TP в Windows
В случае с Windows (Windows 10 / Windows 11), настройка производится во вкладке «Параметры» — «Сеть и Интернет» — «VPN».

Выбираем пункт « Добавить VPN ».

В открывшемся окне нам необходимо указать параметры VPN, а также данные для подключения: Имя подключения — Имя нашего VPN, Имя или адрес сервера — IP-адрес нашего VDS сервера, Тип VPN — «L2TP/IPsec с общим ключом». Общий ключ — « vpn ». Данные для входа — логин и пароль от нашего VDS сервера. Жмём « Сохранить ».

Готово. VPN добавлен и теперь к нему можно подключиться. Сделать это можно через трей, находящийся в правом нижнем углу. Открываем его и выбираем «Виртуальная сеть (VPN)».

Выбираем нужный нам VPN и жмём кнопку « Подключиться ».

▍ Настройка и подключение к VPN L2TP на MacOS
В случае с MacOS настройка VPN подключения происходит в настройках. Переходим в раздел VPN, жмём кнопку «Добавить конфигурацию VPN» и в выпадающем меню выбираем «L2TP через IPsec».

В открывшемся окне указываем следующие данные: Отображаемое имя — имя VPN подключения, Адрес сервера — IP-адрес нашего VDS сервера, Логин и пароль от нашего сервера, а также аутентификация компьютера через Общий ключ — « vpn ». Заполняем все данные и жмём кнопку « Создать ».

VPN успешно настроен и теперь к нему можно подключиться.

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

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

▍ Настройка VPN L2TP на IOS
В случае с IOS процедура настройки VPN схожа с MacOS, и производится также через меню «Настройки». Переходим в «Настройки» — «Основные» — «VPN и управление устройством».

В открывшемся меню выбираем «Добавить конфигурацию VPN».

Вводим следующие данные: Тип — «L2TP», Описание — имя нашего VPN подключения, Сервер — IP-адрес нашего VDS сервера, логин и пароль от сервера, а также общий ключ — « vpn ». Жмём « Готово ».

Подключение успешно создано. Выбираем его и жмём на кнопку включения.

▍ Настройка VPN L2TP на Android
В случае с Android расположение настроек VPN может немного отличаться, в зависимости от модели телефона. В этом примере будет использоваться «Huawei Nova 3». Открываем « Настройки » и находим пункт « Беспроводные сети ».

В открывшемся меню выбираем пункт « VPN », а затем жмём «Добавить сеть VPN».

Во вкладке «Изменение сети VPN» нам необходимо указать следующие ключевые параметры: Тип — «L2TP/IPSec PSK», Сервер — IP-адрес нашего VDS сервера, Общий ключ IPSec — « vpn ». Жмём « Сохранить ».

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

Готово. VPN успешно настроен и им можно пользоваться.
Заказ сервера на основе шаблона StrongSwan IKEv2/IPSec
Теперь рассмотрим второй, предоставляемый нами вариант с VPN. По аналогии VPN L2TP, заказываем сервер через конфигуратор, а в качестве операционной системы выбираем шаблон сервера «StrongSwan IKEv2/IPSec — Debian 11».

Дожидаемся завершения установки сервера и переходим во вкладку «Мои серверы», где мы сможем посмотреть IP адрес нашего сервера, а также логин с паролем.

Для дальнейшей настройки нам необходимо в адресную строку браузера ввести следующий адрес (необходимо указать IP, который отображается во вкладке « Мои серверы »):
В открывшемся окне авторизации вводим логин и пароль от сервера, которые также доступны во вкладке « Мои серверы ».

После ввода данных авторизации откроется окно настроек. Нажимаем на «произвести инициализацию» чтобы сервер автоматически применил все необходимые настройки и сгенерировал сертификаты.

После завершения всех этапов настройки у нас появится доступ к файлам конфигурации, необходимым для настройки VPN, а также логин и пароль. В случае с Windows нам необходимо скачать только «корневой сертификат crt».

▍ Настройка и подключение к VPN IKEv2 в Windows
Перед началом настройки VPN нам необходимо установить сертификат. Запускаем ранее скачанный файл, и в открывшемся окне нажимаем «Установить сертификат»

В открывшемся окне «Мастер импорта сертификатов» нам необходимо выбрать Расположение хранилища — локальный компьютер.

Затем необходимо нажать кнопку «Обзор» и вручную указать хранилище — «Доверенные корневые центры сертификации».

Соглашаемся с последующими шагами, нажимая «Далее» и затем «Готово». Теперь можно приступить к настройке самого VPN. Аналогично прошлому методу, настройка производится через меню «Сеть и Интернет» — «VPN». Жмём кнопку « Добавить VPN ».

В открывшемся окне указываем: Имя подключения — Имя нашего VPN, Имя или адрес сервера — IP-адрес нашего VDS, Тип VPN — «IKEv2», а также логин и пароль. Сохраняем и готово.

▍ Настройка и подключение к VPN IKEv2 на MacOS
В случае с MacOS, для настройки VPN нам необходимо скачать профиль конфигурации « mobileconfig ».

Запускаем данный файл, а затем переходим в «Настройки» — «Конфиденциальность и безопасность» — «Профили».

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

Готово, vpn подключение успешно создано. В момент написания этой статьи я обратил внимание, что в некоторых последних версиях MacOS, у VPN могут возникать ошибки с подключением, при использовании сертификата для авторизации. В этом случае можно немного изменить настройки VPN подключения, и для авторизации использовать данные, которые были сгенерированы при инициализации. Для этого переходим в «Настройки» — «VPN» и выбираем наше VPN подключение. В настройках этого VPN подключения меняем пункт « Аутентификация » на « Имя пользователя » и вводим логин и пароль.

Теперь проблем возникать не должно. Если потребуется удалить это подключение, тогда вновь переходим во вкладку « Профили » и удаляем установленный ранее профиль.
▍ Настройка VPN IKEv2 на IOS
Настройка на IOS очень схожа с настройкой на MacOS. Нам потребуется тот же профиль конфигурации.

Скачиваем его и переходим в «Настройки» — «Основные» — «VPN и управление устройством». Здесь нам необходимо найти загруженный нами профиль.
Выбираем его и жмём « Установить ». Нас попросят ввести «Имя пользователя для профиля» и « Пароль ». Это логин и пароль со страницы настроек. Вводим их и жмём « Готово ».

Подключение успешно создано и теперь перейдя в «Настройки» — «VPN», мы сможем увидеть его и подключиться к нему.

▍ Настройка VPN IKEv2 на Android
Для настройки VPN IKEv2 на Android, нам необходимо скачать VPN-клиент Strongswan, а также файл с профилем конфигурации для данного клиента. Сделать это можно, перейдя по соответствующим ссылкам на странице настроек.

Скачиваем и устанавливаем приложение «strongSwan VPN Client».

Теперь нам необходим сам файл с профилем конфигурации. Выбираем его и в окне «открыть с помощью» выбираем скаченный VPN клиент.

В открывшемся окне импорта vpn профиля указываем логин и пароль от сервера, и жмём кнопку « IMPORT ».

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

▍ Пара слов в заключение
Как мы смогли увидеть, в настройке своего личного VPN сервера нет ничего сложного, а подключиться к нему возможно практически с любого устройства. В ситуациях, когда важно сохранить конфиденциальность передаваемой информации, или иметь VPN со статическим IP адресом, который будет принадлежать именно вам, личный VPN сервер будет намного удобнее и безопаснее, чем его аналоги.
Как открыть портал наружу: самый полный гайд по VPN
Выбор, установка и настройка VPN. Какие VPN заблокированы на территории РФ в 2023 году. Рабочие VPN в России в 2023 году с оплатой криптой. Как узнать, работает ли шифрование трафика. Каким образом блокируют VPN

- Что такое VPN
- Как работает VPN
- Для чего нужен VPN
- Для чего VPN бесполезен
- Преимущества VPN
- Недостатки VPN
- Популярные VPN-протоколы
- Сравнение VPN с другими способами анонимизации
- Как выбирать VPN
- Как установить VPN
- Как создать свой VPN
- Пошаговая инструкция по созданию VPN на собственном сервере
- Замедлит ли VPN работу интернета
- Как узнать, насколько VPN замедляет интернет-соединение
- Как ускорить VPN
- Как узнать, работает ли шифрование трафика
- Законно ли использовать VPN в России
- Каким образом блокируют VPN
- Какие VPN заблокированы на территории РФ в 2023 году
- Рабочие VPN в России в 2023 году с оплатой криптой
- Как узнать, какие ресурсы будут доступны с VPN
- Что делать, если перестал работать VPN
- Как вернуть деньги за VPN в течение гарантийного периода
- Что делать, если доступа нет даже под VPN
- Стоит ли использовать VPN для входа в онлайн-банк
- Что такое Smart DNS
- Можно ли качать торренты под VPN
- Что придет на смену VPN
Что такое VPN
VPN расшифровывается как Virtual Private Network, виртуальная частная сеть. Исторически VPN использовался для подключения удаленных сотрудников к общей сети организации. Со временем технологию стали использовать для анонимизации и обхода блокировок.
В виртуальных частных сетях трафик шифруется, а подключение идет через сервер-посредник. Это создает некоторую анонимность, повышает конфиденциальность и безопасность.

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

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

- Для обхода блокировок. С помощью VPN можно получить доступ к заблокированным в России ресурсам или, наоборот, к ресурсам, закрытым для россиян из-за рубежа.
- Для защиты конфиденциальности. VPN не дает полную анонимность, но в какой-то степени повышает конфиденциальность. Если вы подключаетесь к какому-либо ресурсу без авторизации (ввода логина и пароля), то высоки шансы, что вас распознают как другого пользователя. Но если вы подключаетесь к серверу, где требуется авторизация, то изменится лишь ваш IP-адрес, а личность останется прежняя.
- Для безопасности. VPN защищает от недобросовестных интернет-провайдеров; соседей, охочих до чужого Wi-Fi; поддельных точек доступа. Попав на фальшивую Wi-Fi-точку, можно подхватить компьютерный вирус и потерять чувствительные данные.
Для чего VPN бесполезен
VPN — это не антивирус и не межсетевой экран, он повышает конфиденциальность и дает определенную анонимность, но не защищает от атак.

- Чужой компьютер. На чужом компьютере VPN запускать бесполезно. Хозяин компьютера с помощью специального софта может записать все ваши действия, в том числе пароли и платежные реквизиты.
- Зараженный компьютер. VPN не защитит от фишинговых ссылок, зараженных сайтов и вредоносных программ.
- Сайты, которые следят за пользователями. Практически все популярные интернет-сервисы отслеживают посетителей по множеству параметров: IP, файлам куки, юзера-агенту, языку браузера, плагинам браузера, версии и языку операционной системы, разрешению экрана, геолокации, интернет-провайдеру, часовому поясу, времени визита, типу устройства, паттернам поведения. Данных собирают так много, что при желании регулярного посетителя нетрудно распознать даже при смене IP.
- Недобросовестный VPN-провайдер. При использовании VPN интернет-провайдер и третьи лица не видят ваш трафик, но его видит VPN-сервис. На словах большинство VPN-провайдеров заявляют, что не следят за своими пользователями и не хранят логи, но обычно это маркетинговое лукавство. Недобросовестный VPN-провайдер может направить вас на вредоносные ресурсы и использовать ваши данные в своих интересах. Но и честный VPN-провайдер, если он работает легально, по запросу выдаст информацию уполномоченным органам.
- Продвинутые способы блокировки. Иногда доступ к заблокированным ресурсам не удается получить даже с помощью VPN. Такое может случиться, например, если вы купили российский VPN и пользуетесь их американских сервером для доступа к американскому ресурсу, но этот ресурс блокирует целые подсети по признаку принадлежности российским компаниям, то есть вашему российскому VPN-провайдеру.
Преимущества VPN
У VPN много плюсов:
- Обход блокировок. В большинстве случаев VPN достаточно для обхода блокировок. Однако для обхода продвинутых блокировок одного VPN может быть мало.
- Обход других ограничений. Интернет-провайдеры могут замедлять доступ к некоторым ресурсам. VPN помогает обходить это ограничение.
- Анонимность. Если вы используете VPN на своем основном устройстве, то он не защитит вас от ресурсов, которые собирают десятки и сотни параметров о каждом посетителе. Но в простых случаях — завести дополнительный профиль в соцсети, видеостриминге или игровом магазине — VPN хватит.
- Приватность. VPN будет полезен при использовании чужого Wi-Fi.
- Экономия денег. Цены на товары и услуги в разных странах могут отличаться в разы, а иногда на порядки. Многие российские игроки предпочитают турецкую версию Steam в силу более низких цен.
Недостатки VPN
Минусы у VPN тоже есть, и некоторые достаточно серьезные:
- Дополнительные расходы. VPN стоят в среднем $5-15 долларов в месяц. Бесплатные VPN существуют, их много, но они медленные и, как правило, небезопасные. VPN-провайдеру нужно иметь сервера в разных странах мира, это стоит денег. Если с пользователей VPN не берут деньги, значит деньги зарабатывают другим способом. В лучшем случае — на продаже данных о пользователях рекламным сетям, в худшем — на криминале. Экономия на VPN может выйти боком.
- Ниже скорость. При использовании VPN трафик идет через сервер-посредник. Мало того, что у сервера и ведущих к нему каналов есть определенная пропускная способность, но и сам сервер может быть расположен в тысячах километров от вас. Впрочем, у хороших VPN-провайдеров задержка не особенно заметна.
- Ограничения на трафик. Некоторые VPN ограничивают определенные типы трафика. Часто под ограничения попадают торренты.
- Легальные последствия. В некоторых странах VPN в принципе запрещены. В России власти ведут борьбу не только с VPN-провайдерами, не обеспечивающими фильтрацию нарушающей местные законы информации, но и блокируют популярные VPN-протоколы. Однако сами по себе VPN в России не запрещены, пользоваться ими можно.
- Риски взлома и утечки данных. Недобросовестный VPN-провайдер может сознательно встроить вредоносный софт в VPN-клиент или направить вас на зараженный ресурс. И почти любой VPN-провайдер выдаст информацию властям — просто потому что обязан по закону.
Популярные VPN-протоколы
VPN-протокол — это набор инструкций для установления безопасного соединения между двумя устройствами. Самые распространенные VPN-протоколы:

- OpenVPN. Популярный и хорошо защищенный протокол, работающий по интернет-протоколам TCP или UDP. Считается безопасным, универсальным, имеет открытый исходный код и совместим с большинством брандмауэров. Настройка OpenVPN может быть сложной для неопытных пользователей.
- IKEv2/IPsec. Разработан Microsoft и Cisco. Считается стабильным и быстрым, но в силу происхождения несовместим с некоторыми системами.
- WireGuard. Относительно новый протокол (2015 года). Быстрый, с открытым исходным кодом, но все еще в стадии разработки.
- SSTP. Еще один протокол от Microsoft. Совместим с большинством файерволов, но проприетарный и, естественно, проницаемый для американских спецслужб.
- L2TP/IPSec. Устаревший протокол, считается медленным, недостаточно совместимым и уязвимым для американских спецслужб. Многие VPN-провайдеры отказались от поддержки L2TP.
- PPTP. Когда-то это был первый популярный VPN-протокол. Обладает высокой скоростью и совместимостью, но успел устареть. Обладает рядом уязвимостей и блокируется брандмауэрами.
- Lightway. VPN-протокол от ExpressVPN. Имеет открытый и лаконичный (2000 строк) исходный код, позиционируется как современный, быстрый и безопасный. В основе протокола лежит криптографическая библиотека wolfSSL. Для передаче данных Lightway использует UDP, а защищенный канал устанавливается через DTLS. Если пропала связь, VPN-соединение переходит в спящий режим для экономии батареи.
В OpenVPN, IKEv2/IPsec, SoftEther, SSTP и L2TP/IPsec используется надежный алгоритм шифрования AES-256. В WireGuard используется шифрование ChaCha20, в PPTP — устаревшее 128-битное шифрование.
Серебрянной пули среди VPN-протоколов нет. VPN-протокол надо выбирать в зависимости от задач. WireGuard считается самым быстрым протоколом, но, как показывает свежая практика, успешно блокируется властями. С точки зрения безопасности самым оптимальным называют OpenVPN. PPTP есть в каждом утюге, но слишком устарел.
Сравнение VPN с другими способами анонимизации
Альтернативы VPN
HTTP/HTTPS-прокси — это просто посредник между вами и вашей точкой назначения в Сети. От вас данные идут к прокси, а от прокси — на нужный вам ресурсы. В обратную сторону аналогично. Протоколы HTTP/HTTPS используются для просмотра веб-страниц.
SOCKS-прокси — сокращение от Socket Secure. В отличие от HTTP/HTTPS, протокол SOCKS создавался для передачи больших объемов трафика. SOCKS4 поддерживают только TCP-соединения. SOCKS5 поддерживает UDP, TCP, авторизацию по логину и паролю и удаленный DNS-запрос. Шифрования в SOCKS по умолчанию нет.
Tor — это децентрализованная сеть для анонимизации. Для пользователя Tor выглядит как программа наподобие VPN-клиента или как браузер со встроенной анонимизацией. Принцип действия Tor отличается от VPN. Сеть Tor состоит из узлов, которые поддерживают добровольцы. Трафик между пользователем и конечным ресурсом проходит через три узла:
- Первый узел знает ваш адрес и адрес второго узла. Он получает ваши зашифрованные данные и передает второму узлу.
- Второй узел знает адреса первого и третьего добровольцев, но ваш адрес ему неизвестен. Второй узел просто передает зашифрованные данные от первого узла к третьему.
- Третий узел знает адрес конечного ресурса и адрес второго узла. Он расшифровывает данные и передает их по назначению.
На первый взгляд кажется, что это надежная система, но децентрализация и добровольный характер сети Tor имеют свои минусы:

- Криминал и спецслужбы специально создают ноды в Tor для перехвата трафика и использования в своих целях.
- В Tor низкая скорость. Сказывается то, что трафик идет через три посредника, а узлов не так много и поддерживаются они добровольцами.
- Tor легко блокируется властями. В последние два года Tor Browser в России работает с перебоями. В версии 11.5 разработчики Tor встроили автоподбор оптимальной конфигурации моста, которая лучше всего подходит подходящей для пользователя из конкретной страны. Это отчасти помогло, но толку от Tor в России сейчас мало.
- Популярные ресурсы выставляют защиту от Tor. Если попробуете погуглить через Tor, поисковик замучает вас капчами. А во многие соцсети просто не удастся войти.
Как выбирать VPN
При выборе VPN следует обращать в первую очередь на следующие факторы:
- Доступность в России. Грош цена VPN-сервису, к которому нельзя подключиться из матушки-России. Проверить это заранее можно по публикациям в интернете, путем самостоятельных тестов (если у VPN есть бесплатные сервера) или просто пролистав эту статью ниже.
- Юрисдикция. Если VPN зарегистрирован в одной из наиболее недружественных к России стран (например, в Прибалтике), то не исключены сюрпризы — например, блокировка аккаунта без возврата денег. Если VPN находится на территории США или зависимых от США стран, ваши данные будут открытой книгой для американских спецслужб.
- Репутация. Изучите историю и отзывы о компании. Что говорят клиенты? Были ли взломы? Насколько отзывчива техподдержка?
- Цена. Бесплатные VPN использовать опасно, если вам есть что терять (деньги, данные, репутацию). Для платных VPN адекватная цена $5-15. Переплачивать за бренд, как правило, смысла нет. Слишком дешевый VPN тоже плохо: это может означать экономию на оборудовании и безопасности.
- Способы оплаты. Если VPN зарубежный, должны быть способы оплаты из России. В текущих условиях зарубежные VPN оплачивать часто приходится криптой.
- Информация при регистрации. Адекватный VPN-провайдер не лезет в душу и при регистрации запрашивает минимум данных.
- Скорость работы. Быстрый VPN на длинной дистанции сбережет время и нервы.
- Количество и география серверов. Хорошего VPN должно быть много. Выбирайте сервис, у которого сотни или тысячи серверов в десятках стран.
- Политика конфиденциальности. Легальные VPN по закону обязаны сотрудничать с властями. Во многих странах интернет-сервисам запрещено даже раскрывать факт запросов от властей. Но это обходится за счет «свидетельства канарейки» (warrant canary). В политике конфиденциальности может быть сказано что-то вроде «пока спецслужбы не пытались получить данные наших пользователей». Как только поступает первый запрос, «свидетельство канарейки» исчезает. Стоит иметь в виду, что «свидетельство канарейки» в любом случае не гарантия безопасности. Для спецслужбы крупной страны нет никакой проблемы создать VPN-провайдера и превратить его в одного из лидеров рынка. Подставной характер компании может оставаться в тайне многие годы.
Как установить VPN
Существует несколько способов воспользоваться VPN:

- Стандартные средства операционной системы. VPN-соединение можно создать через настройки Windows. Для недостаточно уверенных в себе пользователей это может быть задачей со звездочкой.
- Браузер со встроенным VPN. Многие браузеры (Brave, Opera) имеют встроенные VPN. Но такой VPN защищает только трафик внутри браузера и по факту является скорее прокси, чем VPN.
- Расширение для браузера. Многие VPN-провайдеры предлагают установить расширение в браузера. Это разновидность предыдущего способа.
- Сторонние программы. В этом сценарии вы скачиваете VPN-клиент, устанавливаете его, вводите свои реквизиты и задаете настройки. Самое главное здесь — убедиться, что скачали не вредонос, а настоящий клиент с официального сайта. Перед запуском проверьте файл антивирусом. У крупных VPN-провайдеров есть клиенты для всех распространенных платформ.
Как создать свой VPN-сервер
Крупные VPN-провайдеры берут на себя все хлопоты по созданию и обслуживанию VPN. Но власти о них знают так же хорошо, как и мы, и не без успеха ставят им палки в колеса. Многие популярные VPN-сервисы перестали работать в России, а остальные могут оказаться недоступными в любой момент. Отсюда два вывода:
- Не стоит оплачивать широко известные VPN на большой срок. Раскошелитесь на год, а завтра этому VPN кислород перекроют.
- Самый лучший VPN — это свой собственный сервер.
Арендовать сервер и поднять на нем VPN не так сложно, как кажется. Для начала выберите хостинг-провайдера. Обращайте внимание на следующие факторы:
- Наличие серверов за пределами России;
- Лимит на трафик в месяц;
- Адекватные цены;
- Удобные способы оплаты;
- Хорошие отзывы.
Пошаговая инструкция по созданию VPN на собственном сервере
1. Выбираем хостинг для нашего виртуального сервера (Virtual Private Server, VPS), который понадобится для создания собственного VPN. При выборе хостинг-провайдера нам нужно понимать под какие конкретные цели нам нужен виртуальный сервер. Также нужно учитывать месторасположение физического сервера провайдера. Например, мы собираемся использовать европейский VPS для подключения к сайтам, который могу блокироваться с территории нашей страны пребывания. Следующий момент связан с приемлемыми способами оплаты услуг хостинг-провайдера. Выберем компанию, чьи услуги мы можем оплатить рублями с помощью карты MIR. Таким образом, наш выбор останавливается на сервисе Timeweb.
2. Создаем VPS на выбранном хостинге. Сначала проходим стандартную регистрацию на платформе. Затем определяемся с параметрами виртуального сервера, зайдя во вкладку “Облачные сервисы”.

Выбираем операционную систему нашего виртуального сервера. Мы остановились на Ubuntu.
Затем выбираем страну расположения физического сервера:

Устанавливаем необходимые конфигурации. Для наших целей подойдут минимальные:

Для экономии средств можно отключить функцию бэкапа:

Последний шаг — даем имя серверу и нажимает кнопку:

Оплачиваем виртуальный сервер удобным способом:

После оплаты услуг провайдера в разделе “Облачные серверы” появится наш VPS:

3. Настраиваем VPN на своем сервере. Для этого воспользуемся терминалом Putty. Переходим на официальный сайт разработчика, скачиваем портативную версию и запускаем ее. В открывшемся окне вводим наш IP-адрес, который можно посмотреть в разделе “Дэшборд” на платформе Timeweb. Там же можно узнать root-пароль, который нам понадобится для подключения к серверу позже:

Нажимаем “Соединиться”, открывается терминал, в который нам нужно ввести login, который по умолчанию root. Вводим логин и нажимаем Enter. Затем из раздела “Дэшборд” копируем пароль и нажимаем один раз на правую клавишу мыши, чтобы его вставить в графу password. Обратите внимание, что поле с паролем останется неизменным после того, как вы туда его вставите. Это сделано из соображений безопасности:

Нажимаем Enter и видим процесс входа на сервер:

Для упрощения процесса настройки VPN запустим скрипт, который сделает это за нас, воспользовавшись командой:
wget https://git.io/vpn -O openvpn-install.sh
Ее нужно скопировать, вставить в терминал и нажать Enter. Дальше выбираем параметры по умолчанию, нажимая Enter:

В предпоследнем шаге автоматической настройки можно указать имя настраиваемого конфига или просто нажать Enter, тогда имя останется “client”. В конце автоматической настройки появится надпись “Finished!”, которая известит об успешном завершении процедуры.
4. Получаем файл с настройками VPN. Для этого воспользуемся FTP-клиентом FileZilla. Переходим на официальный сайт, скачиваем клиент и запускаем программу:

Для подключения вводим IP-адрес сервера, логин root и пароль к серверу из дэшборда. После чего из директории /root надо будет скачать файл client.ovpn.
5. Устанавливаем OpenVPN для подключения к VPN. Заходим на официальный сайт разработчиков протокола и скачиваем клиент. Открываем OpenVPN, нажимаем правой клавишей на значок программы на панели задач и выбираем вкладку “Импорт”, указывая путь к скачанному файлу настройки client.ovpn.

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

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

Как узнать, насколько VPN замедляет интернет-соединение
Для начала проверьте скорость интернете с отключенным VPN. Откройте браузер, наберите в поисковике “Тест скорости интернета”, выберите сервисе для измерения скорости, проведите тест и запишите результаты. Затем повторите тест с включенным VPN и сравните результаты.

Как ускорить VPN-соединение
Скорость соединения зависит от многих условий. Повысить скорость интернета можно следующим образом:
- Перезагрузите роутер и/или компьютер. Обычно это самое просто решение.
- Переключитесь на проводное соединение. Проводное соединение почти всегда быстрее. При работе по Wi-Fi низкая скорость может объясняться подключением к роутеру сразу нескольких беспроводных устройств.
- Обновите VPN-клиент. Еще один простой совет, который может быстро решить проблему скорости соединения.
- Протестируйте скорость интернета. Если интернет медленный сам по себе, то, может быть, вам надо обновить оборудование, поскандалить с интернет-провайдером или перейти на более скоростной тариф.
- Переключитесь на другой сервер. Это поможет, если сервер слабый, барахлит, перегружен или просто далеко от вас.
- Поменяйте порт/протокол. Иногда сети могут ограничивать работу определенных протоколов или портов. В настройках VPN-клиента выберите протокол UDP. Он менее стабильный, но побыстрее TCP.
- Переключитесь на другой VPN-протокол. Самыми быстрыми считаются WireGuard, IKEv2/IPsec, OpenVPN и Lightway.
- Отключите или перенастройте антивирус/или файервол. Они сканируют трафик и могут замедлять соединение.
- Перейдите на шифрование попроще. Шифрование — затратный процесс, и на слабых конфигурациях может ощутимо замедлять работу устройства. Но это крайняя мера, и прибегать к ней стоит, если вопрос безопасности не в приоритете.
- Избегайте бесплатных VPN. Бесплатные VPN всегда перегружены и зачастую небезопасны.
Как протестировать VPN-шифрование
Протестировать VPN-шифрование достаточно просто даже для неискушенного пользователя.
- Установите программу Wireshark и запустите с правами администратора.
- Подключитесь к VPN.
- В Wireshark выберите тип сети (Wi-Fi или Ethernet).
- Выберите VPN-протокол.
- Выберите UDP или TCP.
- Если поток трафика будет неупорядоченный и нечитаемый, значит шифрование работает.
В качестве альтернативы или дополнения можно использовать Glasswire.
Законно ли использовать VPN в России
Использовать VPN в России законно. Ограничения распространяются на VPN-провайдеров. Закон требует от них закрывать пользователям доступ к заблокированным ресурсам, но большинство VPN-сервисом в этом не заинтересованы, а поскольку расположены они за границей, то принудить их к исполнению российских законов малореально.
Каким образом блокируют VPN
Роскомнадзор начал блокировать VPN-сервисы в 2021 году. Есть несколько способов блокировки:
- Блокировка сайтов VPN-сервисов.
- Блокировка доступа к VPN-серверам по доменному имени или IP-адресу.
- Блокировка VPN-протоколов (OpenVPN, IPSec).
- Блокировка трафика на портах, которые используются VPN-протоколами.
- Блокировка типичного для VPN трафика (технология DPI, Deep Packet Inspection) вне зависимости от используемого протокола.
Последний способ особенно опасен. К счастью, способы решения этой проблемы уже существуют. Это V2Ray, VMess, Cloak. Они делают трафик похожим на обычный.
О блокировках обычно не сообщают, пользователи узнают о них постфактум.

Какие VPN заблокированы в России в 2023 году
За последние несколько лет под блокировки в России попадало большинство популярных VPN-сервисов: Mullvad, PrivateTunnel, ExpressVPN, NordVPN, Betternet, Lantern, X-VPN, Cloudflare WARP, Tachyon VPN, VyprVPN, Hola!VPN, KeepSolid VPN Unlimited, Speedify VPN, IPVanish VPN, ProtonVPN, Surfshark, Windscribe, Psiphon, Tunnelbear. Некоторые VPN свернулись добровольно: в ноябре 2022 года «Лаборатория Касперского» сообщила о прекращении работы своего Kaspersky Secure Connection на российском рынке.
Однако говорить о полном и бесповоротном прекращении их работы было бы преувеличением. VPN-сервисы против Роскомнадзора — это борьба брони и снаряда. Некоторые VPN после блокировки так и не заработали, но некоторые нашли решение. Ситуация меняется каждый день, и, чтобы получить самую свежую информацию, смотрите самые свежие новости.
Мы протестировали десятки VPN и отсеяли нерабочие либо не имеющие бесплатных серверов (для теста) / бесплатного пробного периода. Многие VPN-сервиса предлагают бесплатные 7-дневные пробники, но все равно с порога просят платежные данные. С какой стати? Сначала надо убедиться, что VPN вообще работает.
На момент публикации этой статьи картина была следующая:
- Xeovo VPN — российская команда из Финляндии. Бесплатных серверов / бесплатного триала нет.
- Ivacy — бесплатных серверов / бесплатного триала нет.
- Le VPN — бесплатных серверов / бесплатного триала нет.
- IPVanish — сайт заблокирован (открывается через VPN). Бесплатных серверов / бесплатного триала нет.
- OpticalVPN — бесплатных серверов / бесплатного триала нет.
- Betternet — сайт заблокирован (открывается через VPN), страница регистрации отказалась работать.
- PrivateVPN — бесплатных серверов / бесплатного триала нет.
- Windscribe — сайт заблокирован, бесплатные сервера есть, но ни один не сработал.
- Hotspot Shield — сайт заблокирован. Бесплатных серверов / бесплатного триала нет.
- CyberGhost VPN — сайт заблокирован. Есть бесплатный пробный 24-часовой период. Но ни один сервер не сработал.
- ZenMate VPN — куплены Cyber Ghost.
- TunnelBear — сервера не работают.
- AtlasVPN — сайт заблокирован. Бесплатных серверов / бесплатного триала нет. Приложение глючит.
- VyprVPN — сайт заблокирован. Якобы есть бесплатный триал на мобильных платформах, но регистрация не сработала.
- TorGuard — американский VPN, доступ из России закрыт. Бесплатных серверов / бесплатного триала нет.
- PureVPN — теоретически есть бесплатный 7-дневный триал на Android, но из России оформить его получится, так как Google Pay здесь больше не работает.
- NordVPN — сайт заблокирован. Теоретически есть бесплатный 7-дневный триал на Android, но в российском Google Play приложение недоступно.
- Mullvad VPN — простая регистрация прямо в приложении, но сервера не работают.
- Private Internet Access — бесплатных серверов / бесплатного триала нет.
- Express VPN — бесплатных серверов / бесплатного триала нет.
- Proton VPN — есть бесплатные сервера, но они не работают.
- Surfshark — есть бесплатный 7-дневный пробник, но сервера не работают.
- Blanc VPN — принимает карты “Мир”, но бесплатных серверов / бесплатного триала нет.
Рабочие VPN в России в 2023 году с оплатой криптой
На момент публикации работали следующие VPN:

- CactusVPN. Молдавский VPN-сервис. Работает с переменным успехом. SmartDNS формально работают, но блокировки обойти не помогает. К некоторым VPN-серверам подключиться удается, блокировки обходятся. Всего 36 серверов в 22 странах; на части серверов разрешены торренты. Поддерживает все основные платформы. С первого взгляда кажется, что зарегистрироваться без оплаты не получится, но потом в подвале сайта замечаешь кнопку Free Trial. Есть оплата криптой.
- Hide.me. Малайзийский сервис с более чем 2000 серверами в почти сотне стран. Работает в России. Есть бесплатная версия. Поддерживает все основные платформы. Есть оплата криптой.
- HideMy.name. VPN с регистрацией в Белизе. Работает в России, правда, серверов не так много. Бесплатный пробный период дают только на сутки. Поддерживает все основные платформы. Есть оплата криптой.
Как узнать, какие ресурсы будут доступны с VPN
Блокировку конкретных ресурсов можно проверить через GlobalCheck.net.

Что делать, если перестал работать VPN
Способы здесь почти те же самые, что и в главе “Как ускорить VPN-соединение”:
- Выбрать другой сервер;
- Перезагрузить VPN-клиент/устройство/роутер;
- Проверить, не закончился ли оплаченный период VPN;
- Проверить, не исчерпан ли лимит трафика, выделенный VPN-провайдером;
- Проверить учетные данные VPN;
- Проверить, не заблокирован ли ваш VPN-провайдер;
- Выбрать другой VPN-протокол;
- Обновить VPN-клиент;
- Отключить брандмауэр и/или антивирус;
- Сбросить настройки DNS;
- Признать свое бессилие, подать челобитную в техподдержку VPN-провайдера и взмолиться о помощи.
Как вернуть деньги за VPN в течение гарантийного срока
У большинства VPN-сервисов есть бесплатный пробный период и/или более продолжительный гарантийный период, в течение которого можно вернуть 100% денег, если вам что-то не понравилось. Для возврата денег надо написать в техподдержку. Обычно гарантийный срок составляет 30-45 дней.
Стоит ли использовать VPN для онлайн-банкинга
Если вы используете общедоступный Wi-Fi, то лучше подключиться к онлайн-банку через VPN. Так вы снизите риск перехвата данных. Но это справедливо, если вы используете надежный платный VPN. Бесплатный VPN сомнительного происхождения сам по себе может быть риском.
С другой стороны, сами банки собирают максимум информации о своих пользователях. Внезапное изменение географии — час назад вы подключались из России, а сейчас уже из США — может вспугнуть службу безопасности банка и они начнут названивать или, чего доброго, заблокируют счет до выяснения обстоятельств. Поэтому без нужды VPN для онлайн-банкинга лучше не использовать.
Что такое Smart DNS
DNS — это протокол, который переводит названия веб-сайтов (домены) в IP-адреса и наоборот. Домены нужны людям для удобства. Машины передают друг другу IP-адреса.
Smart DNS — это сервис для обхода ограничений в интернете. Он не меняет ваш IP и не шифрует подключение, а лишь подменяет информацию о вашем географическом местоположении. Этого достаточно для обхода геоблокировок. В отличие от VPN скорость при этом не падает.
Можно ли использовать торренты под VPN
Большинство VPN-сервисов не ограничивают торрент-трафик. Более того, использование торрентов под VPN снижает риски попасть под санкции за нарушение законов об авторских правах. В России риски невелики, но в некоторых странах (Германия) по этой части полный орднунг.
Однако некоторые VPN имеют лимит на трафик. При его превышении скорость порежут. Но на практике лимиты достаточно высокие.
Что придет на смену VPN
Борьба брони (блокировка) и снаряда (средства обхода блокировок) продолжится. Блокировки станут более изощренными, звучат даже версии, что дело может дойти до white-листов, когда запрещено все, что не разрешено. Рекомендуем заранее поинтересоваться продвинутыми способами обхода блокировок (V2Ray, XRay, XTLS, Hysteria, Cloak) и удачи вам в борьбе с гидрой цензуры.
- Информационная безопасность
- Сетевые технологии
- Лайфхаки для гиков
- Удалённая работа
Как мы свой VPN поднимали

Я и мой коллега Артём — backend‑разработчики, пишем на Ruby. Когда мы только начали работать, в компании использовались две сторонние службы VPN (не буду их называть), которые со временем перестали по определённым причинам работать. На одном из собраний наш тимлид предложил руководству создать свой VPN, и backend‑отдел готов был попробовать придумать что‑то своё, используя базу OpenVPN.
Для начала мы решили заняться изучением требований под сервер. Нехитрым поиском в пару запросов было выяснено, что:
- OpenVPN занимает очень мало места на диске, да и вообще не сильно требовательный;
- в среднем на 100 пользователей хватает 1 Гб оперативной памяти.
Под эти запросы мы начали искать VPS хостинг, предварительно сделали список всех возможных кандидатов и, согласовав с руководителем, выбрали тот, на котором, как оказалось, у нас уже была снята одна машина. Хостинг пока не буду называть.
Поскольку я и мой коллега Артем никогда ничем подобным не занимались, пришлось подробно узнать, как это делается. Всю настройку сервера выполняли по найденной информации. Сам VPN мы поставили на машину под управлением Ubuntu 20.04.
Сначала мы выполнили первичную настройку сервера:
- Настроили вход по ssh‑ключу.
- Создали пользователя без привилегий root.
- Настроили базовый брандмауэр.
- Активировали внешний доступ для стандартного пользователя.
Затем настроили центр сертификации на сервере:
- Установили набор скриптов easy‑rsa.
- Создали папку для работы со скриптами.
- Создали PKI (инфраструктура открытых ключей) для центра сертификации.
- Подписали сертификат для нашего сервера.
Далее мы установили OpenVPN непосредственно на сервер и приступили к настройке.
Вот основные шаги для того, чтобы сделать всё правильно:
- Инициализировать PKI для OpenVPN (для создания ключей и их подписи для пользователей).
- Создать сертификат сервера и закрытый ключ для OpenVPN.
- Подписать сертификат с помощью центра сертификации, который в дальнейшем нужно провалидировать.
- Настроить криптографические материалы.
Для генерации ключей и защищённых подписей пользователей мы использовали криптографию на эллиптитческих кривых Elliptic Curve Cryptography (ECC). Использование ECC для обмена ключами значительно быстрее, чем использование простого алгоритма Диффи‑Хеллмана с классическим алгоритмом RSA, так как числа намного меньше, а вычисления выполняются быстрее.
- Настроить OpenVPN под нужные нам параметры.
OpenVPN уже идёт с примером файла конфигурации, в котором надо лишь изменить значения на нужные. Например, мы поменяли стандартный tls-auth на tls-crypt , так как при tls-crypt скрывается инициализация handhaske’а на сервере, это безопаснее и надёжнее с точки зрения обнаружения использования VPN.
Также мы поменяли стандартный криптографический шифр AES-256-CBC на AES-256-GCM, поскольку он обеспечивает более высокий уровень шифрования, производительности и лучше поддерживается современными клиентами OpenVPN.
В предыдущем шаге мы отказались от алгоритма Диффи-Хеллмана, так что надо найти строчку, которая отвечает за него, закомментировать или удалить её и указать dh none.
Далее нам нужно запустить OpenVPN без привилегий, с которыми он запущен, поэтому нам нужно указать на необходимость запуска с пользователем nobody и группой nogroup. Чтобы активировать эту возможность, найдите и раскомментируйте строки user nobody и group nogroup, удалив «;» в начале каждой строки.
Также мы изменили DNS и перенаправили весь наш трафик через сеть VPN. Для этого мы раскомментировали эти строки:
push «redirect-gateway def1 bypass-dhcp»
push «dhcp-option DNS 208.67.222.222»
push «dhcp-option DNS 208.67.220.220»
Последние две строки — это просто публичные DNS.
Помимо этого мы поменяли порт на 443 и протокол с udp на tcp.
Если вы также решите это делать, то не забудьте поменять значение с 1 на 0 в этой строке:
- Настроить конфигурации сети сервера OpenVPN. Для этого в файле /etc/sysctl.conf мы добавили следующую строчку в конце:
И применили данную настройку:
- Настроить брандмауэр под OpenVPN.
Прежде чем добавлять правила маскарадинга, необходимо предварительно найти публичный сетевой интерфейс сервера.
ip route list default
На выходе получаем что-то вроде такого:
Output
default via 159.65.160.1 dev eth0 proto static
Выделенный текст может отличаться — это то значение, которое нам понадобится в дальнейшем.
Далее открыли /etc/ufw/before.rules и добавили следующие правила, которые нам необходимы до загрузки обычных правил брандмауэра
# START OPENVPN RULES
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE
COMMIT
# END OPENVPN RULES
Выделенный текст заменили на обнаруженный нами ранее сетевой интерфейс.
Для применения нужных нам правил в файле /etc/default/ufw мы поменяли значение с DROP на ACCEPT в данной строчке:
DEFAULT_FORWARD_POLICY=»ACCEPT»
А затем просто добавили новые правила в наш брандмауэр. В нашем случае это было:
sudo ufw allow 443/tcp
так как мы поменяли порт и протокол. И перезапустили брандмауэр.
- Запустить OpenVPN на сервере, проверить рабочий статус.
- Настроить конфигурацию клиентской части.
Так как предполагалось, что ключей будет создаваться достаточно много, то мы решили, что возьмём некую базовую конфигурацию, которая будет применяться для всех, меняя лишь сертификаты и ключи, которые индивидуальны для каждого. Для этого мы воспользовались готовым файлом client.conf, который предлагает OpenVPN и поменяли некоторые значения под наши:
- в строчке с remote мы указали адрес нашего сервера, на котором находится OpenVPN,
- указали 443 порт,
- поменяли протокол на tcp,
- закомментировали строки, которые указывают на файлы с ключами и сертификатами,
- указали зеркальные настройки шифрования, как на нашем сервере,
- закомментировали директиву tls-auth , так как указываем ключ в файле и используем tls-crypt ,
- добавили строку:
Затем создали простейший скрипт, который берёт базовый файл с конфигом и компонует его с необходимыми нам клиентским ключом и сертификатом.
- Создать первые тестовые сертификаты клиента и пары ключей.
- Скачать и протестировать.
Вуаля, всё работает!
Хочу посоветовать вам быть внимательнее на выше описанных пунктах, так как какая-либо неправильно записанная строка может нарушить работоспособность VPN.
Также рекомендуем выполнить необязательный пункт и изменить настройки DNS для перенаправления всего трафика через сеть VPN. Вышеуказанные настройки создадут соединение VPN между вашим клиентом и сервером, но не будут заставлять соединения использовать туннель, а если мы немного поменяем настройки, то тогда весь трафик точно будет шифроваться.
Это то, что мы делали в 5 пункте: указывали
push «redirect-gateway def1 bypass-dhcp».
Эти строки будут сообщать вашему клиенту о необходимости использования бесплатных интерпретаторов OpenDNS на перечисленных IP-адресах. Если вы предпочитаете использовать другие интерпретаторы DNS, вставьте их на место выделенных IP-адресов.
Это изменит настройки DNS, чтобы туннель VPN использовался как шлюз по умолчанию.
На выходе мы получили моментальный коннект, который до этого ни на одном платном VPN мы не встречали, а также стабильное высокоскоростное соединение. Приводим сравнительные замеры с сайта speedtes:
- обычное соединение с офисного Wi-Fi

- тот же сервер, но с VPN

Да, есть некоторая просадка по скорости, но в целом результат очень даже неплох.
Немного “обкатав” VPN нашим backend-отделом, было принято решение о выдаче ключей всем остальным сотрудникам. На данном этапе нам требуется только ввести с помощью используемого скрипта фамилию сотрудника, после чего создаётся клиентская конфигурация для OpenVPN, которую надо только скачать с сервера и передать сотруднику. Полной автоматизации, к сожалению, добиться пока не удалось, так как в некоторых местах надо ввести пароль и подтвердить то или иное действие. Но у нас в планах немного переработать скрипт, чтобы процесс был полностью автоматическим и запускался с локальной машины.
На данный момент мы выдали конфигурации всем сотрудникам, большинство пользуются и очень довольны полученным результатом. Примерно за месяц пользования лично у меня не было ни одного дисконнекта или краша, всё работает стабильно, сервер справляется с заданной нагрузкой.
Стоит отметить, что некоторые коллеги скачали себе OpenVPN также на телефоны и другие мобильные устройства, где тоже всё стабильно работает.
Однако если заходить с одной клиентской конфигурации на разных устройствах, то начинается конфликт, отчего коннект может отваливаться. На сегодняшний день мы пока не решили, как сделать лучше: запускать VPN с опцией возможности коннекта нескольких устройств с одной конфигурации или же под отдельное устройство создавать новую конфигурацию. Пока что мы создаём новую конфигурацию с отметкой _phone . Но дебаты ещё ведутся.
Если есть замечания или предложения по этому вопросу, отпишитесь, пожалуйста, в комментариях.
Что мы имеем на выходе:
- свой личный VPN, который обходится гораздо дешевле, чем платные аналоги;
- стабильный и качественный коннект для всех сотрудников;
- неограниченное количество подключений на организацию, ограниченное только возможностью сервера (можно масштабировать согласно росту компании).
Да, нет возможности переключать IP и выбирать разные страны, но с основными поставленными задачами наш VPN справляется на все 100%. Далее в планах запустить VPN за границей.
- vpn
- vpn-сервер
- информационная безопасность
- конфиг
- конфигурационные файлы
- конфиги
Свой VPN сервер дома
Последнее время вижу очень много статей на тему vds с впн для тех или иных задач.
В основном людям нужен такой сервер для обычного неторопливого серфинга.
В связи с тем что сервер за пределами РФ стало получить сложнее и дороже решил поделиться этим способом. Он подойдет если у вас есть возможность создать виртуалку дома или рф хостинг который заметно дешевле зарубежного.
1) Создаем отдельную виртуальную машину с ОС linux, например ubuntu.
2) Настроим машину, все команды выполняются от root.
echo net.ipv4.ip_forward=1 > /etc/sysctl.conf sysctl -p
apt update && apt install iptables-persistent -y systemctl enable iptables systemctl start iptables
Можно очистить все текущие правила если вы понимаете зачем это делаете
iptables -F -t nat && iptables -F
Базовые правила которые нужны для работы:
Также обратите внимание что мой сетевой интерфейс в машине называется ens18, у вас может быть другой. внесите правки самостоятельно.
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 9051 iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 9051 iptables -t nat -A PREROUTING -p udp --dport 53 -j REDIRECT --to-ports 9053 iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE
Установим tor и obfsproxy
apt install obfs4proxy tor -y systemctl enable tor
Обратите внимание что в конфиге используются Bridge, если с этими не заработает можно взять здесь.
cat /etc/tor/torrc DataDirectory /var/lib/tor Log notice file /var/log/tor/notice.log VirtualAddrNetworkIPv4 10.192.0.0/10 AutomapHostsOnResolve 1 SocksPort 0.0.0.0:9052 TransPort 0.0.0.0:9051 DNSPort 0.0.0.0:9053 ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy Bridge obfs4 94.140.115.5:443 28CA5C42872FD6FBEDA9658F2A63618776A54416 cert=GYIbAY5uvHsfB9lBMGOS9/0+nU3uIO+DdxBZsOWwfwZsjUlxz3YIOqFKQg5GRzINiy1jAw iat-mode=0 Bridge obfs4 162.19.245.215:42001 9953E998B6C65012A49A6B48BE42065E6559804A cert=vBTn9bnFVGxcL067lP3zwqkN1gKv9VsKVZIgUIYOirVXd0D2KaPQnZjgKTgIt1sk1sZyFA iat-mode=0 UseBridges 1 # для жителей СНГ рекомендую исключить Exit-ноды следующих стран ExcludeExitNodes ,, EOF cat /etc/tor/torsocks.conf TorAddress 127.0.0.1 TorPort 9050 OnionAddrRange 127.42.42.0/24 EOF systemctl restart tor
Чтобы убедиться что служба тор успешно работает можете ввести команду:
tail -f /var/log/tor/notice.log
Если увидели Bootstrapped 100% (done) : Done значит все хорошо.
Далее нам нужно установить любой удобный вам vpn, я предпочитаю этот.
apt install wget -y wget https://raw.githubusercontent.com/hwdsl2/setup-ipsec-vpn/master/vpnsetup_ubuntu.sh -O vpn.sh && sh vpn.sh
Скрипт выведет вам настройки для подключения. ip адрес локальной машины можете посмотреть через команду ip a .
Сохраним правила iptables
iptables-save > /etc/iptables/rules.v4
Если ваш сервер доступен по публичному адресу рекомендую немного настроить безопасность:
# разрешаем ssh iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT # разрешаем весь трафик через впн соединения iptables -A INPUT --in-interface ppp+ -j ACCEPT iptables -A INPUT --in-interface lo -j ACCEPT # запрещаем все что не разрешили iptables -P INPUT DROP # сохраним правила iptables-save > /etc/iptables/rules.v4
На всякий случай выложу полный листинг правил iptables.
# Generated by iptables-save v1.8.4 on Fri May 12 08:00:50 2023 *nat :PREROUTING ACCEPT [41:9322] :INPUT ACCEPT [22:3346] :OUTPUT ACCEPT [39:2458] :POSTROUTING ACCEPT [27:1638] -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 9051 -A PREROUTING -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 9051 -A PREROUTING -p udp -m udp --dport 53 -j REDIRECT --to-ports 9053 -A POSTROUTING -s 192.168.42.0/24 -o ens18 -j MASQUERADE -A POSTROUTING -s 192.168.43.0/24 -o ens18 -m policy --dir out --pol none -j MASQUERADE -A POSTROUTING -o ens18 -j MASQUERADE COMMIT # Completed on Fri May 12 08:00:50 2023 # Generated by iptables-save v1.8.4 on Fri May 12 08:00:50 2023 *filter :INPUT DROP [2:256] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [348:126087] -A INPUT -p udp -m udp --dport 1701 -m policy --dir in --pol none -j DROP -A INPUT -m conntrack --ctstate INVALID -j DROP -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A INPUT -p udp -m multiport --dports 500,4500 -j ACCEPT -A INPUT -p udp -m udp --dport 1701 -m policy --dir in --pol ipsec -j ACCEPT -A INPUT -p udp -m udp --dport 1701 -j DROP -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT -A INPUT -i ppp+ -j ACCEPT -A INPUT -i lo -j ACCEPT -A FORWARD -m conntrack --ctstate INVALID -j DROP -A FORWARD -i ens18 -o ppp+ -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -i ppp+ -o ens18 -j ACCEPT -A FORWARD -i ppp+ -o ppp+ -j ACCEPT -A FORWARD -d 192.168.43.0/24 -i ens18 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT -A FORWARD -s 192.168.43.0/24 -o ens18 -j ACCEPT -A FORWARD -s 192.168.43.0/24 -o ppp+ -j ACCEPT -A FORWARD -j DROP COMMIT # Completed on Fri May 12 08:00:50 2023
UPD для тех кто читает через слово или видит ФР хостинг и пугается:
- трафик выходит через tor, блокировки запрещенных ресурсов обходятся.
- статья что это еще один способ который подойдет для некоторых ситуаций, а не лучший итп
