VPN: ключи, шифрование, hmac, key exchange
До того как мы приступим непосредственно к внедрению IPsec VPN, поговорим о технологиях, на которые он будет опираться, предоставляя защиту трафику: ключи, шифрование, аутентификация пакетов, обмен ключами, методы аутентификации пользователей и устройств.
Ключи
Ключи используются в таких критически важных функциях VPN как: шифрование, проверка целостности пакета, аутентификация.
Ключи бывают двух видов – симметричные и асимметричные.
Симметричный ключ, это единый ключ, который используется для защиты информации. Алгоритм шифрования использует его и для шифрования, и для дешифрования, что делает подобные алгоритмы быстрыми, но менее криптостойкими. К таким алгоритмам относятся DES, 3DES, AES, RC4 и другие.
Устройства на двух концах VPN сессии должны знать о симметричном ключе, который будет использоваться в процессе перед тем, как защищать какую-либо информацию, что может быть достигнуто следующими путями:
- pre-shared ключи – обмен ключами, что называется, out-of-band
- с использованием защищенного соединения (catch-22 ситуация) – чтобы установить безопасное подключение вам нужны ключи, а чтобы получить ключи вам нужно безопасное соединение 🙂
Асимметричные ключи – это уже пара ключей, состоящая из открытых (public) и закрытых (private) ключей. Закрытый ключ, в отличии от открытого, держится в секрете и не сообщается никому другому. За формирование пары ключей отвечает специальный алгоритм.

В процессе шифрования между маршрутизаторами R1 и R2 устройства создают пару ключей, обмениваются открытыми ключами. R1 отправляет открытый ключ на R2, R2, используя его, шифрует информацию, которую следует отправить на R1, затем R1, используя закрытый ключ, расшифровывает полученную информацию. Даже если злодей получил открытый ключ расшифровать полезную нагрузку он все равно будет не в состоянии.
Примерами могут служить такие алгоритмы как RSA, DSA, DH.
Шифрование
Есть процесс трансформации информации в такую форму, из которой ее невозможно было бы обратно извлечь без знания ключа или ключей, которые использовались в процессе трансформации.
Процесс шифрования описывает какие ключи (симметричные или ассиметричные) будут использоваться. Не смотря на то, что устройства используют отдельные модули для разгрузки CPU, процесс шифрования ассиметричными ключами намного более требователен к ресурсам.
Алгоритмы шифрования DES/3DES и AES
DES/3DES изначально разработанный IBM алгоритм Lucifer, который в процессе модификаций превратился в стандарт. DES – блочный алгоритм шифрования с эффективной длинной ключа в 56 бит.
Из-за низкой криптостойкости на смену ему в 1999 был создан 3DES, суть которого состоит в том, что информация трижды прогоняется через алгоритм DES тремя разными 56ю битовыми ключами (результирующая эффективная длина ключа – 168 бит).
Преимуществами DES/3DES являются быстрая скорость шифрования и дешифрования, простота реализации алгоритмов с ПО и железе, однако на данный момент существую алгоритмы новее, которые и быстрее и безопаснее чем 3DES. AES, как пример.
AES (Advanced Encryption Standard) – так же является симметричным блочным шифром, поддерживающим длину ключа в 128, 192 и 256 бит. Является более щадящим к ресурсам чем тот же 3DES.
Аутентификация пакетов
Используется с целью проверки подлинности пакетов, а так же отвечает за аутентификацию источника информации.
Осуществляется это с помощью HMAC (Hashing Message Authentication Codes) функций, которые являются подмножеством хэш-функций. HMAC функции используют симметричный общий ключ, для создания определённого значения – fingerprint, чтобы исключить ситуацию когда злодей перехватывает пакет и с помощью одного лишь MD5 пытается подписать изменённую информацию.
Происходит это следующим образом:
- Источник берет информацию, ключ, известный получателю, и прогоняет все это дело через HMAC функцию.
- Выхлоп HMAC и есть цифровая подпись пакета – fingerprint (в IPsec VPN это называется Integrity Checksum Value – ICV).
- Источник отправляет информацию и fingerprint получателю.
- Получатель производит те же действия с информацией, что и отправитель в пункте 1.
- Если fingerprint полученный в процессе выполнения пункта 3 и fingerprint полученный в процессе выполнения пункта 4 совпадают, то все хорошо.
Примерами HMAC функций являются MD5 и SHA.
Применяется это повсеместно в протоколах динамической маршрутизации, ведь мало кому хочется, чтобы злодей нарушил связность, обновив таблицу маршрутизации неверной информацией, или того хуже объявил себя маршрутом по умолчанию.
Меня всегда интересовал другой вопрос – зачем проверять уже зашифрованное сообщение?
Как оказалось HMAC алгоритмы используют во много раз меньше ресурсов, из-за чего вызвать отказ в обслуживании с помощью «левых» пакетов, заставляя оборудование их расшифровывать будет значительно труднее. Поясню на примере:

Если в процессе сверки на стадии 4 выяснится что fingerprint не соответствует зашифрованному пакету, то и расшифровывать его не надо.
Обмен общим HMAC ключом
Понятное дело, нельзя отправить этот ключ открытым текстом, так как теряется весь смысл HMAC. Опять же, можно использовать out-of-band обмен или обмен ключами по уже зашифрованному каналу.
HMAC fingerprint и NAT/PAT
Помните, в предыдущей статье, мы говорили о проблемах преодоления NAT/PAT IPsec протоколами AH и ESP? Информация, которая может изменится в процессе трансляции (IP, TTL, TOS поля, номера портов) просто не включается в алгоритм формирования HMAC fingerprint.
Обмен ключами
Помните дилемму? Чтобы начать обмен информацией по зашифрованному каналу, надо сначала обменяться ключами для создания зашифрованного канала и ключи, желательно, передать в сохранности. Читай – не обычным текстом. Сделать это можно с помощью:
- Pre-shared key
- Один из вариантов решения проблемы – использовать заранее оговоренные ключи и передать их администраторам другого узла по телефону или почте, или же вбить руками самому тем или иным образом.
- Уже существующих безопасных соединений
- Сходить на железку по SSH.
- Зашифровать ключ с помощью ассиметричных алгоритмов шифрования.
Но тут встает другая проблема – жадные до ресурсов ассиметричные алгоритмы шифрования при передаче большого объема траффика позволят устройству обрабатывать потом в разы меньший поток, чем при использовании симметричных, по этому… мы будем использовать ассиметричные алгоритмы шифрования для того, чтобы обмениваться симметричными ключами 🙂
Алгоритм Diffie-Hellman (DH)
DH обычно не используется для шифрования данных, однако, как указано выше, используется различными реализациями VPN для обмена общими ключами через сети с низким уровнем доверия (интернет).
Как он работает:
- Каждое из двух устройств рассказывает информацию, которая поможет им создать собственные пары открытых и закрытых ключей. Этот шаг важен потому, что DH поддерживает разные длины ключей, который называются DH groups. Как только устройства на обоих концах согласовали длину ключа создаются пары открытых и закрытых ключей.
- Каждое из устройств обменивается открытыми ключами с соседом.
- Каждое из устройств берет свой закрытый ключ и открытый ключ соседа и запускает алгоритм DH.
- Фишка алгоритма в том, что не смотря на то, что информация различается на обоих концах результат будет одинаков.
- Теперь можно зашифровать симметричных ключ с помощью ключа, полученного в процессе работы алгоритма DH и отправить его соседу не беспокоясь о том, что он может быть расшифрован 3ей стороной.
- Когда принимающая сторона получила симметричный ключ в целостности и сохранности и расшифровала его с помощью алгоритма DH можно начинать обмен данными, с использованием быстрых симметричных алгоритмов шифрования.
Некоторые DH группы и длина ключа:
- DH 1 – 768 бит
- DH 2 – 1024 бит
- DH 5 – 1536 бит
- DH 14 – 2048 бит
- DH 15 – 3072 бит
Одно из преимуществ ассиметричных алгоритмов состоит в том, что закрытый ключ никогда не передается по сети, по этому злодей, даже получив доступ к открытому ключу будет не в состоянии расшифровать передаваемую информацию. Однако такая передача уязвима к атакам типа «человек посередине» («man in the middle»).
К примеру, R1 хочет передать зашифрованный симметричный ключ R2, однако вместо R2 на предложение инициировать обмен ключами по алгоритму DH отвечает злоумышленник. Другими словами помимо обеспечения безопасности передачи по алгоритму DH необходимо еще каким-то образом ответит на вопрос – «является ли R2 тем, за кого он себя выдает»?
Аутентификация устройств встречается и в l2l и в remote access VPN. Осуществляется либо с помощью pre-shared ключей, либо с помощью цифровых сертификатов.
Аутентификация пользователей свойственна именно remote access VPN-ам, обычно используется совместно с аутентификацией устройств. Осуществляется с помощью pre-shared (обычный пароль) ключей и сервисам подобным OTP (one time password).
Аутентификация устройств: pre-shared симметричные ключи
Наиболее простой и часто встречающийся случай когда устройства проводят аутентификацию друг друга с помощью pre-shared ключей, обмен которыми был произведен заранее, out-of-band. Процесс аутентификации использует либо алгоритм шифрования, либо HMAC функцию.
И в том и в другом случае берется какой-то набор сведений об устройствах (IP, hostname, serial no. + pre-shared key), прогоняется через алгоритм шифрования или HMAC функцию и отправляется соседу. Сосед расшифровывает или прогоняется через HMAC и сравнивается с fingerprint. Если все совпадает, то факт соседства можно считать установленным.
Аутентификация устройств: pre-shared асимметричные ключи
С ассиметричными ключами так же имеет место обмен out-of-band, только вместо pre-shared ключей соседи будут меняться открытыми ключами. В конечном итоге маршрутизаторы-соседи R1 и R2 будут иметь следующий набор:
R1: R1 public key, R1 private key, R2 public key
R2: R2 public key, R2 private key, R1 public key
Далее, к примеру, R1 берет информацию о себе, R1 private key и шифруя это, передает в последствии in-band на R2, где R2 расшифровывает информацию с использованием R1 public key.
Еще одним методом аутентификации является аутентификация с использованием цифровых сертификатов. Я на нем подробно останавливаться не буду.
Главное руководство по шифрованию VPN

Возможно, наиболее важной особенностью виртуальной частной сети (VPN) является ее способность шифровать данные, передаваемые между вашим компьютером и серверами провайдера VPN..
Шифрование VPN не только защищает ваши личные и деловые данные, но и защищает ваши действия в Интернете от посторонних глаз..
В этой статье я подробно расскажу о шифровании. Я расскажу о том, что такое шифрование, как оно работает и как лучшие провайдеры VPN используют его для защиты IP-адресов и данных своих клиентов от воздействия..
К концу этой статьи вы узнаете больше о шифровании, чем когда-либо мечтали, и будете лучше подготовлены к рассмотрению рекламных претензий провайдеров VPN..
Что такое шифрование?
шифрование это процесс конвертации простой текст (читаемая информация) в шифротекста (нечитаемая информация).
Дешифрирование это процесс превращения этого шифротекста назад в простой текст так что это опять понятно.

Помните, как вы и ваши друзья использовали «секретный код» для отправки заметок в начальной школе? Современная технология шифрования схожа, только ее гораздо сложнее расшифровать, чем когда-либо было «A = 1, B = 2» и т. Д..
Современная технология шифрования использует секретный ключ шифрования для «шифрования» данных пользователя, чтобы его не мог прочитать никто, кто не обладает ключом шифрования, что не позволяет посторонним читать вашу личную информацию.
Для того, чтобы шифровать открытым текстом или раскодировать зашифрованный текст Секретный ключ необходим. Оба ключа используют шифровать, который является алгоритмом, который применяется к открытому тексту как для создания, так и для декодирования зашифрованного текста.
Банки, обработчики кредитных карт, продавцы и другие используют шифрование для защиты конфиденциальной информации – такой как номера кредитных карт, информация о заказе и другие конфиденциальные данные – от посторонних глаз посторонних.
Однако для целей данной статьи мы сосредоточимся на шифровании, которое VPN провайдеры использовать для защиты информации своих пользователей – таких как их веб-трафик, загруженные файлы и доступ к сервисам – от тех, кто хотел бы взглянуть на свои личные дела.
VPN маршрутизирует ваше интернет-соединение через «туннель» шифрования, не позволяя посторонним лицам – таким как ваш интернет-провайдер, правоохранительные органы или хакеры – контролировать ваш IP-адрес, а также ваши онлайн-путешествия и связанные с ними конфиденциальные личные и деловые отношения. Информация.
туннель шифрования назван точно, так как он работает так же, как работает метро или шоссе.
Например, хотя вы можете знать, что метро находится у вас под ногами, вы не знаете, сколько поездов проходит через туннель, сколько у каждого машин, сколько пассажиров едет на них, где они были или где они ‘Собираемся.
VPN-соединение работает как виртуальный «туннель», защищая ваши онлайн-путешествия от посторонних и не давая им знать, что вы делаете..
Как работает шифрование
Ранее в этой статье я предложил простое объяснение того, как работает шифрование..
Конечно, современное шифрование, используемое для защиты данных в 21-м веке, не так просто, но процесс похож.
Когда шифрование, которое вы используете, так же просто, как буквенная или числовая замена (например, то, которое вы использовали в начальной школе), его легко расшифровать.
Современное шифрование основано на сложных математических алгоритмы которые делают шифрование и дешифрование много более сложный.
На сегодняшний день используются два основных типа ключей шифрования: симметричный и асимметричный..
Алгоритмы симметричного ключа (закрытые ключи)
- Pro: быстро
- Против: менее безопасный, чем асимметричный
алгоритм симметричного ключа использует одни и те же ключи шифрования как для шифрования источника данных открытого текста, так и для дешифрования результирующего зашифрованного текста.
Обе стороны, обменивающиеся информацией, должны согласовать конкретный пароль (ключ), который будет использоваться для шифрования и дешифрования данных. Это упрощает задачу, так как участвующим сторонам нужно только один раз обменять ключ.
Симметричные ключи (также называемые закрытые ключи) обычно используются в одноразовых ситуациях, когда каждый раз создается новый ключ. Платежные решения, такие как Apple Pay или Android Pay, используют алгоритм одноразового симметричного ключа в форме одноразового токена для защиты платежа..

Алгоритмы симметричного ключа Быстрее чем асимметричные, так как задействован только один ключ. Тем не менее, это также недостаток, так как любой посторонний, который получает ключ может легко расшифровать всю зашифрованную информацию, которую стороны отправляют и получают.
Перехват полностью возможен, так как пользователи должны будут заранее согласовать ключ через незашифрованный канал, такие как телефонный звонок, электронная почта или текстовое сообщение, и все это небезопасно по-своему.
Этот процесс также является проблемой для пользователей, которым необходимо обмениваться данными с несколькими сторонами. Это связано с требованием использования уникального ключа для каждой стороны. Конечно, вы можете использовать один и тот же ключ для всех пользователей, но тогда каждый сможет расшифровать данные других пользователей..
Алгоритмы асимметричного ключа (открытые ключи)
- Pro: более безопасный, чем симметричный
- Con: медленный
алгоритм асимметричного ключа использования разные ключи для шифрования открытого текста и расшифровки полученного зашифрованного текста. Процесс использует как открытый, так и закрытый ключ.
открытый ключ используется для шифровать данные и закрытый ключ используется для расшифровывать данные. Только предполагаемый получатель данных знает закрытый ключ. Любое сообщение, зашифрованное с использованием открытого ключа, может быть расшифровано только с использованием соответствующего закрытого ключа..

Я буду использовать сервис Apple iMessage, чтобы объяснить, как работает асимметричное шифрование.
Приближается семейное воссоединение, и вы хотите приготовить бабушкин пирог с двойным шоколадом Coca-Cola, но у вас нет рецепта. Итак, вы берете свой iPad и отправляете сообщение на iPhone вашей мамы.
Когда вы с мамой настраивали свой iPad, вы включили iMessage. Это сквозная служба зашифрованных сообщений, которая действует как служба обмена SMS-сообщениями, но защищает ваши сообщения от – скажем, со мной – посторонних глаз.

