Расскажу, что я сделал недорого и по-быстрому, чтобы вернуть доступ к информации для моей семьи.
- Суть проблемы
- Доступные решения
- WireGuard
- AmneziaWG
- XRAY
- Что необходимо для организации личного туннеля
- Аренда VPS
- Beget – качественно но дорого
- Vdsina.com – от 0.75$ в месяц
- HSHP – запасной вариант
- Другие хостеры
- Установка WireGuard/Xray на сервер
- AmneziaWG
- Xray
- Nyr/wireguard-install
- Клиенты WireGuard
- WireGuard
- Настройка клиента WireGuard
- Amnezia – подойдет большинству
- ShadowRocket – мой выбор
- Нагрузка на сервер VPS при просмотре видео 4k на Youtube
- Рекомендуемые ссылки
Суть проблемы
Все активные жители РФ давно столкнулись с необходимостью постоянно обходить ограничения (нет, не только РКН) разных жизненно важных сервисов по геоположению в России. Но на сегодняшний день резидентам нашей великой страны фактически отрубили доступ к незаменимому хранилищу видео-информации. Так что это касается каждого, кто в сети не только “котиков смотрит”, но работает и учится.
Доступные решения
Единственное качественное и надежное решение – это прорубить своё “окно в Европу”, не рассчитывать на публичные и бесплатные сервисы. Рассмотрим, какие протоколы существую и что сейчас работает.
WireGuard
WireGuard – это современный и простой в использовании протокол для создания безопасных соединений через интернет. Представьте, что у вас есть личный туннель, по которому проходят ваши данные, защищенные от посторонних глаз. Это нужно, чтобы безопасно работать в интернете, защищая личную информацию, особенно в публичных сетях. Настроить WireGuard легко, даже без технических знаний, и он обеспечивает быструю и стабильную работу, делая ваше интернет-соединение более безопасным и приватным.
Отвечает: chatGPT
Очень быстрый протокол, отлично работает, но блокируется сотовыми операторами, и вообще легко блокируется. На день публикации статьи у меня из дома через РТК отлично работает.
AmneziaWG
Особенность протокола AmneziaWG заключается в том, что он основан на WireGuard — одном из самых современных и эффективных VPN-протоколов. AmneziaWG выделяется своей простотой в использовании и настройке, даже для людей без технических знаний. Протокол обеспечивает высокую скорость соединения благодаря легкости и минималистичности WireGuard, при этом сохраняя высокий уровень безопасности.
Отвечает: chatGPT
Данный протокол уже не так легко блокируется, но все-таки очень распространен и находится в фокусе внимания. Лично у меня он не всегда работает через сотовую сеть (может быть нужно изменить настройки, но я сразу пошел дальше).
XRAY
XRAY — это протокол, используемый для обхода интернет-цензуры и обеспечения конфиденциальности в интернете. Он работает, маскируя интернет-трафик под обычные запросы, например, веб-страниц или видео, что делает его трудным для обнаружения и блокировки. XRAY поддерживает несколько режимов работы, таких как VPN, прокси и другие, позволяя пользователям выбрать оптимальный способ защиты своих данных. Этот протокол популярен среди людей, которые хотят обойти блокировки сайтов и сохранить анонимность в сети.
Отвечает: chatGPT
Это уже тяжеловатый протокол – справиться с его обнаружением и блокировкой довольно сложно. Работает в рф на любых сетях и скорее всего не будет заблокирован (особенно современные качественные его реализации).
Что необходимо для организации личного туннеля
- Свой сервер – будем использовать арендованный в другой стране VPS (от 180р в месяц)
- На VPS установим сервер WireGuard, AmneziaWG, Xray (бесплатно)
- На свои устройства установим бесплатные клиенты (бесплатно)
- Можно настроить сразу на роутерах (например на Keenetic)
Аренда VPS
Для работы WireGuard достаточно 1 CPU, 1Gb памяти и 10Gb дискового пространства. Важно проверить лимиты трафика и ограничения по скорости канала до сервера.
Beget – качественно но дорого
Выбираем VPS cервер в Латвии, на 04.08.2024 он прекрасно определяется как Латвийский и позволяет ходить куда угодно, в том числе без проблем авторизоваться в chatGPT.
Если вы не готовы ничего настраивать – то Beget позволяет накатить при заказе сервера готовые решения, смотрите скриншот.
Я не тестировал готовые решения Бегет, ниже расскажу, какой софт использую.
Зарегистрироваться можно по ссылке: https://beget.com
Vdsina.com – от 0.75$ в месяц
Сервер в Амстердаме – я протестировал самый дешевый тариф и всё отлично работает на скорости до 100Мбит/сек.
На сегодняшний день это мой выбор, регистрируйтесь по ссылке.
HSHP – запасной вариант
Есть возможность арендовать сервер в Германии всего с 1CPU и 1Gb – чего для одной семьи вполне достаточно.
Я заказал сервер в Германии, но реально он определяется как финский. Собирали три дня. Выдали чистый IP (ни в каких спам-базах не числится). Проверил chatGPT – работает. Ютуб естественно тоже.
Зарегистрироваться можно по ссылке: https://hshp.host/virtual-servers
Другие хостеры
Для поиска VPS можно воспользоваться агрегатором по ссылке.
Установка WireGuard/Xray на сервер
AmneziaWG
Это самый простой способ создания своего туннеля, не потребуется вводить ни одной команды в терминале.
Установите по ссылке или из GooglePlay/AppStore приложение-клиент, а клиент сам умеет делать установку сервера WireGuard на ваш VPS.
Вам потребуется ввести данные для root-доступа на VPS.
При установке по умолчанию он предложит использовать протокол AmneziaWG и повышенный уровень цензуры в интернет в вашей стране.
Прямо из приложения-клиента вы сможете создать аккаунты для всей семьи (кнопка Поделиться рядом с домиком). Там же можно создать и еще одного администратора сервера Amnezia.
Xray
Тут нам повезло, установленный выше из Амнезии сервер поддерживает этот протокол, достаточно зайти в настройки и добавить его. В течение 5 минут он автоматически установится и будет доступен на вашем сервере.
Nyr/wireguard-install
Если по какой-то причине вам не хочется устанавливать Амнезию – то это самый простой способ добавить сервер WireGuard на VPS. После настройки этого туннеля у вас уже появится доступ к скрытой информации и другим инструкциям, чтобы настроить что-то более серьезное.
Установка скрипта:
wget https://git.io/wireguard -O wireguard-install.sh && bash wireguard-install.sh
Сделать файл исполняемым:
chmod +x wireguard-install.sh
Запуск или управление пользователями будет происходить командой
./wireguard-install.sh
Вот так происходит добавление пользователя, я выбираю 1й вариант DNS:
WireGuard is already installed.
Select an option:
1) Add a new client
2) Remove an existing client
3) Remove WireGuard
4) Exit
Option: 1
Provide a name for the client:
Name: ZAKUTSKY.COM
Select a DNS server for the client:
1) Current system resolvers
2) Google
3) 1.1.1.1
4) OpenDNS
5) Quad9
6) AdGuard
DNS server [1]: 1
После создания клиента на экране появится QR-код для добавления конфигурации в программу-клиент на вашем устройстве (в телефоны лучше сразу добавить по QR коду или сделать скриншот QR кода) и появится строчка со ссылкой на конфигурацию:
ZAKUTSKY_COM added. Configuration available in: /root/ZAKUTSKY_COM.conf
Окройте конфиг командой cat
root@wg:~# cat /root/ZAKUTSKY_COM.conf
И скопируйте через буфер обмена в текстовый файл на своем копьютере:
[Interface]
Address = 10.7.0.6/24
DNS = 8.8.8.8, 1.1.1.1
PrivateKey = OH4OSgtSPuJIkdaOuU817zVf08q1NAK2kmnOBxBT13g=
[Peer]
PublicKey = PwNFCFSzr8MTKYJjkjlkawMmG/o0etWH8I9nMqX6Y2Rs=
PresharedKey = SvTsyooth1KmjkljlkjvBt0A8Bp7LkbDrx4d3Dai2v+SzI=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 12.Ч9.4б.2O1:51820
PersistentKeepalive = 25
Клиенты WireGuard
Для подключения к WireGuard для всех операционных систем доступны бесплатные клиенты:
WireGuard
Windows: WireGuard.
macOS: WireGuard.
Android WireGuard.
iOS: WireGuard
Настройка клиента WireGuard
Настроить клиента на вашем устройстве очень просто:
- На мобильном телефоне просто добавьте конфигурацию через QR-код
- На любом устройстве – импортируйте файл конфигурации xxxx.conf, который вы создали на сервере и скопировали на свой компьютер (расширение файла должно быть .conf)
Amnezia – подойдет большинству
Поддерживает множество протоколов, в том числе WireGuard и AmneziaWG. Установите из GooglePlay или AppStore, либо скачайте последнюю версию со страницы github.
Официальный сайт проекта вы сможете посмотреть только после установки своего туннеля.
Недостаток клиента Амнезии – не поддерживает гибкие правила маршрутизации, тем самым постоянно компрометирует ваш сервер, когда вы ходите на российские сайты через туннель.
ShadowRocket – мой выбор
Этот клиент для IOS и MacOS стоит меньше 300р, поддерживает соединение с сервером Xray, установленным через Амнезию. После установки клиента можно впасть в ступор, пока не разберешься, что в нем и где находится. Но потом понимаешь, какой он удобный и гибкий (и простой).
Умеет гибко настраивать, к каким сайтам ходить напрямую, а к каким через туннель. В том числе и по GeoIP.
Давайте сразу добавим правило, чтобы на все сайты, которые расположены на серверах в РФ, мы заходили напрямую.
Чтобы добавить подключение к GeoLite Database от MaxMind – нужно получить бесплатный лицензионный ключ на сайте и добавить в настройки. Если сайт вас не пускает напрямую – то вы уже знаете что делать.
Вот ссылки на базы данных:
COUNTRY
https://download.maxmind.com/geoip/databases/GeoLite2-Country/download?suffix=tar.gz
ASN
https://download.maxmind.com/geoip/databases/GeoLite2-ASN/download?suffix=tar.gz
Конфиг ShadowRocket выглядит ужасно непонятно в меню приложения, но его можно открыть как Plain Text. Скоприровал только те строчки, которые вам может быть интересно заменить:
[General]
# Системный трафик пускать в обход туннеля
bypass-system = true
# В конце строки добавлена вся зона RU для хождения напрямую
skip-proxy = 192.168.0.0/16,10.0.0.0/8,172.16.0.0/12,localhost,*.local,captive.apple.com,*.ru
[Rule]
## Настраиваем сайты индивидуально
# Например Хабр пускаем через прокси, чтобы видеть то, что из рф видеть не положено
DOMAIN-SUFFIX,habr.com,PROXY
# А мой сайт пока еще не заблокирован – можно ходить напрямую
DOMAIN-SUFFIX,zakutsky.com,DIRECT
# В самом конце добавляем – все русские сайты - напрямую
GEOIP,RU,DIRECT
# Final - все остальное через туннель
FINAL,PROXY
Я добавил в skip-proxy адрес *.ru – это легкое правило, но скорее всего его придется удалить, если будут проблемы с доступом на запрещенные сайты в зоне RU. Не добавляйте это, если вы настраиваете сервер в РФ для доступа к гос и банкам.
Если вам удалось подключить MaxMind и обновить базы, то вполне достаточно перед строчкой FINAL,PROXY добавить GEOIP,RU,DIRECT. А выше этой строчки добавлять уже отдельные сайты, которым необходимы индивидуальные правила.
Если вы находитесь за границей, и подключаетесь к серверу в РФ, то все правила нужно инвертировать:
# Все русские сайты - через прокси
GEOIP,RU,PROXY
# Final - все остальное напрямую
FINAL,DIRECT
Для тестирования работы правил зайдите на страницу Config и выберет пункт меню Test Rule – вбивайте свой сайт и смотрите как он будет доступен.
А тут мой репозиторий с конфигом на github.
Нагрузка на сервер VPS при просмотре видео 4k на Youtube
При просмотре 4k нагрузка на процессор рисует вот такую пилу (см. скриншот ниже) – намекает на то, что несколько клиентов могут уже создать проблемы (только если все будут одновременно смотреть в высоком разрешении). Но такая ситуация в 2024г маловероятна – например у меня дома 4K включаю только я на стационарном компе (потому что монитор 4к). На телефонах же видео грузятся по умолчанию в 460p.
Делаю вывод, что арендовать сервер, который бы не подошел по параметрам – сейчас маловероятно. Обратите внимание на скришноте на загрузку памяти RAM и диска Storage – есть большой запас.
Рекомендуемые ссылки
- https://www.wireguard.com – официальный сайт WireGuard
- https://github.com/amnezia-vpn/amnezia-client – официальный репозиторий Амнезии
- https://web.archive.org/web/20240328143402/https://habr.com/ru/articles/799751/ – статья которую стоит почитать каждому, кто интересуется вопросом
- https://losst.pro – хороший русскоязычный ресурс c ответами на все вопросы по настройке Linux/Ubuntu
- https://mishatugushev.ru/blog/?go=all/shadowrocket-seamless-ios/ – большая статья про настройку Shadowrocket
Не стесняйтесь задавать вопросы в комментариях!