На вашем iPad приложение iMessage создало закрытый ключ, чтобы использовать его для расшифровки данных, которые вы получаете на iPad.
На iPhone твоей мамы приложение iMessage создало (другой) закрытый ключ, чтобы использовать его для расшифровки данных, которые она получает на своем iPhone.
В обоих случаях закрытый ключ уникален для этого конкретного устройства – один закрытый ключ для вашего iPad и один закрытый ключ для iPhone вашей мамы..
Приложение также поручило серверам Apple создать уникальный общественности ключ для каждого пользователя, который он хранит на этих серверах.
Когда вы отправляете свое сообщение маме, ваше устройство получает открытый ключ вашей матери с серверов Apple и использует ее общественности ключ к шифровать Ваше исходящее сообщение, прежде чем оно даже покинет ваш телефон.
После того как вы нажмете «отправить», серверы Apple перенаправят зашифрованное сообщение на iPhone вашей матери, где она частный ключ расшифровывает Ваше сообщение.
Когда ваша мама отвечает, процесс выполняется снова, но в обратном порядке. На этот раз сообщение вашей матери зашифровано с помощью ваш открытый ключ (полученный с серверов Apple), а затем сообщение дешифруется на вашем iPad с помощью ваш закрытый ключ.
Это делает асимметричную криптографию более безопасный чем симметричная криптография, так как это устраняет необходимость совместного использования одного ключа.
Однако, поскольку процесс асимметричной криптографии математически более сложен, чем процесс симметричной криптографии, добавляя к вычислительным затратам, процесс шифрования / дешифрования занимает больше времени, немного замедляя передачу.
VPN используют асимметричное шифрование для обмена симметричными сеансовыми ключами, которые затем используются до конца сеанса. Из-за вычислительной нагрузки, о которой я упоминал выше, вы обычно замечаете более медленную скорость соединения при использовании VPN, чем обычное соединение с провайдером.
Длина ключа шифрования
Надежность любого шифрования зависит от ключа шифрования. размер бита. Как правило, чем длиннее ключ, тем сильнее шифрование..
По сути, чем длиннее длина ключа, тем больше возможных комбинаций может быть сделан ключом, что затрудняет попытку грубой силы найти правильные значения ключа.
размер бита ключа относится к числу единиц и нулей (двоичных), используемых для выражения алгоритма. Это известно как длина ключа. Эти два термина взаимозаменяемы, хотя «длина ключа» является более популярным термином.
В таблице ниже показано, как возможные комбинации ключей шифрования экспоненциально увеличиваются при увеличении размера ключа:
| Размер ключа | Возможные ключевые перестановки |
| 1-битовый | 2 |
| 2-битовый | 4 |
| 8-разрядный | 256 |
| 16-битный | 65536 |
| 64-битный | 4,2 х 10 ^ 9 |
| 128-бит | 3,4 х 1 ^ 38 |
| 192-битный | 6,2 X 10 ^ 57 |
| 256-битный | 1,1 х 10 ^ 77 |
1-бит – это одна двоичная цифра, предлагающая две перестановки: on (1) или off (0); 2-бит предлагает две двоичные цифры (00, 01, 10, 11), четыре перестановки и так далее. В приведенной выше таблице размеры ключей ниже 128 бит включены только для демонстрационных целей, поскольку все, что меньше 128 бит, будет слишком легко взломано.
По мере увеличения размера ключа увеличивается число возможных комбинаций и сложность шифра. Это также влияет на вероятность успеха хакера, выполняющего атаку грубой силой на ключ.
атака грубой силой это когда злоумышленник пробегает все возможные перестановки паролей или ключей, пока не найдет правильный. Даже при использовании суперкомпьютеров современное шифрование может взломать годы, если вообще.
Второй по скорости суперкомпьютер в мире, Sunway TaihuLight, способен развивать скорость 93 петафлопс в секунду, что делает его в несколько миллионов раз быстрее, чем персональный компьютер..
ScramBox подсчитал, что потребуется Sunway TaihuLight 27 337 893 триллионов триллионов триллионов триллионов (это верно, 4 триллионы лет, чтобы взломать 256-битный ключ AES, один из самых мощных современных шифровальных шифров (о которых я расскажу в следующем разделе).
И это один из самых быстрых суперкомпьютеров в мире. На один высокопроизводительный ПК для взлома AES-256 потребуется 27 триллионов триллионов триллионов триллион лет.
Могу ли я напомнить вам, что Вселенной всего 15 миллиардов лет? Даже Ответ на Жизнь, Вселенную и Все будет не так долго, чтобы рассчитать.
Достаточно сказать, что хакер будет очень долго ждать доступа к вашему банковскому счету, и ни у кого нет на это времени – так что вы можете быть уверены, что ваши данные в безопасности после шифрования AES-256.
Шифры шифрования – что это такое?
Как мы видели в предыдущем разделе, длина ключа шифрования – это фактическое число необработанных чисел, участвующих в шифровании..
Теперь мы посмотрим на шифры, которые являются фактическими алгоритмами (или сериями шагов), используемыми для выполнения шифрования. Протоколы VPN используют эти шифры для шифрования ваших данных. (Я буду обсуждать протоколы в следующем разделе.)
Несмотря на то, что грубое использование современного компьютерного шифра в основном бесполезно, в плохо разработанном шифре иногда есть недостатки, которые хакеры могут использовать для взлома связанного шифрования..
К счастью, более длинные длины клавиш могут помочь компенсировать эти недостатки, увеличив число возможных комбинаций..
Однако длина ключа сама по себе не является точным показателем силы шифра.. Сочетание сложности шифра и длины ключа – вот что важно.
В реальных приложениях необходимо найти баланс между безопасностью и удобством использования, так как чем длиннее длина ключа, тем больше требуется вычислений, и, в свою очередь, требуется больше вычислительной мощности..
Самым популярным шифром, используемым сегодня, является AES..
Национальный институт стандартов и технологий США (NIST) создал AES в 2002 году. AES расшифровывается как «Advanced Encryption Standard», который является спецификацией для шифрования электронных данных..
AES состоит из 3 блочных шифров: AES-128, AES-192 и AES-256. Каждый из них шифрует и дешифрует данные, используя ключи длиной 128, 192 и 256 бит соответственно..
Поскольку AES является симметричный шифр, он использует один и тот же ключ для шифрования и дешифрования данных, поэтому отправляющая и получающая стороны должны знать и использовать один и тот же секретный ключ.
Алгоритм определяет определенное количество преобразования данных выполняется на данных, хранящихся в массиве. Количество преобразований данных определяется длиной ключа: 10 преобразований для 128-разрядных, 12 для 192-разрядных и 14 для 256-разрядных ключей. Это известно как полиморфизм.
Например, скажем, мы используем простой шифр сдвига букв, равный единице. A будет равен B, тогда B = C, C = D, D = E и так далее. В первом преобразовании A устанавливается равным B; затем во втором преобразовании A оказывается равным C; в третий раз A равно D; и так далее.

Итак, если бы вы использовали AES-128, который выполняет 10 преобразований, то A будет равно K.
Конечно, шифр AES далеко более сложный, чем простой шифр со сдвигом букв, поэтому конечный результат будет гораздо сложнее и сложнее расшифровать, чем A, равный K.
С момента его создания в 2002 году было проведено значительное количество исследований по атаке на стандарт шифрования AES..
Тем не менее, AES оказался надежная защита. Единственный раз, когда любые атаки мы успешным, это было связано с тем, что хакеры использовали уязвимости, связанные с внедрением или управлением. (Другими словами, человеческая ошибка при настройке.)
Совершенная прямая секретность
Совершенная прямая секретность (PFS), также известная как «Прямая секретность», представляет собой систему использования шифров, где для каждого генерируется новый и уникальный (или «эфемерный») набор личных ключей шифрования. сессия.
TechTerms определяет сеанс как «ограниченное время связи между двумя системами». На простом английском языке это обычно относится к промежутку времени между тем, когда пользователь заходит на веб-сайт, и когда он выходит из системы или закрывает браузер..
Каждый сеанс имеет свои собственные ключи, которые используются один раз и никогда больше.
Perfect Forward Secrecy устраняет способность хакера использовать постоянный «главный ключ», например ключ к самой учетной записи пользователя на сайте. Даже если ключ взломан, скомпрометирован только один сеанс, в то время как все другие сеансы остаются безопасными.
PFS является отличным методом защиты отдельных сеансов, особенно для веб-сайтов HTTPS и соединений OpenVPN. Поисковый гигант Google объявил в ноябре 2011 года, что будет использовать PFS для защиты сеансов Gmail, а также Search, Docs и Google.+.
Что мы узнали до сих пор – шифрование
шифрование это процесс алгоритма, превращающий читаемый открытый текст в нечитаемый зашифрованный текст, и дешифрование это процесс алгоритма превращения этого зашифрованного текста обратно в открытый текст.
Существует два типа ключевых алгоритмов: симметричный и асимметричный. симметричный ключевые алгоритмы используют только закрытый ключ, что делает его быстрым, но менее безопасным, в то время как асимметричный ключевые алгоритмы использования частный и общественности ключи, замедляя его, но делая его намного более безопасным.
шифрование шифры являются алгоритмами инструкций о том, как преобразовать (зашифровать) данные (A = K, B = L и т. д.), а ключ шифрования указывает, сколько раз данные будут преобразованы.
шифрование ключи являются частями информации, которые определяют выходные данные криптографического алгоритма, определяющего преобразование информации открытого текста в зашифрованный текст. Чем выше число битов ключа, тем выше уровень шифрования.
Шифрование VPN
В этом разделе я объясню, как виртуальная частная сеть (VPN) использует шифрование для защиты ваших действий в Интернете и связанных с ними личных и деловых данных..
Кроме того, я также поделюсь информацией о различных типах протоколов шифрования VPN, которые используют провайдеры, объясню, как они работают, и объясню сильные и слабые стороны каждого протокола..

Программное обеспечение VPN шифрует все данные, которые передаются с вашего компьютера на VPN-серверы провайдера. Этот зашифрованный «туннель» защищает как ваш IP-адрес, так и онлайн-путешествия от посторонних глаз.
Что такое протоколы?
Протокол VPN это механизм или «набор инструкций» (или, для упрощения, метод), который создает и поддерживает зашифрованное соединение между компьютером пользователя или другим подключенным устройством и серверами провайдера VPN.
Протоколы VPN используют алгоритм шифрования, чтобы защитить ваши данные от посторонних глаз.
При использовании протокола VPN подключенное устройство следует инструкциям протокола, которые сообщают ему, как зашифровать и расшифровать данные, передаваемые и получаемые между ним и сервером VPN..
Коммерческие провайдеры VPN используют различные типы протоколов безопасности, и все они имеют свои сильные и слабые стороны. Большинство протоколов VPN предлагают свои собственные встроенные алгоритмы шифрования, хотя это не так для всех, как я объясню чуть позже.
Как работают протоколы?
Каждый протокол VPN имеет свои сильные и слабые стороны, а также уникальные особенности.
Например, OpenVPN позволяет пользователям подключаться по протоколу пользовательских дейтаграмм (UDP) или по протоколу управления передачей (TCP), в то время как IKEv2 особенно хорош для повторного подключения пользователей, которые теряют свои интернет-соединения..
Однако из всего, что они включают, 4 наиболее важны для рассмотрения: шифры, протоколы транспортного уровня, шифрование рукопожатия и аутентификация SHA. Я буду обсуждать каждый из них в разделах ниже.
После того как я расскажу об этом, я представлю протоколы, которые наиболее распространены в индустрии VPN на сегодняшний день. К ним относятся: OpenVPN, L2TP / IPSec, IKEv2, SSTP и PPTP.
Большинство протоколов установлены в их конфигурации, но OpenVPN выделяется, потому что он очень настраиваемый, поэтому я буду использовать его в качестве примера в этом разделе.
шифры
Как я упоминал ранее, протоколы используют алгоритмы, называемые «шифрами», для выполнения шифрования и дешифрования данных. Шифр – это последовательность шагов, которые выполняются для шифрования / дешифрования данных..
Популярные протоколы VPN, такие как OpenVPN, имеют гибкость в использовании нескольких шифров с симметричным ключом для защиты данных на каналах управления и данных..
Канал управления шифрование защищает соединение между вашим компьютером или устройством и серверами провайдера VPN. Канал данных шифрование обеспечивает фактические данные, которые обе стороны передают друг другу.
Наиболее распространенными протоколами, которые коммерческие провайдеры используют для защиты своих коммуникаций, являются AES, Blowfish и (в гораздо меньшей степени) Camellia..
Хотя я упоминал AES в предыдущем разделе, я чувствую, что важно вернуться к нему в этом разделе статьи, учитывая его популярность.
AES, возможно, является наиболее распространенным шифром с симметричным ключом, используемым сегодня, даже правительство США использует AES-256 для защиты своих данных. AES считается очень безопасным и сертифицирован Национальным институтом стандартов и технологий..
AES доступен в 3 различных размерах битовых ключей – AES-128, AES-192 и AES-256. AES-128 и AES-256 являются наиболее используемыми. AES-256 является самым сильным из двух вариантов, хотя AES-128 остается безопасным, насколько эксперты могут сказать.
Всемирно известный технолог безопасности Брюс Шнайер (Bruce Schneier) разработал Blowfish-128, который является шифром по умолчанию, который использует OpenVPN. Блок с симметричным ключом не запатентован и не требует лицензионных отчислений и не требует лицензии на использование..
В то время как размеры ключей Blowfish могут варьироваться от 32 до 448 бит, 128-битный размер ключа – это тот, который пользователи обычно используют для защиты данных..
Blowfish достаточно безопасен для случайного использования. Тем не менее, у него есть свои недостатки. В некоторых реализациях шифра есть ошибка. Однако эталонная (базовая) версия не содержит ошибки.
Несмотря на то, что Camellia является надежным современным шифром, Национальный институт стандартов и технологий не сертифицировал его, и он не был проверен на наличие слабых мест, так же как AES.
Камелия доступна в размерах ключа 128, 192 и 256 бит. Mitsubishi Electric и NTT совместно разработали шифр, подходящий как для аппаратной, так и для программной реализации..
Протоколы транспортного уровня: TCP и UDP
Протокол управления передачей (TCP) и Протокол пользовательских дейтаграмм (UDP) являются протоколами транспортного уровня. Протоколы транспортного уровня обрабатывают сквозные услуги связи для приложений, таких как те, которые используются в Интернете.
Протокол управления передачей (TCP) обеспечивает надежную и упорядоченную, но медленную связь.
Если TCP используется для отправки сообщения, файла или другого типа информации, отправитель может быть уверен, что информация будет доставлена получателю с нет коррупции (ошибки в данных) и в правильном порядке. Это особенно важно для передачи файлов и отправки сообщений.
TCP отправляет данные в «потоке», при этом ничто не указывает на то, где начинается или заканчивается каждый пакет, поэтому он увеличивает нагрузку на устройство, так как для обеспечения правильного приема данных требуется больше вычислительной мощности..

Если части потока данных TCP поступают в неправильном порядке, запрос повторной отправки данных автоматически отправляется как часть обработки, прежде чем данные могут быть собраны в правильном порядке. Это приводит к выше затраты на обработку.
TCP используется во всемирной паутине для доступа по HTTP (просмотр веб-страниц), электронной почты, передачи файлов и других операций..
Протокол пользовательских дейтаграмм (UDP) обеспечивает более быструю, но менее надежную связь.
Если для отправки информации используется UDP, отправитель не может быть в безопасности, зная, что информация вообще попадет в отправителя, и если он это сделает, он может быть не в правильном порядке. Плюс, когда это прибывает, данные могут быть повреждены, поскольку UDP предлагает без исправления ошибок совсем.

Это означает, что, если вы отправляете серьезное текстовое сообщение из одного слова своему значимому другому, например:
«Найден прекрасный рай. Это твое, девочка. Крис”
Тогда это может прийти так:
«Нашел красивую девушку. Это рай. Твой Крис.
Так что это определенно не лучший протокол для загрузки файлов или отправки и получения другой информации, такой как текстовые сообщения, которые должны быть в правильном порядке.
UDP больше легкий чем TCP, так как он не поддерживает отслеживание соединений, упорядочение сообщений или другие операции с интенсивным использованием процессора. UDP не заботится, он просто принимает информацию в любом порядке, в котором он был получен, в неправильном порядке или нет.
UDP отправляет пакеты данных индивидуально, и пакеты могут прийти не в порядке, если они вообще поступят.
UDP используется для систем доменных имен (DNS), потоковых мультимедийных приложений (таких как Netflix) и многопользовательских онлайн-игр..
Рукопожатие шифрование
При установлении соединения между вашим устройством и сервером вашего провайдера VPN, процесс использует Подтверждение безопасности транспортного уровня (TLS) установить секретные ключи, используемые для общения двух.
Это «рукопожатие» провер что вы подключаетесь к серверам провайдера VPN, а не к «подделанному» серверу злоумышленника.

TLS обычно использует криптосистему с открытым ключом RSA для защиты рукопожатия, используя асимметричное шифрование и алгоритм цифровой подписи для идентификации сертификатов TLS / SSL. Однако иногда он также использует обмен ключами ECDH или Диффи-Хеллмана..
RSA (Rivest-Shamir-Adleman) – это асимметричная система шифрования, которая использует открытый ключ для шифрования данных, а другой, секретный ключ – для дешифрования данных. Система используется для обеспечения безопасности общения в Интернете более двух десятилетий..
RSA может иметь различные длины ключей, но наиболее популярными являются 1024-битные (RSA-1024) и 2048-битные (RSA-2048).
Команда экспертов смогла взломать RSA-1024 в 2023 году. Это привело к тому, что компании, которые ведут бизнес через Интернет, отказались от использования RSA-1024 по группам..
К сожалению, некоторые провайдеры VPN все еще используют RSA-1024 для защиты рукопожатий клиент / сервер. Прежде чем выбрать провайдера VPN, обязательно уточните у провайдера, чтобы он больше не использовал RSA-1024 для защиты своих рукопожатий..
RSA-2048 и выше считается безопасным, поскольку это не было взломано (насколько кто-либо знает).
Однако нецелесообразно использовать его отдельно, так как он не обеспечивает совершенную прямую секретность. Включение обмена ключами Диффи-Хеллмана (DH) или Diffie-Hellman (ECDH) по эллиптической кривой в набор шифров может исправить это, позволяя ему соответствовать спецификации для PFS..
Диффи-Хеллман (DH) и эллиптическая кривая Диффи-Хеллман (ECDH)
Протоколы VPN также могут использовать альтернативный тип шифрования рукопожатия, известный как обмен криптографическим ключом Диффи-Хеллмана..
Ключ обычно использует длину ключа 2048 или 4096 бит. (Избегайте всего, что меньше 2048, в противном случае, оно уязвимо для атаки с нарушением правил игры.)
Главное преимущество Диффи-Хеллмана перед RSA состоит в том, что он изначально предлагает Perfect Forward Secrecy защита. Однако, рукопожатие RSA можно улучшить, добавив к нему обмен ключами DH, обеспечивая аналогичную защиту.
Эксперты по безопасности критикуют Диффи-Хеллмана за повторное использование небольшого набора простых чисел. Это оставляет его открытым для взлома партиями с неограниченными ресурсами, такими как АНБ. Тем не менее, можно создать безопасное рукопожатие, когда оно используется как часть настройки шифра RSA..
Эллиптическая кривая Диффи-Хеллмана (ECDH) это более поздняя форма криптографии, в которой нет уязвимостей, которые есть у Диффи-Хеллмана. ECDH использует определенный тип алгебраической кривой вместо простых чисел, которые использует оригинальный Диффи-Хеллман.
ECDH также можно использовать вместе с рукопожатием RSA, чтобы предложить совершенную прямую секретность. Кроме того, он может безопасно зашифровать рукопожатие и предоставить PFS подпись с помощью алгоритма цифровой подписи эллиптической кривой (ECDSA)..
Длина ключа ECDH начинается с 384 бит. Хотя это считается безопасным, когда речь идет о шифровании рукопожатия, чем дольше, тем лучше.
Аутентификация SHA
Безопасный алгоритм хеширования (SHA) криптографическая хеш-функция, которая может использоваться для аутентификации соединений, включая SSL / TLS и соединения для передачи данных.
По сути, SHA используется для создания уникальное значение проверки для цифровых данных. Принимающее устройство использует проверочное значение для подтверждения целостности данных..
Простым примером может быть, если контрольное значение для файла или сообщения «456AHD» на одном конце, а также «456AHD» при получении – в этом случае принимающая сторона может быть уверена, что никто не вмешивался в данные вместе способ.
Итак, если вы получите сообщение «Ты самая лучшая, детка» от твоей матери, SHA заверяет тебя, что это не дело рук хакера, и что твоя мама действительно считает тебя лучшим, детка.
Соединения OpenVPN относятся к числу тех, которые могут быть аутентифицированы с использованием SHA.
SHA создает уникальный отпечаток из действующего сертификата TLS. Сертификат может быть проверен клиентом OpenVPN. Если кто-нибудь изменит сертификат, даже самый маленький, SHA обнаружит его и отклонит соединение.
SHA помогает предотвратить атаки, такие как атака «человек посередине», когда сторона пытается перенаправить VPN-соединение с VPN-сервера провайдера на сервер, созданный самим хакером..
Существует 3 уровня SHA, уровень безопасности которых повышается с ростом: SHA-1, SHA-2 и SHA-3.
Хотя хэш-функции SHA-2 и SHA-3 по-прежнему считаются безопасными, SHA-1 легко ломается при использовании для защиты веб-сайтов. Поскольку веб-сайты, защищенные SHA-1, все еще находятся в свободном доступе, большинство современных браузеров предупреждают вас при подключении к «безопасному» сайту SHA-1..
Что мы узнали до сих пор – шифрование VPN
Протокол VPN представляет собой набор инструкций, используемых для создания и поддержания зашифрованного соединения между двумя устройствами, такими как мобильное устройство пользователя или компьютер и серверы службы VPN.
Протоколы используют алгоритмы под названием «шифры,”, Которые выполняют шифрование и дешифрование данных. Шифр лучше всего описать как последовательность шагов, которые необходимо выполнить для шифрования и дешифрования отправляемых и получаемых данных. Коммерческие провайдеры VPN обычно используют AES и шифры Blowfish, чтобы обеспечить их связь.
Протоколы транспортного уровня управлять услугами связи между устройствами для интернет-приложений. Протокол управления передачей (TCP) – это протокол, исправляющий ошибки, который лучше всего использовать для загрузки файлов и отправки сообщений. Протокол пользовательских дейтаграмм (UDP) быстрее, но не включает исправление ошибок и лучше всего используется для потоковой передачи контента, такого как контент от Netflix или других поставщиков видео и музыки.
Подтверждение безопасности транспортного уровня (TLS) устанавливает секретные ключи, необходимые для связи двух устройств. TLS обычно использует криптосистему с открытым ключом RSA для защиты рукопожатия, но также может использовать обмен ключами ECDH или Diffie-Hellman.
Безопасный алгоритм хеширования (SHA) криптографическая хеш-функция, используемая для аутентификации соединений.
Протоколы VPN
В этом разделе я расскажу об OpenVPN, L2TP / IPSec, IKEv2, SSTP и PPTP..
Это наиболее распространенные протоколы, используемые в настоящее время. Я объясню, что они и как они работают. Как правило, мы будем обсуждать их в порядке наилучшего протокола к худшему, как они перечислены в первом предложении выше. Тем не менее, мы сохраним лучшее для последнего: OpenVPN.
Поскольку OpenVPN, вероятно, является отраслевым стандартом, я расскажу о нем подробнее. Тем не менее, будьте уверены, я не буду экономить на деталях о других протоколах, поскольку они также все еще интенсивно используются.
L2TP / IPSec
- Считается наиболее безопасным
- Простота установки и использования
- Широко доступный
- Часто быстрее, чем OpenVPN
- Возможно скомпрометировано АНБ
- Реализация иногда неверна
Протокол туннелирования уровня 2 (L2TP) встроен в большинство операционных систем и VPN-совместимых устройств. Это облегчает настройку. L2TP обычно используется в сочетании с пакетом аутентификации / шифрования IPSec (Internet Protocol Security), так как L2TP сам по себе не обеспечивает никакого шифрования..

L2TP / IPsec может использовать как шифры 3DES, так и шифры AES, хотя обычно используется AES, так как было обнаружено, что 3DES уязвимы для атак Sweet32 и встречных посередине.
L2TP / IPSec использует UDP для первоначального обмена шифрованным ключом (рукопожатие) и для передачи данных.
Хотя этот протокол немного медленнее других, поскольку он инкапсулирует данные дважды, замедление немного компенсируется благодаря протоколу, допускающему многопоточность, и шифрованию / дешифрованию на уровне ядра..
Теоретически этот протокол может обеспечить лучшую производительность, чем OpenVPN.
Хотя у L2TP / IPSec нет известных существенных уязвимостей безопасности, Эдвард Сноуден и специалист по безопасности Джон Гилмор указали, что IPSec был намеренно ослаблен «кем-то, не сотрудником АНБ, но у которого были давние связи с АНБ» в комитете по стандартам IPSec IETF на этапе проектирования, и таким образом был скомпрометирован АНБ.
К сожалению, некоторые провайдеры VPN не реализуют L2TP / IPSec должным образом, используя предварительные общие ключи (PSK), доступные на их веб-сайтах. Это открывает возможность злоумышленнику использовать предварительный общий ключ для олицетворения VPN-сервера, позволяя им прослушивать или вставлять вредоносные данные..
Хотя возможно, что L2TP / IPSec может быть подвержен уязвимостям безопасности, при правильной реализации он считается безопасным. Его совместимость с большинством операционных систем и устройств является несомненным плюсом.
IKEv2
- Быстро и стабильно
- Безопасно при использовании с AES
- Легко настроить
- Недоступно на некоторых платформах
Internet Key Exchange версии 2 (IKEv2) изначально был разработан в партнерстве между Cisco и Microsoft. Протокол поддерживается устройствами Windows 7 и выше, iOS и BlackBerry..

В дополнение к официальной версии IKEv2 были разработаны совместимые версии с открытым исходным кодом для других операционных систем..
Поскольку IKEv2 – это просто протокол туннелирования, его необходимо соединить с набором аутентификации, таким как IPSec, чтобы стать действительным и безопасным протоколом VPN..
IKEv2 может использовать множество криптографических алгоритмов, включая AES, Blowfish, 3DES и Camellia..
IKEv2 использует UDP для первоначального (и зашифрованного) обмена ключами и для передачи данных.
IKEv2 – лучший выбор для пользователей смартфонов, которые регулярно переключаются между сотовыми и локальными Wi-Fi-соединениями, поскольку этот протокол отлично подходит для автоматического повторного подключения, когда пользователи теряют, а затем снова подключаются к Интернету..
Несмотря на то, что IKEv2 не так популярен, как другие протоколы, так как он поддерживается на меньшем количестве платформ, его производительность, безопасность и возможность автоматического восстановления соединения делают его допустимым вариантом, если он доступен.
- Полностью интегрирован в Windows
- Может обычно туннель под брандмауэрами
- Фирменный протокол Microsoft
- Ограниченная поддержка для платформ, отличных от Windows
Протокол защищенного туннелирования сокетов (SSTP) является проприетарным стандартом протокола Microsoft и поэтому тесно интегрирован с Windows. Протокол доступен для устройств Windows, macOS, Linux и BSD. SSTP был доступен для установки Windows с момента выпуска Windows Vista SP1.

Microsoft разработала протокол для удаленного клиентского доступа, и поэтому он не совместим с VPN-туннелями между сайтами..
Шифрование SSTP использует SSL 3.0, поэтому оно предлагает функции и преимущества, аналогичные OpenVPN, включая возможность использовать TCP-порт 443, чтобы избежать блокировки.
Существуют проблемы с SSTP, поскольку он не является открытым стандартом и поэтому не подлежит рассмотрению общественностью. Существуют опасения по поводу предыдущего сотрудничества Microsoft с Агентством национальной безопасности (АНБ), и сотрудник АНБ признал, что работал с Microsoft над разработкой Windows 7.
SSTP имеет возможность туннелирования под большинством брандмауэров благодаря использованию SSL / TLS через TCP-порт 443. Это может сделать его привлекательным вариантом для тех, кто захвачен за чрезмерно ограничительными брандмауэрами.
- Популярный клиент, встроенный в большинство платформ
- Легко настроить
- Низкие вычислительные затраты делают это быстрым!
- Это совершенно небезопасно
- Это было скомпрометировано АНБ
- Легко обнаруживается и блокируется
Консорциум под руководством Microsoft создал в 1995 году протокол туннелирования «точка-точка» (PPTP) для создания VPN-подключений по коммутируемым соединениям. Он был интегрирован с Windows 95.

Протокол быстро стал стандартом для корпоративных сетей VPN. Это остается популярным протоколом для коммерческого сервиса VPN и сегодня Однако с годами, когда технология VPN улучшилась, PPTP отошел на второй план..
PPTP использует 128-битные ключи шифрования, поэтому для его реализации требуется меньше вычислительных затрат, чем для других протоколов, что делает его быстрее, чем для многих других протоколов..
Однако PPTP не так безопасен, как другие протоколы, и сталкивается с многочисленными уязвимостями безопасности. Хотя Microsoft исправила многие из уязвимостей, фирма из Редмонда рекомендует вместо этого использовать SSTP или L2TP / IPsec..
PPTP шифрует свою полезную нагрузку, используя протокол шифрования Microsoft Point-to-Point (MPPE). MPPE использует алгоритм шифрования RSA RC4 с максимум 128-битными сеансовыми ключами.
Широко распространено мнение о том, что Агентство национальной безопасности (АНБ) может легко расшифровать зашифрованную PPTP-информацию и что оно собрало большие объемы данных за период, когда PPTP считался безопасным..
PPTP не рекомендуется для использования в таких странах, как Китай, где известно, что правительство блокирует использование VPN.
PPTP использует как TCP-порт 1723, так и протокол GRE, которые легко блокируются, что позволяет таким инструментам, как Большой брандмауэр Китая, обнаруживать и блокировать протокол.
Я настоятельно рекомендую пользователям избегать PPTP всякий раз, когда это возможно, и использовать его только при отсутствии другого совместимого протокола..
OpenVPN
- Довольно безопасный
- Доступно на большинстве платформ
- Открытый источник
- Легко обходит блокировки брандмауэра
- Высоко настраиваемый
- Требуется стороннее программное обеспечение
OpenVPN, пожалуй, самый популярный протокол VPN, доступный сегодня. Он поддерживается большинством коммерческих провайдеров VPN. OpenVPN – это бесплатный протокол VPN с открытым исходным кодом, а его 256-битное шифрование делает его одним из самых безопасных протоколов..

OpenVPN легко настраивается. Хотя протокол изначально не поддерживается ни одной из популярных платформ устройств, для большинства из них он легко доступен через стороннее программное обеспечение.
Одной из особенностей OpenVPN, которая делает его популярным, является возможность его установки на работать на любом порту.
Наиболее заметным портом является TCP-порт 443, который используется HTTPS-трафиком. Поскольку порт 443 используется для защищенных соединений для банков, онлайн-магазинов и других пользователей, которые заботятся о безопасности, блокировка порта 443 может привести к хаосу в работе этих банков и других пользователей, которые заботятся о безопасности..
Именно по этой причине ограничивающие страны, такие как Китай, будут сталкиваться с трудностями, блокируя OpenVPN из-под контроля, не подвергая опасности бизнес.
OpenVPN может быть настроен на использование UDP, если скорость является наиболее важным, учитывая, каким образом это будет допустимым вариантом и / или для какого use.ration, или TCP, если исправление ошибок является наиболее важным фактором.
Библиотека OpenSSL, которую OpenVPN использует для шифрования соединений поддерживает различные шифры, хотя AES и Blowfish являются наиболее распространенными.
Как работает шифрование OpenVPN
Как упоминалось ранее, OpenVPN-шифрование состоит из двух частей: шифрование канала управления и шифрование канала данных..
Шифрование канала управления защищает соединение между вашим компьютером или устройством и серверами провайдера VPN.
Шифрование канала данных обеспечивает фактические данные, передаваемые и получаемые обеими сторонами.
К сожалению, некоторые провайдеры VPN используют более слабое шифрование на одном из этих каналов – обычно на канале данных – что подвергает риску ваши данные.
Сила безопасности OpenVPN-соединения столь же сильна, как и использование самого слабого шифрования..
Для обеспечения максимальной безопасности оба канала должны использовать максимально возможное шифрование. Однако более сильное шифрование может замедлить скорость соединения VPN, поэтому некоторые провайдеры используют более слабое шифрование для канала данных – все зависит от того, что для вас наиболее важно: скорость или безопасность..
Если возможно, всегда ищите любого VPN-провайдера, которого вы рассматриваете, чтобы убедиться, что он использует наиболее безопасный метод, доступный для его соединений OpenVPN..
Шифрование канала управления использует технологию Transport Layer Security (TLS) для безопасного согласования соединения между вашим устройством и серверами VPN. Браузеры используют TLS для обеспечения безопасного подключения к веб-сайтам с поддержкой HTTPS.
В заключение
Пока провайдер VPN правильно внедрил OpenVPN на своих серверах и в своих приложениях, протокол, по моему скромному мнению, является самым безопасным протоколом VPN из всех.
Аудит OpenVPN в 2023 году показал нет серьезных уязвимостей это повлияет на конфиденциальность пользователей. Хотя было несколько уязвимостей, из-за которых серверы OpenVPN оставались открытыми для атак типа «отказ в обслуживании» (DoS), последняя версия OpenVPN закрыла эти дыры..
Ввиду первоклассной защиты OpenVPN, гибкости и общепринятого подхода в отрасли VPN, я настоятельно рекомендую вам использовать протокол OpenVPN, когда это возможно..
Давайте подведем итоги
Давайте посмотрим на основные идеи, которые мы рассмотрели в этой статье. Это была длинная и извилистая дорога, но мы добрались до конца.
шифрование
В своей простейшей форме шифрование – это процесс преобразования читаемого текста (открытого текста) в нечитаемый текст (шифротекст), который доступен только для чтения, если у вас есть «секретный код» (шифр) для расшифровки текста обратно в читаемый формат.
Шифры шифрования представляют собой алгоритмы инструкций о том, как шифровать данные, а ключи шифрования представляют собой фрагменты информации, которые определяют выходные данные шифра (то есть шифротекст). Протоколы VPN используют эти шифры для шифрования ваших данных.
VPN использует зашифрованный туннель, чтобы держать ваше интернет-соединение под прикрытием. Это не позволяет третьим лицам, таким как ваш интернет-провайдер или правительство, контролировать и записывать ваши действия в Интернете..
Протоколы шифрования VPN
Ваш провайдер VPN использует протоколы шифрования для защиты вашего интернет-соединения.
Существуют различные типы протоколов шифрования для защиты VPN-подключений, каждый из которых имеет свои преимущества и недостатки. 4 наиболее важных соображения – какие шифры (такие как AES или Blowfish), протоколы транспортного уровня, шифрование рукопожатия и аутентификация SHA они используют.
Протоколы транспортного уровня обрабатывают сквозные (от устройства к устройству) сервисы связи для приложений, таких как используемые в Интернете..
Шифрование рукопожатия – это процесс, используемый для установления соединения между вашим устройством и сервером VPN-провайдера. Это «рукопожатие» подтверждает, что вы подключаетесь к аутентичному VPN-серверу, а не к «подделанному» серверу хакера.
Аутентификация SHA – это криптографическая хеш-функция, которую можно использовать для аутентификации соединений..
протоколы
L2TP / IPSec
Протокол туннелирования уровня 2 (L2TP) доступен в большинстве настольных и мобильных операционных систем. L2TP прост в использовании и обычно используется с пакетом шифрования IPSec, так как он не содержит собственного шифрования. Его скорость сопоставима с OpenVPN и IKEv2.
Платформы Windows 7 и выше, iOS и BlackBerry изначально поддерживают этот протокол. IKEv2 – хороший выбор для использования смартфона, поскольку он позволяет автоматически переподключаться к Интернету, когда пользователи теряют, а затем снова подключаются к Интернету..
SSTP тесно интегрирован с Windows, а также доступен для платформ macOS, Linux и BSD. Он не совместим для использования с VPN-туннелями между сайтами. Он поддерживает только аутентификацию пользователя, но не аутентификацию устройства, что делает его доступным только для удаленного доступа клиента, например, когда сотрудник входит в систему удаленно на корпоративных серверах.
Хотя PPTP существует уже давно и доступен практически на любой платформе, он не является безопасным. Однако, поскольку издержки шифрования PPTP являются самыми низкими из всех протоколов, PPTP является самым быстрым.
Из всех протоколов, которые мы рассмотрели, OpenVPN предлагает наилучшую всестороннюю защиту и соотношение скорости. Это быстрый, безопасный, надежный и открытый исходный код. Хотя он не является родным для любой платформы устройства, существует множество сторонних вариантов.
OpenVPN является особенно хорошим выбором для пользователей VPN, которые находятся в странах с чрезмерными ограничениями, таких как Китай. Хотя Великий брандмауэр Китая имеет возможность блокировать многие VPN-протоколы, его средний уровень против OpenVPN не так высок.
В заключение
После прочтения этой статьи вы должны лучше понимать шифрование и то, как VPN использует шифрование для защиты вашего онлайн-соединения и связанных с ним действий..
Как вы уже читали, хотя каждый протокол VPN имеет свои сильные и слабые стороны, при правильной настройке все они обеспечивают по крайней мере некоторый уровень защиты. OpenVPN – лучший выбор для всесторонней защиты, совместимости и скорости.
Рассматривая поставщика VPN, убедитесь, что он предлагает OpenVPN в качестве опции протокола, чтобы обеспечить лучшую защиту для вашей личной и деловой активности в Интернете.
Я настоятельно рекомендую ExpressVPN в качестве опции, поскольку они обеспечивают защиту OpenVPN, в дополнение к их отличной скорости соединения, глобальному покрытию сервера, защите конфиденциальности и обслуживанию клиентов..

ExpressVPN также предоставляет приложения с поддержкой OpenVPN практически для любой современной подключенной платформы..
Для получения дополнительной информации посетите веб-сайт ExpressVPN..
«VPN & Интернет-безопасность »Майка Маккензи, лицензированная по CC 2.0
VPN-шифрование (всё что нужно знать)

Для некоторых людей VPN-шифрование — это буквально находка. В принципе, несложно понять почему. Оно помогает вам защитить данные в интернете от киберпреступников и злоупотреблений со стороны правительства и/или провайдеров.
Но вы когда-нибудь задавались вопросом о том, как на самом деле устроено VPN-шифрование? Если вам интересно, то вы оказались в самом подходящем месте. Сегодня мы обсудим ключи шифрования, типы алгоритмов, типы VPN-шифров, VPN-протоколы шифрования и многое другое.
Содержание
Что такое VPN-шифрование?
По сути, шифрование является способом преобразования данных из читаемого формата в закодированный, нечитаемый формат при помощи алгоритма. Предполагаемый кодированный формат может быть расшифрован только с помощью подходящего ключа для расшифровки.
Если углубиться, то VPN-шифрование можно описать как средство шифрования данных из простого текста (например, ваш интернет-трафик) таким образом, чтобы все остальные не могли его прочитать. Особенно те, кто пытается контролировать вас (например, интернет-провайдер).
Почему VPN-шифрование — это важно?
Во-первых, VPN-шифрование позволяет защитить конфиденциальные данные (например, номера кредитных карт, данные банковского счёта и пароли от учётных записей) от киберпреступников, так как они не смогут подслушивать ваше интернет-соединение, например, при использовании общедоступного Wi-Fi.
Кроме того, VPN-шифрование гарантирует, что правительство, провайдер и рекламодатели не смогут контролировать ваши действия в интернете.
- Так правительство не сможет навязать вам цензуру или подвергнуть вашу жизнь опасности. Как минимум, у вас не возникнет проблем в странах Ближнего Востока, где многие действия в интернете считаются противозаконными.
- Это также позволит вам избежать уведомлений DMCA, огромных штрафов и даже тюремного заключения за скачивание торрентов.
- VPN-шифрование не позволяет провайдеру регулировать пропускную способность, поскольку он не будет видеть, что именно вы делаете в интернете.
Шифрование также не подпустит к вам рекламодателей. Поэтому вероятность получить спам с “персонализированной” рекламой будет значительно ниже, а провайдер не сможет продать ваши онлайн-данные рекламодателям.
Как устроено VPN-шифрование?
Это процесс защиты данных при помощи туннеля между VPN-клиентом и VPN-сервером. VPN-шифрование позволяет вам скрыть свои данные в интернете от посторонних глаз и рук.
Проще говоря, когда вы запускаете VPN-клиент и подключаетесь к VPN-серверу, ваши запросы шифруются перед отправкой на сервер.
Затем они расшифровываются сервером и пересылаются в открытый интернет. Полученные в ответ запрашиваемые данные снова шифруются на сервере, который затем пересылает их на ваше устройство. На вашем устройстве VPN-клиент расшифровывает данные и вы можете их просматривать.

Тем не менее, чтобы лучше понять, как в частности работает VPN-шифрование, вам нужно иметь в виду следующее:
- Ключи шифрования
- Алгоритмы шифрования
- Типы шифров VPN-шифрования
- Протоколы VPN-шифрования
- Подтверждение связи TLS-handshake
- Аутентификация HMAC
- Совершенная прямая секретность
Что такое ключи шифрования?
Ключ VPN-шифрования — это случайная строка битов, используемая для шифрования и расшифровки данных. Каждый ключ шифрования уникален. Длина ключа шифрования исчисляется в битах — как правило, чем длиннее ключ, тем выше уровень шифрования.
Размер ключей шифрования может сильно варьироваться. Например, они могут быть 1-битными, допускающими только две возможные комбинации, или 256-битными, что позволяет в общей сложности 10^77 комбинаций.
Чтобы вы лучше понимали, что это значит, даже Sunway TaihuLight (один из мощнейших суперкомпьютеров, если не самый мощный в мире) потребуется около 885 квадриллионов лет, чтобы подобрать 128-битный ключ шифрования.
В процессе шифрования/расшифровки используются два типа ключей шифрования — закрытый ключ и открытый ключ. Они математически связаны, так как любая информация, зашифрованная с помощью открытого ключа, может быть расшифрована только с помощью связанного с ним закрытого ключа.
Кроме того, открытый ключ обычно находится в публичном доступе, в то время как закрытый ключ (как предполагает его название) остаётся конфиденциальным и известен только владельцу ключа.
Типы алгоритмов шифрования
Когда дело доходит до типов VPN-шифрования, важно различать типы алгоритмов шифрования и типы шифров. Сейчас мы говорим именно о типах алгоритмов, а типы шифров рассмотрим следующем разделе.

Как правило, алгоритмы шифрования обычно подразделяются на две категории:
- Симметричное шифрование — алгоритм симметричного шифрования основан на идентичных Открытом и Закрытом ключах. Следовательно, этот алгоритм считается самым быстрым. Одним из примеров симметричного шифрования является шифр AES-шифрования.
- Асимметричное шифрование — этот тип алгоритма (также известный как криптография с открытым ключом) использует разные ключи для процедур шифрования и расшифровки. Хотя это может быть удобно, это также очень рискованно, поскольку закрытый невозможно восстановить, если он будет утерян. Хорошим примером асимметричного шифрования является протокол RSA (Rivest-Shamir-Adleman).
Что такое шифры VPN-шифрования?
Шифр шифрования — это алгоритм, который используется для выполнения процедуры шифрования и расшифровки. В отличие от ключей шифрования, которые по факту не могут быть взломаны, шифры шифрования имеют свои недостатки, которые позволяют взломать шифрование.
К счастью, такого рода проблем безопасности легко избежать, если использовать сложный шифр вместе с сильным ключом шифрования.
Прежде чем мы обсудим типы VPN-шифров, которые предлагают VPN-Сервисы, давайте запомним вот что — название шифра VPN-шифрования обычно указывается вместе с длиной ключа (например, AES-128).
Также стоит отметить, что когда люди говорят об алгоритмах VPN-шифрования, в большинстве случаев они имеют в виду шифры. Их часто путают с симметричными и асимметричные алгоритмами, о которых говорилось выше. Итак, если кто-то рассказывает об алгоритме Blowfish, то имейте в виду, что речь на самом деле идёт о шифре Blowfish. То же касается и случаев, когда люди в целом говорят о VPN-шифровании — чаще всего, они имеют в виду доступные типы шифров.
Далее мы расскажем об основных типах шифров, которые обычно используют поставщики VPN-услуг:
- Шифр Blowfish — Blowfish обычно предполагает 128-битный ключ. Хотя это довольно безопасный шифр, многие интернет-пользователи сомневаются в нём. Причиной тому является высказывание разработчика шифра (Брюс Шнайер) о Blowfish в интервью от 2007 года: “Однако я поражён, что он до сих пор пользуется популярностью”.
- Шифр Twofish — преемник Blowfish. Основное отличие заключается в том, что Twofish имеет 128-битный размер блока вместо 64-битного, как у Blowfish. Это означает, что он не настолько подвержен атакам «дней рождения». Брюс Шнайер также рекомендует использовать Twofish вместо Blowfish.
- Шифр AES — AES может иметь 128-битные, 192-битные и 256-битные ключи. AES пользуется большой популярностью среди пользователей VPN благодаря своей сертификации NIST и тому, что правительство США также использует этот шифр.
- Шифр Camellia — некоторые убеждены, что Camellia так же хорош, как AES. Он довольно быстрый и поддерживает 128-битные, 192-битные и 256-битные ключи. Однако поскольку его пока досконально не тестировали на потенциальные уязвимости, а также из-за отсутствия сертификатов, пользователи чаще выбирают AES.
- Шифр 3DES (также известный как TDEA/Triple DEA) — это стандарт тройного шифрования данных (DES, Data Encryption Standard). Он медленнее Blowfish и поддерживает только 56-битные, 112-битные и 168-битные ключи. Кроме того, как и Blowfish, он имеет 64-битный размер блока, что делает его восприимчивым к атакам “дней рождения”. Также важно учесть, что этот шифр официально выведен из обращения. Его запретят использовать после 2023 года.
- Шифр MPPE — MPPE расшифровывается как Microsoft Point-to-Point Encryption. Этот шифр часто используется для PPTP-подключений и модемных подключений по телефонной линии. Шифр поддерживает 40-битные, 56-битные и 128-битные ключи.
Шифр RSA — ещё один алгоритм, который можно использовать для безопасной онлайн-коммуникации. Мы решили не добавлять его в список, потому как большинство VPN-Сервисов используют RSA только для установки соединения или так называемого “рукопожатия”, поскольку шифр относительно медленный. Как правило, из-за этого RSA обычно не используется для прямого шифрования пользовательских данных. Стоит отметить, что 1024-битный ключ RSA больше не считается безопасным, а эксперты по безопасности советуют использовать 2048-битный или 4096-битный ключи.
Что такое “рукопожатие” в шифровании?
“Рукопожатие” представляет собой автоматическую коммуникацию между двумя устройствами связи. В основном этот термин описывает процесс установки ключей шифрования между VPN-клиентом и VPN-сервером, которые используются для связи (в данном случае шифрования и расшифровки). В процессе рукопожатия (обычно TLS/SSL) клиент и сервер:
- Генерируют ключи шифрования.
- Выбирают VPN-протокол.
- Подбирают соответствующие алгоритмы шифрования.
- Аутентифицируют друг друга при помощи цифровых сертификатов.
Как мы уже упоминали выше, для рукопожатий в шифровании обычно используется RSA. Тем не менее, VPN-Сервис также может использовать протокол согласования ключей ECDH (протокол Диффи-Хеллмана на эллиптических кривых) или DH (протокол Диффи-Хеллмана). Чаще используется ECDH, так как DH обычно повторно использует ограниченный набор простых чисел, что делает его более уязвимым перед АНБ.
Что PFS — «совершенная прямая секретность»?
Совершенная прямая секретность (Perfect Forward Secrecy, Forward Secrecy) — это функция различных протоколов согласования ключей (обычно комбинации RSA и DH/ECDH), которая гарантирует, что ключи сеанса не будут скомпрометированы. Даже если что-то случится с закрытым ключом сервера, к которому вы подключаетесь
Если вам интересно узнать об этом подробнее, то мы подготовили полное руководство на эту тему.
Что такое HMAC-аутентификация?
HMAC или код проверки подлинности сообщений, использующий хеш-функции, — это код аутентификации сообщений (MAC). Он используется для проверки целостности данных и аутентификации сообщения, а также подтверждения, что оно не было изменено третьими лицами.
VPN-Сервисы обычно используют шифр SHA-2 (Secure Hash Algorithm 2) для проверки подлинности HMAC, поскольку он поддерживает 224-, 256-, 384- и 512-битные хеш-значения. Это делает его гораздо более безопасным, нежели SHA-1.
Что такое VPN-протоколы шифрования?
Вкратце, VPN-протокол представляет собой набор инструкций, которые используются при установке безопасного соединения между двумя устройствами. В этом случае двумя защищёнными устройствами будут устройство с запущенным VPN-клиентом и VPN-сервером, к которому вы подключаетесь.

Обычно поставщики VPN-услуг используют несколько типов VPN-протоколов при установке защищённых подключений. Более ответственные Сервисы позволят вам выбирать, какой протокол использовать при подключении к VPN-серверу.
На момент написания статьи самыми популярными VPN-протоколами являются:
-
— относительно быстрый VPN-протокол шифрования. Основная проблема заключается в том, что он плохо защищён, не говоря уже о том, что его наверняка давно взломало АНБ. — сам по себе L2TP не обеспечивает шифрование, поэтому он всегда идёт в связке с IPSec. В такой комбинации получается достаточно защищённый протокол (особенно если вместе с ним используется шифр AES). Некоторые утверждали, что АНБ взломала и ослабила этот протокол шифрования, однако никаких доказательств этому найдено не было. — набор безопасных сетевых протоколов, который используется для шифрования пакетов данных, пересылаемых по IP-сети. Он отличается высокой безопасностью, и при этом может шифровать трафик даже без ведома приложения в точке назначения. В сфере VPN IPSec часто используется наряду с L2TP и IKEv2. — относительно быстрый, стабильный и безопасный протокол (если используется шифр наподобие AES). Тем не менее, IKEv2 может быть трудно внедрить на стороне VPN-сервера, поэтому неопытный поставщик VPN-услуг может допустить ошибки, которые приведут к проблемам в безопасности. — очень безопасный и настраиваемый протокол с открытым исходным кодом. Единственным недостатком, похоже, является тот факт, что его комбинация с сильными шифрами может замедлить скорость интернета. — несмотря на относительно молодой возраст, этот протокол быстро набрал популярность среди пользователей VPN. Отчасти благодаря тому, что он очень безопасный, стабильный и на удивление быстрый. — этот протокол часто сравнивают с OpenVPN, так как он использует SSL 3.0. Это позволяет ему обходить цензуру с помощью порта 443 (порт для HTTPS-трафика). Несмотря на это, SSTP не так популярен, как OpenVPN, потому что его исходный код закрыт. — новый VPN-протокол с открытым исходным кодом. Он использует только один криптографический набор, поэтому в данном случае меньше вероятность пробелов в безопасности. Единственной проблемой на данный момент является то, что протокол всё ещё в разработке, и его необходимо тестировать. Несмотря на это, уже есть VPN-Сервисы, которые начали использовать Wireguard.
Если стоит вопрос о безопасности, то самым защищённым стандартом является OpenVPN. Но это далеко не единственный вариант. SoftEther считается очень хорошей альтернативой, которая часто работает намного быстрее OpenVPN и при этом предлагает достойный уровень безопасности
Если вы хотите узнать больше о каждом VPN-протоколе, то можете воспользоваться нашим полным руководством на эту тему.
Какое VPN-шифрование лучше?
Сложно дать какой-то конкретный ответ на этот вопрос. “Лучшее шифрование” для вас будет зависеть от того, насколько вы хотите защитить свои данные в интернете и трафик.
Если хотите быть уверены в наилучшем уровне безопасности, то вот на что следует обратить внимание:
- Длинный ключ шифрования, не менее 128 бит.
- Надёжные протоколы обмена ключами (вроде ECDH или RSA-2048).
- Сильные VPN-шифры (вроде AES, Twofish или Camellia).
- Мощные протоколы VPN-шифрования (OpenVPN, SoftEther и IKEv2).
- Шифр SHA-2 для HMAC-аутентификации (в идеале 256-, 384-или 512-битный).
- Функция совершенной прямой секретности (PFS)
Как протестировать VPN-шифрование
Наверняка из-за технических сложностей VPN-шифрования вам может показаться, что протестировать правильную работу шифрования будет ещё сложнее. На самом деле, это вовсе не так.
Ниже приведено несколько шагов для быстрой и простой проверки VPN-шифрования:
-
— инструмент, который позволяет отслеживать состояние VPN-шифрования.
- Запустите Wireshark, а затем запустите VPN-клиент и подключитесь к серверу.
- Выберите WiFi или Ethernet в качестве сетевого интерфейса, который необходимо отслеживать.
- Начните отслеживание.
- В опции “Протокол” укажите “OpenVPN”. Если хотите, то можете выбрать другой протокол VPN-шифрования.
- Теперь щёлкните правой кнопкой мыши по OpenVPN и выберите поток UDP или TCP.
- Если поток отображается в виде неразберихи, значит VPN-шифрование работает правильно.
Если вам нужны методы дополнительной проверки, то выполните следующие действия:
-
.
- Запустите его при подключении к VPN-серверу.
- Начните пользоваться интернетом и скачайте какие-нибудь файлы.
- Теперь перейдите во вкладку “Использование”.
- Выберите раздел “Приложение”.
- Найдите используемый VPN и проверьте состояние шифрования VPN.
Чтобы получить максимально точный результат, используйте оба метода.
Все ли VPN-Сервисы предлагают шифрование данных?
Не совсем. Бесплатные VPN как русская рулетка. Они могут обещать шифрование, но на деле вообще не защищают ваши данные.
Более того, даже если бесплатные VPN действительно предлагают шифрование, то используются, как правило, самые слабые шифры, короткие ключи шифрования и менее защищённые протоколы VPN-шифрования, вроде PPTP и L2TP. Если помните, выше мы уже упоминали, что у них как таковых нет шифрования и поэтому их следует использовать вместе с IPSec).
При этом следует учитывать ещё кое-что. Эксперты по безопасности утверждают, что зачастую бесплатные сервисы плохо настраивают VPN-шифрование. И вероятность стать жертвой взлома или киберпреступников у пользователей бесплатных VPN намного выше.
В общем, если вам нужна реальная безопасность в интернет, то лучше воспользоваться проверенным платным VPN-Сервисом.
“Может ли VPN-шифрование замедлять скорость работы интернета?”
Есть большая вероятность этого. Все зависит от того, насколько сильное используется VPN-шифрование. Например, протокол OpenVPN с AES-256 может замедлять интернет, поскольку потребляет много вычислительной мощности процессора.

При этом нельзя утверждать наверняка, что вы обязательно будете испытывать неудобства в виде замедления интернета. Часто этого не происходит вообще или едва заметно (например, потери могут достигать 1-2 Мбит/с).
Если вы хотите получить больше информации по этой теме, то можете ознакомиться с этим руководством, посвящённым скорости VPN.
Ищете надёжный VPN-Сервис?
Тогда у нас для вас есть отличное предложение. CactusVPN предлагает высококачественные VPN-услуги, среди которых шифрование на военном уровне, круглосуточная поддержку, функция Kill Switch, более 30 высокоскоростных серверов с неограниченной пропускной способностью, а также до шести VPN-протоколов на выбор. Более того, мы не записываем ваши данные, и наш Сервис работает на нескольких платформах.

И если вы захотите попробовать другие способы разблокировки веб-сайтов, мы также предлагаем услугу Smart DNS, которая открывает доступ к более 300 сайтов. Кроме всего прочего, все наши VPN-серверы дополняются прокси-серверами.
Специальное предложение! Получите CactusVPN за 3.5$ в месяц!
И как только вы станете клиентом CactusVPN, у вас будет 30-дневная гарантия возврата денег.
В завершение
VPN-шифрование данных используется для защиты пользовательского трафика и информации. Это защищает пользователя от сбора данных провайдером, нападок киберпреступников и правительственной слежки.
Работает это следующим образом: VPN-клиент сначала шифрует запросы на подключение и отправляет их на VPN-сервер, который расшифровывает их и пересылает в интернет. Затем полученные данные шифруются VPN-сервером и отправляются VPN-клиенту, который затем расшифровывает полученную информацию для вас.
Многое зависит от того, как работает VPN-шифрование, какой используется тип алгоритма шифрования и шифра, какой тип шифрования используется для аутентификации, какие используются протоколы обмена ключами и в целом — какой используется VPN-протокол.
Вам необходимо выбрать VPN-Сервис, который предлагает различные протоколы, включая OpenVPN, IKEv2 и SoftEther. Желательно чтобы в нём также использовались шифры вроде AES и Camilla, шифрование аутентификации было как минимум 256-битным, а шифрование рукопожатия не хуже RSA-2048.
Хотим свободы и анонимности в сети или еще раз про свой VPN сервер для чайников (часть 2)
Первая часть статьи особого ажиотажа не вызвала, но после неё на меня подписалась 10 человек, а значит они ждут продолжения. 10 человек, это не мало. Поэтому продолжаем.
Мы выполнили необходимый минимум подготовительных работ, наш сервер неплохо защищен от злонамеренных воздействий. Теперь пора сделать, для чего мы всё это затевали.
Немного теории, для понимания того, что мы сечас будем делать. VPN (Virtual Private Network) — виртуальная частная сеть. Идея в том, что мы строим свою сеть «поверх» других сетей.
Допустим вы решили зайти на запрещенный ресурс (да на любой ресурс). Какой маршрут вашего интернет трафика? В большинстве случаев схема такая:

Безусловно, это очень упрощенная схема. Но для понимания процесса достаточна. Как видите, у провайдера есть некий-фильтр, который «просматривает» весь ваш трафик и принимает решения, пропустить или нет (настучать на вас или нет 🙂 ). Фактически ваша точка выхода в интернет – это внешние маршрутизаторы вашего провайдера. Именно тут принимается решение, увидите вы тот или иной ресурс или нет.
Что сейчас сделаем мы, запустив наш трафик через интернет:

На наших личных устройствах (компьютер, смартфон, планшет и т.д.) будут установлены и настроены программы-клиенты для VPN сервера. На нашем VPS будет установлена и настроена программа-сервер VPN. Как только они соединятся между собой, появляется наш виртуальный зашифрованный канал поверх всех остальных каналов (красная пунктирная линия на рисунке). Теперь никто не знает, что содержится в трафике между нашими устройствами и нашим VPN сервером, весь трафик надёжно зашифрован. Фактически, теперь наша точка выхода в интернет – это наш VPS. Именно его IP-адрес будут видеть все те Интернет-ресурсы, на которые мы будем заходить. Теперь никакой товарищ майор не узнает, какие видосики вы смотрите, на какие сайты вы ходите и какие сообщения на форумах пишете. Да, если получить доступ к вашему VPS, можно узнать содержимое вашего трафика. Но ведь наш VPS в другой стране, надавить авторитетом на хостера не получится, у него пердставительств и имущества на территории нашей страны и нашего товарища майора пошлют. Нужно затевать полноценное расследование, привлекать международные соглашения, Интерпол, направлять обоснованный (причем обоснованный с точки зрения законодательства страны хостера) запрос. В общем, если вы не натворите чего-нибудь совсем плохого, никто ничего и не получит. Единственное, что от вас требуется: аккуратное обращение с ключами и паролями. Вернёмся к этому вопросу позже.
Хватит теории, переходим к практике.
У вас уже запущены и соединены с сервером PuTTY и WinCSP. Переходим к консоли PuTTY и выполняем следующие команды:
Создадим папку для ключей установим её текущей. Для это выполним в консоли команды:
Для генерации ключей мы используем утилиту Easy-RSA. Для начала скачем её себе:
Создадим файл с настройками из приложенного образца:
Перейдем в папку с утилитой:
Свернём пока консоль и развернём WinCSP. Перейдём в папку /etc/openvpn/keys/easy-rsa-master/easyrsa3.
Примечание: если в правой панели WinCSP вы вдруг не видите каких-либо файлов или папок, которые там должны быть, нажмите кнопку обновления:

Находим и открываем файл vars. Находим строчки
#set_var EASYRSA_REQ_COUNTRY «US»
#set_var EASYRSA_REQ_PROVINCE «California»
#set_var EASYRSA_REQ_CITY «San Francisco»
#set_var EASYRSA_REQ_ORG «Copyleft Certificate Co»
#set_var EASYRSA_REQ_EMAIL «me@example.net»
#set_var EASYRSA_REQ_OU «My Organizational Unit»
и убираем в начале каждой символ #
Теперь можно включить фантазию и изменить под себя значения в кавычках. Например:
set_var EASYRSA_REQ_COUNTRY «RU»
set_var EASYRSA_REQ_PROVINCE «Moscow»
set_var EASYRSA_REQ_CITY «Moscow»
set_var EASYRSA_REQ_ORG «RosComNadzor»
set_var EASYRSA_REQ_EMAIL «admin@rkn.ru»
set_var EASYRSA_REQ_OU «Otdel besnennogo printera»
Эти параметры обязательны при генерации ключа, но, в нашем случае, ни на что не влияют. Далее находим и приводим к указанному виду следующие параметры:
#set_var EASYRSA_KEY_SIZE 2048
set_var EASYRSA_KEY_SIZE 4096
#set_var EASYRSA_DIGEST «sha256»
set_var EASYRSA_DIGEST «sha512»
В этом файле можно еще много чего поправить, например, срок действия ключа. Но мы не будем этого делать. Перегенерировать ключ раз 180 дней – не так уж и сложно. Закрываем файл с сохранением.
Возвращаемся к консоли PuTTY. Создаем инфраструктуру публичных ключей (PKI, Public Key Infrastructure). Выполним команду:

Easy-RSA отвечает нам, что создан каталог /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/
Не буду расписывать, что такое PKI. Про это есть отличная статься с картинками в Википедии.
Нам важно знать, что ключи создаются парами – закрытый и открытый. Для обмена с кем-то защищаемой информацией мы обмениваемся открытыми ключами. В данном случае у сервера будет свой закрытый ключ и открытые ключи клиентов. У клиентов свои закрытые ключи и открытый ключ сервера. А удостоверять подлинность ключей, будет созданный нами же удостоверяющий центр. Его корневой сертификат будет у всех участников обмена.
Создадим свой удостоверяющий центр (СА). По-хорошему, его бы надо создавать не здесь, а на какой-то отдельной машине и, в идеале, не подключенной к интернету. Но, в нашем частном случае, это чрезмерная паранойя. Не будем забывать, что наша задача просто выйти из-под регулирования законодательства своей страны. Если кто-то получит возможность покопаться в нашем сервере, он и так всё узнает. Поэтому не будем усложнять.
Нас просят придумать пароль:

Да-да, опять пароль. Требования к сложности примерно такие же, как и для пароля ключа SSH. Зачем этот пароль: если корневой сертификат вашего удостоверяющего центра попадёт в чужие руки, то любой сможет сгенерировать пользовательские сертификаты и подключиться к вашему VPN-серверу. Поэтому вы должны беречь от разглашения и закрытый ключ корневого сертификата (файл ca.key), и пароль к нему. Забывать этот пароль также не стоит. Восстановить его нельзя и придется заново создавать корневой сертификат и все пользовательские сертификаты. Не смертельно, но не приятно. В общем придумываем и вводим пароль. Нас попросят ввести его два раза. На следующий вопрос:

просто жмём Enter (также будем поступать для всех остальных ключей). У нас появились файлы ca.crt (корневой сертификат. Он открытый, мы его будем передавать клиентам)

и ca.key (закрытый ключ удостоверяющего центра, его нужно беречь от разглашения. Это самая ценная для вас вещь на вашем сервере).

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

Как видите, на выходе у нас два файла: server.key – это закрытый ключ сервера; server.req – это запрос нашему CA на удостоверение (подписывание) сертификата. Скормим запрос нашему CA:
CA просит подтвердить, что мы в своём уме и действительно хотим подписать сертификат. Убедим его в этом: наберём yes и нажмём Enter.

Теперь введём пароль от нашего закрытого ключа CA

И вот CA создал подписанный открытый ключ нашего сервера /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/issued/server.crt
А теперь мы сделаем очень нужную штуку. Мы создадим ключ Диффи-Хелмана. Этот ключ защитит наш трафик от расшифровки даже в случае похищения ключей сервера и клиентов. Т.е. если товарищ майор записывал весь ваш шифрованный трафик, скрипя зубами от досады, что не может понять, что ж такое вы делаете. А потом он вдруг заполучит все ваши ключи, то он всё равно не сможет расшифровать тот трафик, который у него записан. Вот такая вот магия математики. Берегите математиков, они умные и защищают нас от товарища майора.
Вводим в консоли команду:
и идём пить чай ибо процесс это не быстрый. А учитывая, что процессор у VPS весьма слабенький, генерация может занять до 15 минут (а может и больше). В общем ждите, магия быстро не делается.

Когда генерация завершится, мы получим файлик /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/dh.pem
Еще мы сделаем список отозванных сертификатов. Он нам пригодится, чтобы сделать недействительными какие-либо клиентские ключи. Например, при утере смартфона с настроенным VPN-клиентом.
И получим файл /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/crl.pem. В нём и будет список отозванных сертификатов. Отзывать сертификаты мы потренируемся позже, пока оставим так.
Теперь подкинем VPN-серверу все необходимые ключи. Для этого выполним несколько команд:
Получится вот так:

И сделаем текущей папку VPN-сервера:
Еще не много магии для усиления безопасности. Сделаем HMAC (ищите описание на Хабре и в Википедии). Выполним команду:
Рядом с нашими ключами в папке /etc/openvpn будет создан файл ta.key. Его мы также будем отдавать клиентам.
Теперь с помощью WinCSP поправим права на файлы: ca.crt, crl.pem, dh.pem, server.crt. Сделаем для всех 0644.

А для файлов server.key, ta.key установим права 0600 (по-идее они сразу такие и есть, но на всякий случай проверьте).
В принципе VPN-сервер можно уже сконфигурировать и запускать, но нам пока нечем к нему подключиться. Поэтому создадим ключи для клиента. Вернёмся в папку утилиты Easy-RSA:
Для создания ключа и запроса на подпись используется команда (не спешите вводить, сначала прочитайте то, что ниже):
Для подписания запроса и создания открытого ключа команда:
Всё также, как и при создании ключей сервера. Если возникнут вопросы, смотри выше, как мы там это делали.
Обратите внимание на следующее:
— ключ nopass вы можете использовать, а можете не использовать. С ключом nopass вам не потребуется придумывать пароль для закрытого ключа клиента. Тогда, при подключении к VPN-серверу, и вводить его не придётся. Но в этом случае любой, кто завладеет ключом клиента, сможет подключиться к вашему VPN-серверу. Однако, вводить каждый раз пароль не удобно. Ищите компромисс. Например, на домашнем компьютере ключ без пароля, на рабочем – с паролем. Если ваше переносное устройство не имеет дополнительных мер защиты (шифрование накопителя, контроль доступа и пр.) и есть риск потерять устройство, или иным образом скомпрометировать – сделайте ключ с паролем.
— client_name это произвольное, понятное вам название того клиента, который будет им пользоваться. Например, для домашнего компьютера можно сделать имя my_home_pc. Тогда команды будут выглядеть так:
А для своего смартфона сделать ключи с именем my_smartphone и с защитой паролем. Тогда команды будут выглядеть так:
В общем делайте удобное и понятное имя, чтобы не запутаться в ключах.
Для данной статьи я сделаю тестовые ключи для компьютера и смартфона с именами test_pc и test_smart
Сначала покажу как настроить подключение с компьютера. Мы проверим, что наш VPN работает, а потом расскажу, как настроить на смартфоне.
Клиенту нужно будет передать следующие файлы:
— сгенерированную пару ключей клиента (в моём случае test_pc.crt и test_pc.key)
— открытый сертификат CA (ca.crt)
Никаких других ключей и сертификатов у клиента быть не должно!
Ну вот, все ключи у нас есть. Давайте уже конфигурировать и запускать.
В папке /etc/openvpn создадим файл server.conf (если он там уже есть, удалите и создайте заново). Как создавать файлы, было написано ранее. Содержимое файла будет следующее:
server 10.8.0.0 255.255.255.0
push «redirect-gateway def1»
push «dhcp-option DNS 8.8.8.8»
push «dhcp-option DNS 8.8.4.4»
remote-cert-eku «TLS Web Client Authentication»
keepalive 10 120
tls-auth ta.key 0
Описание опций файла выходит за рамки статьи. О некоторых опциях я расскажу ниже, в процессе.
Сохраним файл. Проверим, чтобы права были 0644.
Теперь пробуем запустить сервер. В консоли команда:
Проверяем, что запустился.
Сначала посмотрим на состояние службы сервера командой:
Если всё хорошо, то это будет выглядеть вот так:

Но может быть и плохо:

Смотрим лог (/etc/openvpn/openvpn.log) и видим там, например:
us=64300 ERROR: Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2)
us=64310 Exiting due to fatal error
Т.е. не найден TUN/TAP драйвер. Об этом я писал в начале статьи. В случае моего текущего хостера это решается просто. В письме (смотри раздел про аренду VPS), которое содержало IP-адрес сервера и пароль на SSH, была дана ссылка на панель управления сервером и логин-пароль к ней. Заходим в эту панель и видим:

Так включим же его. После включения сервер уйдет в перезагрузку, придется закрыть PuTTY и WinCSP, открыть их заново и подключиться к серверу. Возможно, в случае другого хостера, для включения TUN/TAP вам придется написать в тех.поддержку.
Еще раз пробуем запустить службу и проверить её состояние. Всё должно стать хорошо. Если не стало, смотрим логи. Тут универсального рецепта нет. Например, может мешать SELinux (это такая система безопасности Linux). Чиним командой:
И опять пробуем запустить службу и проверить состояние.
Еще проверим, что служба VPN-сервера слушает нужный порт (у нас 443):
Если напишет что-то типа: -bash: netstat: command not found, то выполняем команду:
Должно быть так:

Убедившись, что служба стартует без проблем, добавляем её в автозагрузку:
Ну и отключим логи. На всякий случай 😉 Для этого откроем для редактирования файл /etc/openvpn/server.conf и строчку:
log openvpn.log
log /dev/null
сохраняем и закрываем. Делаем перезапуск службы, чтобы применился новый конфиг:
И удаляем файл /etc/openvpn/openvpn.log
Нет у нас логов, товарищ майор.
Пришла пора подключиться к нашему серверу. Речь пойдет о компьютерах под управлением операционной системы семейства Windows. Если у вас Linux, то я не пойму, зачем вы всё это читаете.
И устанавливаем. В процессе убираем галочку с OpenVPN Service

Остальное не трогаем.
После установки открываем папку C:\Program Files\OpenVPN\config\ и создаем в ней файл client_name.ovpn
В данном случае client_name это произвольное имя, можете сделать его совпадающим с именем ключей.
remote 123.123.123.123 443
remote-cert-eku «TLS Web Server Authentication»
tls-auth «C:\\Program Files\\OpenVPN\\config\\ta.key» 1
ca «C:\\Program Files\\OpenVPN\\config\\ca.crt»
cert «C:\\Program Files\\OpenVPN\\config\\test_pc.crt»
key «C:\\Program Files\\OpenVPN\\config\\test_pc.key»
Вместо 123.123.123.123 вписываем IP-адрес своего сервера. Вместо test_pc.crt, test_pc.key вписываем правильные названия своих клиентских ключей. В общем-то ключи совсем не обязательно должны лежать в папке C:\Program Files\OpenVPN\config\, даже было бы намного лучше, чтобы они здесь не лежали, а находились на флешке и были всегда под контролем. Тогда путь выглядел бы примерно так:
Но мы не будем пока мудрить и сделаем так. Сохраняем файл.
При помощи WinCSP скопируем к себе на компьютер все необходимые ключи с сервера:

И запускаем OpenVPN GUI (кнопка Пуск -> OpenVPN -> OpenVPN GUI)
Так как у вас всего один файл .ovpn в папке C:\Program Files\OpenVPN\config\, то соединение должно начаться автоматически. Появится окно с логом соединения:

А как только соединение будет установлено, в трее появится соответствующий значок зеленого цвета:

Щелкнув правой кнопкой мыши на этом значке, можно увидеть меню управления клиентом (отключиться, подключиться, настройка).
Если значок желтый, то клиент в процессе установление соединения.
Если серый, клиент не подключен к VPN-серверу.
Если подключиться не получается, проверяйте настройки файрволла сервера, как это написано выше (в предыдущей части статьи).
Проверяем, что теперь наш видимый в интернете IP-адрес совпадает с IP-адресом сервера. Например, по пройдем по адресу http://myip.ru/ и посмотрим.
Всё, ваша личная VPN сеть работает, товарищ майор больше не может отслеживать ваш трафик.

Если лень все настраивать вручную, есть готовый скрипт для установки OpenVPN на Debian/Ubuntu и CentOS
Достаточно загрузить на сервер и запустить, скрипт сделает настройку сам
Потом можно запустить еще раз, чтобы сгенерировать/отозвать ключи доступа
@megavolt, подскажите, какую виртуализацию выбрать? OpenVZ или KVM?
Вроде порядок следования этих пунктов наоборот? @megavolt0,
Здравствуйте, @megavolt0 . Не могу подписать сертификат. Возникает ошибка
Note: using Easy-RSA configuration from: ./vars
You are about to sign the following certificate.
Please check over the details shown below for accuracy. Note that this request
has not been cryptographically verified. Please be sure it came from a trusted
source or that you have verified the request checksum with the sender.
Request subject, to be signed as a server certificate for 3650 days:
Type the word ‘yes’ to continue, or any other input to abort.
Confirm request details: yes
Using configuration from ./openssl-1.0.cnf
Enter pass phrase for /etc/openvpn/keys/easy-rsa-master/easyrsa3/pki/private/ca.key:
Check that the request matches the signature
The Subject’s Distinguished Name is as follows
ERROR: adding extensions in section default
140082583111584:error:22097082:X509 V3 routines:DO_EXT_NCONF:unknown extension name:v3_conf.c:124:
140082583111584:error:22098080:X509 V3 routines:X509V3_EXT_nconf:error in extension:v3_conf.c:93:name=copy_extensions, value=copy
signing failed (openssl output above may have more detail)
Обход любых блокировок
0.Предыстория
30 мая многие провайдеры в тестовом режиме заблокировали OpenVPN подключения. Уже на следующий день, 31 мая, всё вернулось в норму. Казалось бы ничего такого, и я соглашусь с тем, что данное событие не означает то, что завтра забанят все VPN протоколы, это новость скорее говорит о том, что провайдеры в любой момент могут их заблокировать. Если есть возможность опознать OpenVPN подключение и заблокировать его, то тот же самый Wireguard детектируется с ещё большей лёгкостью. Мне данный вариант не нравится, ждать пока бахнет желания тоже нет, поэтому дальше я расскажу об одном из лучших вариантов для обхода блокировок, который не детектируется даже китайским файрволлом(на текущий момент).
Речь пойдёт об установке и настройке XTLS-Reality в связке с XTLS-Vision, если эти слова вам ничего не говорят, то ничего страшного.
Год назад я уже писал пост Как развернуть свой VPN сервер там я расписал как установить WireGuard VPN сервер. В принципе, на данный момент он не потерял свою актуальность и если вам хочется чего то попроще, то это всё ещё отличный выбор. В таком случае лучше всего выполнить пункты 1-3 из этой статьи и пункт 3 из прошлой.
1.Покупка VPS
Для начала нам понадобится VPS(Виртуальный Приватный Сервер). Здесь я покажу покупку на VPS от RackNerd. Да, это тот же самый VPS, что и в предыдущей статье. За полтора года использования не было ни одной проблемы с данным VPS, у него всё также очень маленькая цена, поэтому я продолжу пользоваться им. Другие дешёвые VPS можно найти здесь
Все предложения имеют скорость в 1 Гигабит/c
План с 1ТБ трафика в месяц обойдется в $10.28 в год
План с 3ТБ трафика в месяц обойдётся в $16.88 в год
План с 7ТБ трафика в месяц обойдётся в $28.55 в год
Переходим по нужной вам ссылке.
Выбираем операционную систему Ubuntu 20.04 и нужное вам расположение сервера.

Нажимаем Continue и потом Checkout.
Вводим ваши или не ваши данные. Аккаунт будет зарегистрирован на указанный email.

Выбираем удобный способ оплаты и оплачиваем.
После оплаты на указный при регистрации email придёт письмо с данными для подключения к серверы и входа в панель управления(может потребоваться для сброса сервера и мониторинга трафика)
2.Подключение к VPS
Скачиваем и устанавливаем Bitvise SSH (убедитесь, что при установке стоит галочка Install WinFsp)
Вводите в поле Host IP адрес сервера из письма.
В поле Port вводим SSH Port из письма.
В поле Username вводим Username из письма.
Initial method выбираем password.
Ставим галочку Store encrypted password in profile.
В поле password вводим Root Password из письма.

Далее нажимаем Save profile as и сохраняем профиль на будущее.
Для подключения к серверу нажимаем Log in.
Cлева появятся кнопки New Terminal Console(открывает терминал) и New SFTP Window(открывает файловый менеджер).
Для того чтобы скопировать текст в терминале просто выделите его.
Для вставки нажмите ПКМ(правую кнопку мыши).
3.Базовая настройка сервера
Вводим в терминал:
Это обновит пакеты приложений.
Сменим порт SSH
22 порт для SSH очень не надежен, так как его постоянно мониторят боты. Сменим его.
Вводим в терминал:
Управление стрелочками. Удаляем # перед Port и вместо 22 вводим любой от 1024 до 65535.

Нажимаем Ctrl+X потом Y и Enter.
Перезапускаем ssh командой:
Закрываем консоль. Нажимаем Log out. Меняем порт на новый и нажимаем Save Profile.
Нажимаем Log in и открываем терминал.
Настроим Firewall
Введите в терминал эти команды:
apt install ufw -y
ufw default deny incoming
ufw default allow outgoing
ufw allow 443
ufw allow Ваш_новый_SSH_порт
ufw enable
Этим мы закрыли все порты кроме 443(понадобится дальше) и порта SSH.
Если вы устанавливаете что-то другое, то вместо вместо 443 используйте нужный вам порт.
Включим BBR
echo «net.core.default_qdisc=fq» >> /etc/sysctl.conf
echo «net.ipv4.tcp_congestion_control=bbr» >> /etc/sysctl.conf
sysctl -p
В теории это увеличить скорость соединения.
На этом базовая настройка закончена.
4.Установка и настройка XRay
Вводим в терминал эти команды:
Посмотрите номер последней версии, на текущий момент это 1.8.1 Если вышла более новая, то замените версию в команде ниже.
Изначально ссылка была https://raw.githubusercontent.com/XTLS/Xray-install/046d9aa2. , но Пикабу её сокращает, поэтому сократил ссылку
Вводим в терминал:
Мы получили публичный и приватный ключи. Сохраните их куда-нибудь, они понадобятся позднее.
Вводим в терминал:
Мы получили UUID, для каждого пользователя нужно сделать свой UUID. Сохраните их куда-нибудь, они понадобятся позднее.
Вводим в терминал:
Мы получили ShortId сохраните его, он также понадобится в дальнейшем
Нажмите на New SFTP Window в BitviseSSH. Слева файлы на вашем ПК. Справа файлы на сервере.

Открываем файл config.txt и вставляем туда то, что написано ниже.
В поле id введите ваш UUID. Для каждого пользователя нужно прописывать это:
Разделяются они запятой. После последнего пользователя запятой быть не должно Примеры:
В privateKey вводим ваш приватный ключ. В Shorts Ids ваш ShortId.
Сохраните файл(Ctrl+S) Закройте файл и SFTP окно.
В терминал вводим:
Статус должен быть быть active (running)

Если у вас ошибки, то перепроверьте ещё раз конфиг.

5.Подключение
Есть много разных клиентов, но мы будем использовать Nekoray.
Скачиваем последнюю версию. (3.6 на текущий момент)
Разархивируем и открываем necoray.exe
При запуске выбираем sign-box.
Дальше нажимаем Server -> New Profile
Type выбираем VLESS.
Вводим всё в соответствии со скрином ниже.

ПКМ(правой кнопкой мыши) по созданному профилю и нажимаем Start

Потом ПКМ -> Current Select -> URL Test
В Test Result должно быть сколько-то ms. Если у вас Unavailable, то перепроверяйте введенные вами данные.

Нажимаем VPN mode, чтобы трафик пошёл через наш прокси
ГОТОВО! ВЫ МОЛОДЕЦ!
Повторяем действие для Windows.
ПКМ->Share->QR Code and Link
Открываем его, справа сверху нажимаем на плюсик, выбираем отсканировать QR и сканируем QR с ПК.
Кнопка по центру включает прокси
Используйте ShadowRocket или FoXray Настройка должна быть аналогичной.
Это коробочка всё ещё лежит не открытой

Ответ на пост «VPN на своём сервере с IP адресом из США за 1$ в месяц»
Дорогие пикабушники, семья можно сказать.
Заходим на плати (тут сами додумаете) ру
Покупаете аккаунт pure vpn за 200 рублей и отдыхаете целый год на просторах всех заболоченных ресурсах.
Тут половина лл, а вы такие гайды читаете
Ответ на пост «VPN на своём сервере с IP адресом из США за 1$ в месяц»
Рекомендую на VPS все же ставить Firezone (WireGuard с CMS): https://www.firezone.dev/
Сервер настраивается за минуту, есть клиенты под все актуальные ОС, часто работает даже у IPC которые «режут» VPN.
Можно раздать учётки семье и друзьям, где они сами смогут зайти и добавить свое устройство в два клика.


VPN на своём сервере с IP адресом из США за 1$ в месяц

После этого коммента на меня подписалось 10 человек, так что пост специально для вас и для @bugagaggi, @Bs1234, @SvinkiPilki.
Этот пост для тех, кто знает, зачем ему VPN на своём серваке. Если вас устраивает браузерное расширение, опера турбо и прочие способы, никто не заставляет вас платить за свой сервак и настраивать его.
Предполагается, что вы умеете пользоваться серваком на ubuntu на минимальном уровне и непонятные для себя вещи можете нагуглить сами.
Пост содержит ряд рискованных шагов, автор не несет ответственности за ваши действия с деньгами, вы всё делаете на свой страх и риск, перепроверяйте каждую операцию и не верьте наслово.
Этот пост — не совсем гайд, просто делюсь опытом на какие грабли наткнулся на своём пути. Так что будет многобуков.
Предыстория
Год назад, когда появились первые слухи о закрытии ютуба, мне захотелось сделать свой собственный сервак с VPN, чтобы иметь стабильный доступ к ютубу без ограничений. Браузерные расширения типа антизапрета конечно работали и работают до сих пор, но:
скорость там сильно хромает и бывает нестабильной. это — главная причина, мне всегда хотелось VPN, все мощности которого будут лично для меня, и его не придется делить с тысячами других юзеров;
когда придёт время, власти будут вырубать наиболее популярные решения, и такие расширения пойдут под нож первыми;
непонятно, что там с безопасностью.
Поэтому было решено пилить свой собственный сервак.
Был арендован самый дешевый VPS от FirstByte в Амстердаме, на него установлен Wireguard, всё работает, блокировки от РКН обходятся. Но быстро выяснилось, что кроме блокировок с нашей стороны есть ещё и ограничения на пользователей из РФ от западных компаний. Например, в этом были замечены https://redis.com и https://www.perforce.com/
Но как они определяют, что мы из России, если сервак в Нидерландах и, судя по сайту https://2ip.io/ru/privacy/ IP адрес тоже нидерландский? Знающие люди подсказали мне, что проверять надо не на 2ip, а тут:
А они показывают Россию. Выяснилось, что при проверке ip адреса через https://www.ripe.net/ можно установить владельца адреса — компанию firstbyte, и именно отсюда они знают, что мы из РФ. Сейчас, год спустя, при проверке firstbyte выходят ip адреса Cloudflare. Кроме того, здесь в комментарии #comment_269943379 человек пишет, что его VPN на VPS от firstbyte, расположенный в Финляндии, определяется как финский, так что, возможно, сейчас имеет смысл попробовать firstbyte, т.к. там доступны российские методы оплаты.
Тем не менее, год назад ничего этого не было, и передо мной встала задача найти VPS за рубежом и каким-то образом оплатить его из РФ.
Был найден хостинг в США — racknerd, который можно было оплатить через WebMoney. Оплата прошла, сервак в Ashburn (рядом с Вашингтоном), VPN работает, блокировок нет ни с нашей, ни с их стороны, скорость высокая, пинг так себе. Прекрасно.
Прошел год, неделю назад пришло время расплаты оплаты. Внезапно, WebMoney не принимается. Из доступных способов — только крипта. Спросил совета тут: Вопрос — как совершить оплату криптой? Кароче, как оказалось — ничего сложного в крипте нет, сервак в порядке, VPN будет работать ещё год, так что далее рассказываю как всё это делается.
Регистрация на хостинге и оплата VPS
Сначала регаемся на хостинге.
Кто хочет сказать «спасибо» за этот пост — вот моя реферал очка: https://my.racknerd.com/aff.php?aff=4692
Для идеологических противников рефералок — сюда: racknerd.com
Но не спешите покупать сервак — обычный тариф стоит $23 за год. Чтобы получить скидку, нужно тыкать на розовый баннер вверху «NEW YEAR 2023 DEALS», либо сразу переходить по ссылке https://www.racknerd.com/NewYear/

В принципе, если на нашей VPS будет только VPN, то подойдет любой тариф. Главное, что тут нас должно воловать — это ограничение трафика. Год назад я не знал, сколько моя семья потребляет трафика на инсту и прочие заблокированные сайты, и поэтому для подстраховки выбрал второй тариф. Теперь уже есть статистика и выяснилось, что мы редко выходим за пределы 100гб в месяц. Кароче, если вы не собираетесь качать торренты, то можно смело брать самый дешевый тариф и не париться. Таким образом, VPN на VPS в США обойдется нам дешевле чем в 1$ в месяц. По сравнению с тем что предлагают в других постах по 500р в месяц, это — вообще ни о чем.
Внимание: если хотите накатить ubuntu 22.04, рекомендуется взять тариф с 1гб ОЗУ. Если вас устраивает ubuntu 20.04, можно брать тариф с 512мб ОЗУ. Для наших целей никакой разницы, всё равно 20.04 будет поддерживаться аж до 2025г, а до него ещё дожить надо.
Выбираем в поле Operating System ubuntu 20.04. Локации без разницы, они близко друг к другу расположены и мало отличаются по пингу до РФ. Жмем Contunue.

На следующей странице жмем Checkout, заполняем данные о себе. Нужно ввести адрес проживания, и в этом месте я на всякий случай ввел фейковый адрес из США чтоб мой аккаунт не снесли за то что я из России. Возможно, так делать не следовало, но пока что проблем не было. Для генерации фейкового адреса можно воспользоваться онлайн-генераторами, например https://www.fakepersongenerator.com/Random/generate_address
В Payment Details выбираем Crypto (BTC, LTC, USDT) и переходим к оплате.
Обращаем внимание, что оплатить можно не всякой криптой, а только опделенными валютами в определенных сетях:
For crypto payments, we currently support Bitcoin network, Bitcoin Cash network, Litecoin network, Dogecoin network and ETH network (ERC20), Binance network is NOT supported.
Жмём Pay Now и нам предлагается одна из криптовалют на выбор. Я выбрал Litecoin (LTC) т.к. там наименьшие комиссии. Нам дают адрес крипто-кошелька, на котором ожидается перевод оплаты за хостинг. Нужно успеть совершить оплату за 2 часа.
Чтобы совершить оплату криптой, никаких терабайтов блокчейнов качать не нужно, и даже заводить свой крипто-кошелек нет необходимости, и тем более нет смысла регаться на крипто-бирже. Достаточно через обменник найти человека, которому мы на счет переводим рубли, а он по указанному адресу переводит крипту.
Существует множество разных обменников с разной репутацией и возможностями. Чтобы ориентироваться среди них, идём на агрегатор обменников (на пикабу этот домен запрещен, гуглите бэстчендж).
В левой колонке таблица, прокручиваем её до раздела «Интернет-банкинг», слева жмём кнопку Сбербанк RUB или выбираем свой банк. Справа выбираем Litecoin LTC.

Теперь в таблице справа отображаются подходящие нам обменники. Жмем вкладку «Калькулятор», переключаем в режим «Получаете», вставляем сюда ту сумму которую нам показала платёжка (на странице с адресом кошелька) и жмем «Рассчитать».

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

Я обменивался через multichange, проблем не возникло. Для верификации попросили фото карты на фоне их сайта (с одной стороны, конечно). Вставляете сюда адрес LTC и точную сумму с сайта платёжки, они показывают реквизиты, скидываешь на них сумму в рублях, на указанный адрес приходит крипта.
Готово, VPS оплачен на год:

Настройка VPS
Далее жирным текстом указаны команды для выполнения в локальной консоли или на сервере.
Первым делом надо отключить авторизацию по логину и паролю, чтобы боты не сбрутили пароль и не проникли на сервак.
Сначала генерим у себя локально пару ssh ключей
Через консоль (на линуксе) или ssh-клиент putty (на винде) заходим по тому паролю, что нам предоставил хостер, где 123.123.123.123 — ip адрес VPS.
ssh root@123.123.123.123
Копируем публичный ключ на сервер (UPD: для пользователей Windows — смотрите пункт 2 в комментарии #comment_271568783)
ssh-copy-id root@123.123.123.123
Меняем настройки ssh
sudo nano /etc/ssh/sshd_config
Откроется текстовый редактор, в нём находим следующие строки и прописываем
PasswordAuthentication no
Вместо 4567 — любой нестандартный номер порта по вашему усмотрению.
Сохраняем, выходим из текстового редактора.
Перезагружаем ssh сервис чтобы изменения вступили в силу
sudo service ssh restart
После этого для входа по ssh придется указывать порт ключом -p
ssh root@123.123.123.123 -p 4567
apt update && apt upgrade -y
Далее, необходимо закрыть все порты, кроме тех что нам нужны. Для этого воспользуемся утилитой ufw. Будьте внимательны при использовании ufw, т.к. при первом запуске без настроек он блокирует вообще всё, и после выхода с сервера обратно мы залогиниться не сможем. Если таки это произошло — не беда, идём в панель управления сервера и делаем сброс, но лучше чтобы всё получилось с первого раза.
apt install ufw
Открываем конфиг ufw в текстовом редакторе
nano /etc/ufw/before.rules
Прокручиваем до раздела «ok icmp codes for INPUT»
Закомментируем строку «-A ufw-before-input -p icmp —icmp-type echo-request -j ACCEPT»
И добавляем туда новую строку
-A ufw-before-input -p icmp —icmp-type echo-request -j DROP
Это нужно для успешного прохождения теста Определение туннеля (двусторонний пинг) https://2ip.io/ru/privacy/
(не помню, на кой ляд оно нужно, но я зачем-то сохранил это у себя в заметках)
ufw allow 80
ufw allow 443
ufw allow 4567
ufw allow 54321
4567 — ранее мы его указывали как порт для ssh
54321 — любой нестандартный порт для wireguard (понадобится позднее)
Перезапускаем ufw для применения изменений
ufw disable && ufw enable
Включаем автоматические обновления безопасности.
apt-get install unattended-upgrades
nano /etc/apt/apt.conf.d/20auto-upgrades
В конфиге прописываем следующие опции
APT::Periodic::Update-Package-Lists «1»;
APT::Periodic::Unattended-Upgrade «1»;
APT::Periodic::Download-Upgradeable-Packages «1»;
APT::Periodic::AutocleanInterval «7»;
Выбор софта для VPN
Существует множество различных технологий для реализации VPN сетей. Наиболее популярными являются OpenVPN и Wireguard. Вместе с OpenVPN можно сделать Shadowsocks для маскировки трафика под https, если требуется обход блокировок VPN. Есть также готовый софт, который всё сделает для вас, и автоматически выбирает наиболее подходящие технологии — SoftEther, Amnezia и тд. Но т.к. у нас пока никакие технологии не запрещены, я взял самую простую и быструю — Wireguard. Когда её заблокируют, тогда можно будет накатить что-нибудь посложнее. Вы можете выбрать любую другую технологию, наиболее простая в установке и использовании это, наверное, Amnezia VPN, но сам я не пробовал.
Установка Wireguard на сервере
Для упрощения установки воспользуемся готовым скриптом отсюда:
Конечно же, готовые скрипты — это всегда источник уязвимости, надо проверять что в них написано, и тд.
apt install -y curl
Делаем его исполняемым
Запускаем автоматическую установку. В процессе нас спросят, через какой порт будет работать wireguard — пишем тот что ранее открыли в ufw (в примере он указан как 54321). Также нам предложат прописать адреса днс, если хотите adguard — оставьте дефолтные, в ином случае пропишите адреса cloudflare 1.1.1.1 и гугла 8.8.8.8.
Далее нужно добавить новых юзеров, отдельно для каждого устройства на котором собираетесь использовать VPN. Повторно запускаем ту же команду. Для смартфона будет показан qr-код, который надо отсканировать с приложения, для ПК будет сгенерирован конфиг, который необходимо будет скачать к себе.
Настройка Wireguard на клиенте
Эту тему уже миллиард раз везде разбирали, не буду повторяться и сошлюсь на этот пост, тут в конце есть настройка на винде и смартфонах, со скриншотами: VPN на собственном сервере без настройки
Для тех кто сам разберется — ссылка на официальный сайт: https://www.wireguard.com/install/
А вот чего я нигде не видел — как сделать автоматическое переключение на wireguard только для заблокированных сайтов, а на обычные сайты ходить напрямую, чтобы не дергать постоянно переключатель подключений.
Описываю как сделать это на линуксе.
Итак, вот мы создали на серваке юзера и получили его конфиг, допустим WireGuard.conf
Добавляем его в систему
sudo nmcli connection import type wireguard file WireGuard.conf
sudo nmcli connection modify WireGuard connection.autoconnect no
Далее воспользуемся утилитой Wireproxy.
Она поднимает локальный socks5-proxy и весь трафик оттуда перенаправляет на VPN. Таким образом в системе VPN выключен, но локально в этом прокси он включен.
Остаётся лишь подключиться к этому socks5-proxy и направить в него трафик.
Устанавливаем wireproxy в дистр любым удобным способом.
Создаём конфиг wireproxy.conf со следующим содержимым.
В первой строке
WGConfig = WireGuard.conf
Это мы ссылаемся на конфиг wireguard нашего юзера.
[TCPClientTunnel]
BindAddress = 127.0.0.1:25565
Target = localhost:25565
[TCPServerTunnel]
ListenPort = 3422
Target = localhost:25545
BindAddress = 127.0.0.1:25344
Единственное, что нас тут интересует — адрес и порт в последней строке.
Запускаем wireproxy через консоль. Можно добавить его в автозапуск и он будет работать в фоне.
Ставим в браузере расширение SwitchyOmega
Создаём там New Profile — Proxy profile — прописываем имя — Create.
В настройках Protocol — SOCKS5, сервер 127.0.0.1, порт 25344 (всё как в конфиге).
Применяем изменения кнопкой Apply Changes.

Теперь, при заходе на любой сайт у расширения появится счетчик ошибок загрузки. Жмем на кнопку расширения, а там — N failed resources.

Затем выбираем, какие сайты должны всегда ходить по VPN:

Перезагружаем страницу (иногда необходимо несколько раз перезагрузить) и сайт прогрузится через VPN.
Работает идеально, за исключением инсты и фейсбука. Там лучше не добавлять условия в это расширение, а переключать VPN на уровне системы.
Заключение
Гайд получился объемным, я мог что-то упустить, так что задавайте вопросы, делитесь своим опытом, что можно улучшить, дополнить, оптимизировать и тд.
Душно? Да, душно, сложно, много жопочасов уходит на настройку всего этого. Зато оно своё, работает как часы, за год использования вообще не потребовало внимания и не падало, скорость максимальная. Кароче, лично я доволен.
На волне постов про собственный VPN
Увидел достаточно много постов про создание собственного VPN. Решил показать еще один простой способ создания своего собственного Wireguard VPN.
3) Выбираем в меню Облачные серверы и после Создать

4) Выбираем Marketplace => VPN => Wireguard-GUI (внизу отключаем бэкапы, мы же хотим сэкономить)

5) Нажимаем Заказать. Ожидаем некоторое время (у меня занимает примерно 5 минут) пока создастся сервер и установится ПО.
6) После этого вам на почту придет письмо с логином и паролем для доступа к веб интерфейсу VPN сервера.

Поздравляю, вы великолепны.

Инструкция как пользоваться Wireguard будет у вас в письме
Не рекламы ради. Реферальных ссылок нет.
Сам настроил себе дома фильтрацию на роутере до определенных ресурсов (трекеры, сервисы Meta и так далее), чтобы не приходилось включать каждый раз VPN вручную. Если будет интересно, сделаю инструкцию для роутеров Keenetic.
Всем хорошей пятницы!
Ответ kda2495 в «VPN на собственном сервере без настройки»
Есть еще один вариант с использованием Opera proxy.
Бесплатно. Находится мы будем в Швеции.
Ниже инструкция для win 10
И запускаем. Откроется консольная программка — не закрываем ее.

Далее опишу в картинках



Готово. Главное не закрывать консольную программку.
Если вам нужно открывать только заблокированные сайты в браузере, можно не трогать настройки proxy в windows а поставить, к примеру, это расширение
Инструкция по настройке:
Готово. Будет работать пока открыта консольная программка.

Ответ на пост «VPN на собственном сервере без настройки»
Можно также воспользоваться бесплатным конфигом Cloudflare WARP для Wireguard. Пользуюсь им уже больше полугода и проблем не знаю. Instagram, Twitter, Facebook, торрент-трекеры открываются, да и работает все быстро.
Один раз создаешь себе профиль для Wireguard и пользуешься на всех устройствах. Друзья тоже опробовали и не жалуются. Единственное, понадобится компьютер для создания файла конфигурации.
2. Загружаем файл wgcf_2.2.16_windows_amd64.exe (для 64-х битной версии Windows)
3. Переименовываем загруженный файл в wgcf.exe
4. Создаем на диске C:\ папку wgcf и копируем туда wgcf.exe
5. Нажимаем на ПК с Windows: клавиша Win+R (или запускаем программу Выполнить)
6. В появившеся окне вводим cmd
7. Открывается командная строка, в ней поочередно вводим команды:
wgcf register (после нее подтверждаем регистрацию нажатием клавиши Enter)
8. На диске C:\ в папке wgcf создается файл wgcf-profile.conf, это и есть файл конфигурации для Wireguard.
10. В самой программе нажимаем «Добавить туннель», нажимаем на созданный файл wgcf-profile.conf в папке C:\wgcf
11. Нажимаем «Подключиться»
12. Все, заблокированные сайты открываются.
P.S. На мобильных устройствах также скачиваете Wireguard через магазины приложений и в приложении выбираете свой сгенерированный файл wgcf-profile.conf.
P.P.S. Единственный минус это то, что Cloudflare WARP использует российские IP-адреса, поэтому сайты с блокировкой по российскому IP-адресу могут также быть с ограничениями (но торрент-трекеры, Instagram, Facebook открываются успешно).
Надеюсь, кому-то пригодится и будет полезно!

Доступен OpenVPN 2.6.0

После двух с половиной лет с момента публикации ветки 2.5 подготовлен релиз OpenVPN 2.6.0, пакета для создания виртуальных частных сетей, позволяющего организовать шифрованное соединение между двумя клиентскими машинами или обеспечить работу централизованного VPN-сервера для одновременной работы нескольких клиентов. Код OpenVPN распространяется под лицензией GPLv2, готовые бинарные пакеты формируются для Debian, Ubuntu, CentOS, RHEL и Windows.
Обеспечена поддержка неограниченного числа соединений.
В состав включён модуль ядра ovpn-dco, позволяющий существенно ускорить производительность VPN. Ускорение достигается за счёт выноса всех операций шифрования, обработки пакетов и управления каналом связи на сторону ядра Linux, что позволяет избавиться от накладных расходов, связанных с переключением контекста, даёт возможность оптимизировать работу за счёт прямого обращения к внутренним API ядра и исключает медленную передачу данных между ядром и пространством пользователя (шифрование, расшифровка и маршрутизация выполняется модулем без отправки трафика в обработчик в пространстве пользователя).
В проведённых тестах по сравнению с конфигурацией на основе интерфейса tun применение модуля на стороне клиента и сервера при использовании шифра AES-256-GCM позволило добиться прироста пропускной способности в 8 раз (с 370 Mbit/s до 2950 Mbit/s). При применении модуля только на стороне клиента пропускная способность возросла в три раза для исходящего трафика и не изменилась для входящего. При применении модуля только на стороне сервера пропускная способность возросла в 4 раза для входящего трафика и на 35% для исходящего.
Предоставлена возможность использования режима TLS с самоподписанными сертификатами (при применении опции «—peer-fingerprint» можно не указывать параметры «—ca» и «—capath» и обойтись без запуска PKI-сервера на базе Easy-RSA или похожего ПО).
В UDP-сервере реализован режим согласования соединения на основе Cookie, при котором в качестве идентификатора сеанса используется Cookie на основе HMAC, что позволяет серверу проводить верификацию без сохранения состояния.
Добавлена поддержка сборки с библиотекой OpenSSL 3.0. Добавлен параметр «—tls-cert-profile insecure» для выбора минимального уровня безопасности OpenSSL.
Добавлены новые управляющие команды remote-entry-count и remote-entry-get для подсчёта числа внешних подключений и вывода их списка.
В процессе согласования ключей более приоритетным методом получения материала для генерации ключей теперь является механизм EKM (Exported Keying Material, RFC 5705), вместо специфичного механизма OpenVPN PRF. Для применения EKM требуется библиотека OpenSSL или mbed TLS 2.18+.
Обеспечена совместимость с OpenSSL в FIPS-режиме, что позволяет использовать OpenVPN на системах, удовлетворяющих требованиям безопасности FIPS 140-2.
В mlock реализована проверка резервирования достаточного размера памяти. При доступности менее 100 МБ ОЗУ для повышения лимита осуществляется вызов setrlimit().
Добавлена опция «—peer-fingerprint» для проверки корректности или привязки сертификата по fingerprint-отпечатку на основе хэша SHA256, без применения tls-verify.
Для скриптов предоставлена возможность отложенной (deferred) аутентификации, реализуемой при помощи опции «—auth-user-pass-verify». В скриптах и плагинах добавлена поддержка информирования клиента об ожидании (pending) аутентификации при применении отложенной аутентификации.
Добавлен режим совместимости (—compat-mode), позволяющий подключаться к старым серверам, на которых используется OpenVPN 2.3.x или более старые версии.
В списке, передаваемом через параметр «—data-ciphers», разрешено указание префикса «?» для определения необязательных шифров, которые будут задействованы только при наличии поддержки в SSL-библиотеке.
Добавлена опция «—session-timeout» при помощи которой можно ограничить максимальное время сеанса.
В файле конфигурации разрешено указание имени и пароля при помощи тега <auth-user-pass></auth-user-pass>.
Предоставлена возможность динамической настройки MTU клиента, на основе данных об MTU, переданных сервером. Для изменения максимального размера MTU добавлена опция «—tun-mtu-max» (по умолчанию 1600).
Добавлен параметр «—max-packet-size» для определения максимального размера управляющих пакетов.
Удалена поддержка режима запуска OpenVPN через inetd. Удалена опция ncp-disable. Объявлены устаревшими опция verify-hash и режим статических ключей (оставлен только TLS). В разряд устаревших переведены протоколы TLS 1.0 и 1.1 (параметр tls-version-min по умолчанию выставлен в значение 1.2). Удалена встроенная реализация генератора псевдослучайных чисел (—prng), следует использовать реализацию PRNG из криптобиблиотек mbed TLS или OpenSSL. Прекращена поддержка пакетного фильтра PF (Packet Filtering). По умолчанию отключено сжатие (—allow-compression=no).
В список шифров по умолчанию добавлен CHACHA20-POLY1305.

Steganos VPN Pro на 1 или 10 лет
💁🏻♂️ Steganos VPN [обзор] — это немецкая компания, используемая для шифрования и защиты личных данных каждого пользователя, с каждого электронного письма, банковского счета. С другой стороны, одной из причин выбора этого VPN в 2022 году является то, что он прост в использовании и имеет отличный интерфейс, в любом случае попробовать что-то новое всегда полезно для здоровья.
➖➖➖➖➖➖➖➖➖➖➖➖
🤷🏻♂️ ЧТО НУЖНО ДЕЛАТЬ:
└ Только через Gmail-почту

└ Вводим Gmail-почту аккаунта My Steaganos

3. Ожидаем ключ на почте.
└ Активируем ключ на сайте или в приложении.



4. Готово, VPN на 1 год.
└ Скачиваем через: CHIP / COMSS
🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥
НОВАЯ ИНФОРМАЦИЯ ( спасибо @Hensley ):
Промокоды суммируются на 1 аккаунте, то есть вы можете получить несколько промокодов и активировать на одном аккаунте, за каждую активацию вам будет прибавляться 1 год, тем самым вы можете получить VPN не на 1 год, а к примеру на 10 лет. Можно с одного IP, Proton Mail работает, также можете попробовать Temp Mail и другие временные почты.

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

└ Чтобы поблагодарить и поддержать нас 🔥
Реанимируем Proton VPN при помощи OpenVPN
Здравствуйте уважаемые пикабушники. Недавно Р.К.Н. заблокировал много ВПН сервисов и в том числе авторитетный Proton VPN. Но, не всё потеряно.В прошлом посте я рассказал, как запустить Proton и Windscribe «c толкача», при помощи программы v2RayNG. Сегодня я подробно покажу/опишу, как обойти блок при помощи ПО Open VPN.
Делаем всё на Виндовс 10.
Для Андроид, Айфона, всё делается аналогично, а внизу есть линки на скачивание приложений.
С официального сайта скачаем и установим программу для Винды ТЫЦ выбрав свою разрядность

Какой файл качать – 32 или 64? Кликаем правой кнопкой мыши на рабочем столе по значку «Мой компьютер» — Свойства. Тут всё очевидно

Заходим в свой аккаунт Протона на страницу ВПН КЛИК и тыкаем в OpenVPN/IKEv2

Далее мотаем вниз.
Имя пользователя OpenVPN / IKEv2 **********
Пароль OpenVPN / IKEv2 ••••••••••••••••
Скопируйте в блокнот на рабочий стол. Потом пригодятся.
Прокрутим вниз и по пунктам
1. Выберите платформу — Windows (можно любую на выбор)
2. Выберите протокол — За нас уже выбрано UDP. Потом, то же самое, можно проделать и TCP
3. Выберите файл конфигурации и скачайте. У Вас бесплатный аккаунт? Выбор очевиден — Настройки бесплатных серверов. Выбор из трёх стран: Япония, Нидерланды, США.
Вы прикупили подписку? У Вас выбор намного больше).
Я беру Нидерланды и ищу наименее загруженный бесплатный сервер и скачиваю конфигурацию

Запускаем программу OpenVPN GUI (мы же её уже установили)) и кликаем правой кнопкой мыши (ПКМ) по иконке в трее. Идём в Настройки.

Особо ничего менять не надо, разве что убрать прогу из автозапуска.

Далее, там же в трее – Импорт – Импорт файла конфигурации – выбрать наш скачанный конфиг от Proton VPN.
Или в проводнике двойной клик по файлу и согласится на импорт.

Теперь клик ПКМ по иконке в трее – Подключиться – У нас выскакивает вот такое окно.
В самом начале мы сохранили в блокноте Логин и Пароль. Вот они и пригодились.

Идём на сайт https://2ip.ru/ или https://ipinfo.io/json и убеждаемся, что мы в Голландии. ))
Но. Конфиг может и не подключится. Есть выход – отредактируем его с помощью текстового редактора. Как на скрине меняем значения на 51820. Увы, проверить не могу — у меня и неотредактированный работает и отредактированный.

Таким образом качаем себе на комп/смартфон файлы для Open VPN поболее , и когда одни серверы перегружены, мы просто подключаемся к другим.
Где взять ещё бесплатных конфигов для Open VPN?
Идём на сайт https://www.vpngate.net/en/ Прокручиваем ниже, и скачиваем любой с отмеченного столбца. Конфигов там много.


И вот ещё сайт, где раздают конфигурации Open VPN
_____ А теперь _________

Переходите по ссылке на сайт Антизапрет ТЫК
Промотать до VPN, Пункт 2 и скачиваете файл конфигурации.
Импортируем его в OpenVPN.
Теперь мы сёрфим в сети без проблем, причём ВПН срабатывает только на заблокированных сайтах. Остальной трафик идёт на прямую.
Для пикабушников Украины есть конфиг на сайте Заборона Хелп
На Андроид и IOS всё протоновские файлы формируем аналогично — Также протоновские конфиги скачиваем, но в меню выбираем для Андроид или IOS. либо для МакОС и т.п.
PS. А ещё из Протона можно вытащить конфиги для WireGuard. Примерно так же, как и с OpenVPN

Казалось бы, к чему все эти телодвижения?
Отвечаю — Протоновские сервера надёжны и в «сливе» не замечены. А если у Вас ещё и подписка платная и Вы ей не можете воспользоваться, ответ очевиден.
Сейчас должны появиться комменты, что свой сервер за бугром надёжнее всех ваших ВПНов. Да, я знаю. Кто интересуется этой тематикой, Вам сюда https://pikabu.ru/@HolderN/saved/1659157

Делаем свой VPN-сервер с безлимитным трафиком за 200 рублей в месяц

Если раньше VPN-сервисы были уделом для гиков и тех, кому нужен доступ к немногочисленным заблокированным в России сайтам, то сегодня это уже необходимость для всех. Из-за большого наплыва пользователей, платные и особенно бесплатные VPN-сервисы испытывают большие нагрузки, поэтому скорость доступа изрядно снижается.
Единственный выход — сделать свой личный VPN-сервер, который, к тому же, никто не сможет заблокировать. Думаете, что это сложно? На самом деле нет, сейчас расскажу, как сделать свой VPN за 20 минут. Доступ к нему можно дать даже своим друзьям.
Что такое 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. То есть, никто из вне, даже среди тех людей, кто имеет доступ к подключению, не сможет перехватить информацию других пользователей. В том числе и вы, даже будучи владельцем сервера.
Арендуем и настраиваем сервер
Хостинги есть разные — от Amazon и Google до Digitalocean. Но, увы, воспользоваться ими нельзя, потому что оплата российскими банковскими картами заграницей не проходит. Поэтому обратимся к российской платформе VDSina.
Площадка даёт возможность арендовать виртуальный сервер как в Москве, так и в Нидерландах. Нам нужен второй вариант.
После регистрации на сайте заходим в панель управления и выбираем пункт «Добавить сервер». Предварительно не забудьте пополнить баланс. Можно при помощи банковской карты, Qiwi или ЮMoney.
Затем настройте сервер по следующим параметрами:
ОС: CentOS 7
Тип сервера: Стандартные серверы
Тариф: 6,6 рублей в день (примерно 200 рублей в месяц) при трафике 32 ТБ в месяц
Локация сервера: Амстердам
Автоматическая резервная копия: отключить
После настройки в раздел с поддержкой придёт тикет, который будет содержать всю информацию о сервере (IP-адрес и пароль).
Разворачиваем Outline
Скачиваем с официального сайта Outline Manager и устанавливаем клиент для подключения к VPN на свой компьютер и другие устройства.
Открываем Outline Manager и выбираем пункт «Настройте Outline где угодно». Затем открываем Терминал (в macOS он встроен), для Windows советую скачать Putty для ssh-подключения.
Обновляем сервер:
ssh root@(IP-адрес вашего сервера)
Соглашаемся с подключением, пишем команду yes и нажимаем enter
Вводим пароль из тикета и нажимаем enter
Обновляем сервер: yum update и нажимаем enter
Соглашаемся: вводим y нажимаем enter
Снова соглашаемся с изменениями: вводим y нажимаем enter
Устанавливаем Docker:
Вводим команду: wget -O — https://get.docker.com | bash и нажимаем enter
Запускам docker, вводим команду: systemctl enable docker && systemctl start docker
Устанавливаем Outline:
Копируем из Outline команду и вставляем её в Терминал: sudo bash -c «$(wget -qO- https://raw.githubusercontent.com/Jigsaw-Code/outline-server. )»
Копируем ключ, выделенный зелёным текстом в Outline
Ставим Iptables:
Вводим: sudo yum install iptables и жмём enter
Завершаем шаг и и запускаем установку сервисов командой: sudo yum -y install iptables-services и жмём enter
Вводим команду: iptables -L -v -n и жмём enter
Сбрасываем параметры командой: sudo iptables -F
Разрешаем входящие и исходящие подключения:
sudo iptables -A INPUT -i lo -j ACCEPT и жмём enter
sudo iptables -A OUTPUT -o lo -j ACCEPT и жмём enter
sudo iptables -A INPUT -m state —state ESTABLISHED,RELATED -j ACCEPT и жмём enter
После этого заходим в Outline Manager и подключаемся к серверу.
Если вы всё сделали правильно, то у вас откроется окно, в котором вы можете создать ключи для подключения.
Как подключить Outline VPN на другие устройства
Вам необходимо скачать клиент VPN-сервиса на официальном сайте (в том числе для iPhone). После скопировать на компьютере в Outline Manager ключ (указан на скриншоте) и отправить его на другое устройство любым удобным способом. После чего зайти в программу и вставить ключ.
Таким образом доступ к собственному VPN можно дать и друзьям. Им тоже нужно будет скачать Outline на своё устройство и вставить в него ключ. Для каждого устройства требуется свой ключ.
На этом всё. Пользуйтесь и задавайте вопросы в комментарии.
И снова про VPN или Shadowsocks/Vmess/Vless/Trojan, как подарок от китайских друзей
Здравствуйте уважаемые Пикабушники. Продолжу серию постов про обход блокировок.
Но сначала напомню, что самый надёжный VPN — тот, который вы поднимаете на
арендованном виртуальном сервере. В прошлом посте я давал ссылки на инструкции от пикабушников.
Недавно появился ещё один очень толковый гайд в этой тематике от @nayk и VPN для Youtube, Instagram и пр Рекомендую ознакомится.
Наверняка многие столкнулись с тем, что традиционные способы обхода блокировок перестают работать на смартфонах и ПК. Всё ожидаемо, РКН тоже не дремлет. Однако есть решения и вот одно из них.
В 2012 году для доступа к контенту и обхода Великого Китайского Файервола , китайским программистом с ником «Clowwindy«, была придумана технология Shadowsocks. Эта технология работает по принципу прокси, но с шифрованием. Она маскируется под https трафик, поэтому использование этого протокола сложно вычислить и заблокировать.
Не буду больше «грузить» теорией. Кому интересно история разработки и разработчика — ТЫК СЮДА Скажу лишь кратко — с разработчиком связалась китайская полиция и проект был закрыт, но. Идея была подхвачена энтузиастами и получила развитие. На данный момент есть различные Shadowsocks клиенты для Android, Windows, Mac OS, Linux, iOS и OpenWRT (для роутеров) В том числе и Outline VPN, о котором был пост на Пикабу
А ещё, разработаны новые, не менее крутые решения — Vmess, Vless, Trojan и т.п. Что это за «звери» такие, при желании можно прочитать ТУТ, а я расскажу об одном из клиентов для этих протоколов, который носит название v2RayNG.

Для продвинутых и не боящихся ставить приложения из сторонних источников, есть 4pda и мод с русским переводом
Сперва добавляем конфиги Shadowsocs. Переходим на сайт https://outline.community/servers/, прокручиваем вниз и выбираем сервер нужной страны. Выберу нынче Францию.

Тыкаем понравившийся сервер. Не заморачиваюсь и выбираю в первый.

Получаем готовый конфиг Shadowsocs. Копируем его в буфер обмена.

Открываем приложение v2RayNG, тыкаем ПЛЮСИК вверху справа, вставляем в скопированный конфиг. Запускаем (стрелкой указано), даём разрешения, пользуемся.
Так можно делать много раз
Импортировать конфиги можно и при помощи встроенного в прогу сканера QR кода — открываем сайт на компе и сканируем смартфоном с монитора.

И так, мы загрузили кучу конфигов, надо выбрать нерабочие и удалить. Жмём 3 точки в верхнем правом углу и всё как на скрине, на раз-два-три.
Внимание! Дождитесь результата теста. Много «носочков» — дольше тест.

Ещё конфиги Shadowsocs (носочки) можно брать в Телеграмм канале сообщества Outline t.me/OutlineVpnOfficial
Главное неудобство — бесплатные «носочки» надо «освежать». Некоторые работают месяц, другие меньше, некоторые больше.
Пока создам запас, а ниже расскажу где их ещё брать.
Просто открыть ссылку, скопировать и вставить в клиент
О настройке «носочков» на Винде и клиенте v2RayN для ПК будет ниже, а пока.
На будущее. Идём на просторы инета актуальными «носочками» Есть много ресурсов раздающих их (и не только) бесплатно.
Зайдём ка мы, к примеру, на https://akunssh.net/за VMESS

Выбираем как на скрине — VMESS


Выбрал Германию. Премиум на 7 дней

Быстро изготовим аккаунт без смс и регистрации. Просто ввести в форму какой-нибудь URL.
Пусть будет google.com



Добавляем в буфер обмена v2Ray
Теперь небольшое редактирование

Внизу тыкаем в надпись allowlnsecure и меняем значение на TRUE

Сменили на TRUE, не забудем СОХРАНИТЬ

А ещё можно просто зарегистрироваться на форуме 4pda, подписаться на VPN Club. Именно там хорошие добрые люди ежедневно закидывают рабочие конфиги для v2Ray
===== А теперь, для Windows =====

Прога портативная, ничего устанавливать не надо.
Скачиваем архив v2rayN-Core.zip =Тык=, распаковываем и запускаем файл v2RayN.

1. Сменим язык с китайского на английский
2. Импортируем конфиги (носочки) из буфера обмена.
3. Ctrl+A — Выбрать всё.4. Удаляем дубликаты, если такие окажутся.
5. Ctrl+A — Выбрать всё и Проверим конфиги на работоспособность — Test Servers Real delay (Ctrl+R)

6. Отсортировываем результаты удаляем нерабочие.

7. Теперь ПКМ по иконке в трее и выбираем РАЗ


В интерфейсе проги кликаем по нужному серверу и жмем на «ВВОД» (Enter)
Проверяем заблокированный сайт. О как. Вася Ложкин картинку закинул. 😉

Пост «пилить» помогал Ричард, поддерживая постоянную температуру кресла и вообще.

=== Всё! Всем мира и добра! ===
Продолжение поста «Как развернуть свой VPN сервер»
Многие в комментариях резонно указали, что сервер не настроен, его взломают, и будет он трудится в каком-нибудь ботнете. На что я отвечу:
1. Убирать рут не вижу смысла. На сервере нет никаких важных данных и рут нужен почти всегда.
2. Вход с помощью ключей. Можно установит, но это добавляет проблем с настройкой и подключением. Ради защиты большого ничего, также не вижу смысла этим заниматься.
Что необходимо сделать:
Для защиты сервера имеет смысл изменить SSH порт на какой-нибудь другой, это отсеет большинство атак ботов, установить fail2ban, для защиты от перебора паролей и настроить Firewall. Как это сделать расписано ниже.
Изменяем порт SSH:
Вводим в терминал
Управление стрелочками. Удаляем # перед Port и вместо 22 вводим любой от 1024 до 65535.

Нажимаем Ctrl+X потом Y и Enter.
Перезапускаем ssh командой:
Теперь при подключение используйте новый SSH порт
Устанавливаем fail2ban командой:
Для наших целей настройка из коробки сгодится.
Установим и настроим Firewall
Нажимаем Y и Enter
Всё. Дальнейшую настройку для данного сервера, я считаю избыточной.
Как развернуть свой VPN сервер
Стоимость: 14$ в год.
Инструкция очень подробная и рассчитана на начинающих.
В свете последних событий растет потребность в VPN для обхода разных блокировок.
Можно использовать какой-нибудь VPN сервис
+ Проще(Но не сильно)
— Ненадежно(Уже сейчас забанены популярные VPN сервисы и РКН планирует заблокировать ещё больше. Есть обходы этих блокировок, но это танцы с бубном, что убирает главный плюс данного варианта)
— Небезопасно(Если использовать малоизвестные сервисы, то безопасность и анонимность ваших данных будет находится под большим вопросом, а о надежности и речи быть не может)
— Низкая скорость(Относится к малоизвестным сервисам)
Можно использовать свой VPN на арендованном сервере
+Безопасность(Только вы знаете, что происходит на вашем сервере)
+Надежность(IP вашего сервера никогда не забанят, ведь пользуетесь им только вы)
+Высокая скорость(Сервером пользуетесь только вы и ваша семья)
—Возможные проблемы с арендой VPS сервера
1.Покупка VPS
Первым делом нам нужно купить VPS(Виртуальный приватный сервер).
В данной статье я покажу как купить VPS на примере RackNerd, так как в апреле у них можно купить VPS по цене 14$ в год c 2500 GB трафика в месяц, да и без скидок у них дешевые и качественные VPS. Другие дешевые VPS можно найти здесь. Нам сгодится самый дешевый. Ориентируйтесь на скорость и количество трафика в месяц.
Выбираем операционную систему Ubuntu 20 и нужное вам расположение сервера

Нажимаем Continue => Checkout
Дальше вводим свои данные, насколько правдивыми они будут решать вам, но email должен быть настоящим.

Способов оплаты много. Выбирайте наиболее удобный для вас. Я выбрал webmoney, так как для меня он единственный рабочий.
После оплаты на email придёт письмо с данными для подключения к серверу. Также в письме будет ссылка и логин, пароль к панели управления сервером. В ней можно настраивать сервер. но в дальнейшем она нам не понадобится, но иногда после всех установок может потребоваться перезагрузка сервера, она делается именно в панели управления.

2.Подключение к VPS
Скачиваем и устанавливаем PuTTY
Открываем и в поле Host Name вводим IP адрес из письма. В поле Port вводим SSH port из письма.
Нажимаем Open

Далее нажимаем Accept

Вводим имя пользователя, в нашем случае root, нажимаем Enter
Далее копируем Root Password из письма, вставляем его в с помощью ПКМ и нажимаем Enter.(Пароль не отображается при вводе)
3.Установка и настройка VPN сервера.
Есть много разных VPN серверов. Я буду использовать Wireguard, так как он современный, лёгкий и быстрый. Устанавливать и настраивать его вручную не вижу смысла, если вы хотите обычный VPN сервер. Вместо этого, мы будем использовать скрипт, который очень упростит весь процесс.
Копируем и вставляем(ПКМ для вставки в терминал) данную команду.
Вводим нужный вам порт, если вам без разницы просто нажмите Enter.
Придумываем и вводим имя клиента который будет подключаться к VPN.
Выбираем нужный DNS сервер, если вам без разницы просто нажмите Enter.
Нажимаем Enter ещё раз.

Мы создали и конфиг файл(нужен для подключения), также в терминале появится его QR-code для подключения с телефона(подробнее в разделе 4.Подключение к VPN).
Для каждого пользователя нужно создавать свой конфиг файл. Для этого вводим эту команду и проделываем предыдущие действия.
3.5 Скачивание конфиг файла
Для того чтобы скачивать файлы с сервера нам понадобится программа WinSCP
Скачиваем, устанавливаем и запускаем.
Вводим те же данные, что мы вводили в PuTTY и нажимаем войти.

Далее просто переносим конфиг файл(имя клиента.conf) на свой пк.
4.Подключение к VPN
Устанавливаем, открываем, нажимаем Добавить туннель, выбираем наш конфиг файл и нажимаем кнопку Подключить.
Скачиваем WireGuard из Google.Play или F-Droid
Открываем, тапаем по плюсику, выбираем либо импорт из файла или архива, тогда выбираем наш конфиг файл, либо сканируем QR-код из терминала.
Надеюсь данная инструкция окажется для кого-нибудь полезна.
Спасибо за прочтение.
P.S. Извините, что забыл открыть.

Простейшая настройка собственного VPN
Добрый день, пикабушники!
Сразу скажу: я не собираюсь строить из себя эксперта в этой области, но в последнее время тема стала крайне актуальной, просили помочь с установкой и настройкой многие друзья и родственники, и даже тут, на пикабу, пришлось пару раз отметиться по этому вопросу, где меня и попросили запилить пост. (@Warspirit, ты в телевизоре). Ну что ж, мне не трудно, многим полезно.
Получилось очень, очень много букв, но ответственно заявляю, что по этой инструкции смогла купить сервер и подключиться к инстаграму моя бабушка, а это многого стоит. Если есть критика или дополнение – буду только рад услышать ваше мнение в комментариях.
В итоге у нас будет: недорогой VPN, работающий на арендованном нами сервере по протоколу OpenVPN, работающий быстрее всех бесплатных аналогов и очень многих платных. Самый простой, без всяких плюшек вроде маскировки туннеля, выбора отдельных сайтов, которые через этот туннель будут открываться и прочих финтифлюшек, простая рабочая машина, которая обеспечивает отличные скорость и конфиденциальность вкупе с обходом блокировок, а большего нам и не нужно. Итак, поехали.
Для начала определимся с терминологией на случай, если кому-то еще не прожужжали на эту тему все уши.
• VPN –надежный «туннель» от вас до удаленного сервера. Все провайдеры, спецслужбы и прочие заинтересованные лица снаружи могут увидеть только пункт назначения и гору непонятных буковок, которые представляют собой шифрованное «что, куда и откуда».
• VPS/VDS – между двумя этими понятиями для нас разницы нет. По сути, это виртуальный компьютер где-то далеко, на котором мы и будем поднимать VPN-сервер.
• VPN-сервер – программа, которая стоит на удаленном компьютере и является одной из сторон создания туннеля. Вторая сторона – ваш компьютер/телефон.
• OpenVPN – одна из технологий создания VPN-туннеля, созданная еще 20 лет назад, но с тех пор только прибавившая актуальности. Поддерживает десятки алгоритмов шифрования, имеет огромный пласт возможностей, но из всего этого нам надо знать то, что он быстр, он надежен и его еще никто не взломал. Во всяком случае, об этом не известно широкой аудитории, а абсолютно надежных систем не существует. Имеет приложения для Windows, Linux, Mac, Android и iPhone. Вероятность того, что ваше устройство не в этом списке, исчезающе мала.
• Хостер – тот, кто сдал вам в аренду сервер.
Затем нужно определиться с выбором сервера. Минимальные системные требования настолько минимальны, что подойдет практически любой VPS, который существует на рынке. В данный момент у меня трудится сервер с 512 МБ RAM, 10 ГБ ROM и одним 3 ГГц ядром процессора, а обычная нагрузка по всем показателям не превышает 10-20%. Единственное, на что стоит обратить внимание – наличие TUN/TAP устройства (если вам нужна эта статья, то никакой практической пользы эта информация вам не принесет, так что можете не вникать), но о его отсутствии обычно предупреждается большими красными буквами. Кроме того, обязательная характеристика – линукс. (проблем тут он вам не доставит). Желательно – Debian или CentOS последней версии, которая доступна на сайте. Windows не брать ни в коем случае, она дороже и не подходит для быстрой установки описанным способом. Операционная система выбирается при покупке сервера, потом ее можно переустановить.
С требуемыми характеристиками разобрались. Осталось определить местоположение сервера.
Если вам нужна конфиденциальность, то наилучшим вариантом, конечно же, будет зарубежный сервер. Как минимум потому, что вытащить информацию о том, куда ходил такой-то IP, из другой страны на порядок сложнее, чем потребовать ее от своего провайдера. Сам протокол OpenVPN предоставляет достаточную надежность, чтобы не бояться прослушки канала провайдером и заинтересованными лицами, особенно если поэкспериментировать с настройками шифрования (каждое изменение стандартных настроек, особенно алгоритма хеширования, усложняет взлом в разы при условии использования надежных алгоритмов). Ну а если вы решили обзавестись VPN только ради обхода блокировок, как я, то, скорее всего, подойдет и любой российский сервер. Не все провайдеры «последней мили» тратятся на установку дорогого оборудования, осуществляющего блокировки, а уж среди облачных гигантов таких и вовсе единицы. Мне пока что попадался только один из более чем десятка опробованных, и я спокойно вернул деньги по причине «не устроили условия».
После недавних колебаний курса цены на зарубежный VPS в общем выросли, но пока что еще держатся в пределах разумного (надеюсь, это надолго, но, возможно, при покупке имеет смысл оплатить сразу на несколько месяцев, чтобы потом не потратить лишнего). Сразу могу предупредить, что легко мог пропустить хорошее предложение, поэтому прошу добавить в комментариях, если у кого есть более вкусные варианты. Кроме того, я не знаю, что сейчас творится с оплатой зарубежных сервисов, так что эту сторону вопроса я попросту не учитывал.
Самый простой вариант выбора – загуглить «аренда vps в европе». Цены будут нормальными, но все же гораздо выше, чем если подбирать вдумчиво. Например, https://gcorelabs.com/ru/hosting/vds/europe/ За 240 рублей в месяц вы получаете вполне приятный по характеристикам сервер, несколько европейских столиц на выбор и 200 мбит/с канал с безлимитом по трафику. Но я бы все же рекомендовал открыть страницу с подбором сервера, как эта https://hostinghub.ru/vps-search/ и подобрать себе подходящий вариант в любой стране мира.
Из российских серверов подойдет практически любой. Я пользуюсь https://skyhost.ru за 84-80 руб/мес (в зависимости от периода оплаты. Довольно распространенная практика), но канал тут только 10 мбит/с, мне больше и не надо. Есть и дешевле, но там либо проблемы со стабильностью, либо большие ограничения. Если хотите скорости – https://justhost.ru/ , то же самое, но с каналом 200 мбит/с и на 20 рублей дороже. Хотите что-то интереснее – десятки сайтов-агрегаторов к вашим услугам по запросу «подбор vps.
Итак, с провайдером вы определились. Показывать процесс регистрации не имеет смысла — создаете аккаунт, выбираете сервер, операционную систему, оплачиваете. В случае возникновения трудностей пишите в комментарии или в службу поддержки. Второй вариант надежнее.
После оплаты вам на почту через некоторое время падает IP-адрес, логин и пароль. Выглядит это примерно так:

Обращаю ваше внимание, в письме одновременно может быть и адрес панели управления, но нам сейчас нужен блок, в котором находится IP (четыре числа, разделенных точкой).
Логин-пароль мы получили. Пользователи Linux и MacOS открывают терминал и вводят туда «ssh root@<IP-адрес сервера>, мы же идем на сайт https://www.chiark.greenend.org.uk/

Открываем, соглашаемся с предупреждением, если оно возникает, устанавливаем. В меню программ появляется папка PuTTy, в ней мы открываем одноименный файл PuTTy. Появляется вот такое окно. В указанное окошко вводим IP, нажимаем Open. Больше ничего не меняем.

В итоге у всех вылезло черное окно терминала, в котором система просит нас ввести логин и пароль или просто пароль. (При первом подключении будет предупреждение о неизвестном сервере, соглашаемся). Вводим. (Копирование и вставка осуществляются с помощью нестандартных Ctrl+Shift+C/V, кроме того, вставить можно просто кликом правой кнопкой мыши по окну. Символы пароля при вводе не отображаются даже в виде звездочек. Не пугайтесь, они есть, просто невидимы. Ошиблись – три секунды держите кнопку «стереть»). Иногда случается так, что присланный пароль не работает ни в какую, тогда мы идем на сайт хостера и через панель клиента меняем его на свой. Обычно там все написано, но если возникли проблемы – опять же, комментарии или техподдержка.
В итоге у нас есть вот такое окно, в которое последовательно вставляем три команды, после каждой нажимаем «ввод» и дожидаемся завершения (снова появится вот такая строка-приглашение к вводу)

Команды взяты со страницы разработчика скрипта: https://github.com/angristan/openvpn-install . Все проверено, вирусов нет. Копируем полностью, от первого символа до последнего, точки не забываем, пробелы в конце и в начале простительны
После этого программа начинает работать сама, вам нужно лишь нажимать Ввод, когда она просит, оставляя все как есть, и дожидаться того момента, когда она попросит придумать имя нового подключения. Займет это около минуты. Приглашение выглядит так:

Придумываем не слишком сложное имя и два раза нажимаем Ввод, пока снова не появится приглашение ко вводу. Вводим команду ls (эл-эс английские, маленькие)
Появится список всех файлов в данной директории. Среди них будет один под названием <введенное_вами_имя>.ovpn Печатаем:
Выделяем снизу вверх все от “</tls-crypt> до строчки “client”, строка приглашения к вводу в выделение попасть не должна. Копируем сочетанием клавиш Ctrl+Shift+C. Открываем блокнот и вставляем. Сохраняем где-нибудь на рабочем столе с любым именем файла, но заканчиваться оно должно на .ovpn. Обратите внимание на рамочку на скриншоте, там должно значиться именно «Все файлы».

Идем на сайт https://openvpn.net/vpn-client/ и скачиваем приложение под свою систему. Устанавливаем. Открываем. Окно выглядит так. Переходим на вкладку File и перетягиваем в окошко наш файлик, сохраненный на рабочем столе, либо открываем его же с помощью кнопки Browse

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


Приложение для телефона можно скачать в Play Market или App Store. Для него потребуется точно такой же файлик, можно даже этот. Но два одновременных соединения с помощью одного файлика (он называется профиль) установить не получится, поэтому для создания второго, третьего и десятого, которые можно распространить по всей семье или среди друзей, мы снова подключаемся к серверу, как и раньше, и вводим команду
Выпадает небольшое меню, в котором мы можем добавить новый профиль, удалить один из существующих (он больше не сможет подключиться) или вовсе удалить OpenVPN с сервера. Выбираем 1, придумываем имя, два раза нажимаем на ввод и опять копируем вывод команды cat <введенное_вами_имя>.ovpn в файлик на рабочем столе, откуда его можно передать куда угодно. Работает пересылка по ватсап и телеграм, а также по другим мессенджерам. На принимающей стороне надо всего лишь установить приложение и нажать на присланный файл, после чего соединиться.
Как-то так. В ближайшем будущем планировал записать нормальное видео, как это делается, и добавить в комментарии, но пока что существует только текстовая инструкция. Создано под давлением родственников и знакомых)